@font-face{font-family:Akatab;font-style:normal;font-display:swap;font-weight:400;src:url(../media/akatab-latin-400-normal.2ovbktf9jhezw.woff2?dpl=service-20261025T033055-701106919ebe)format("woff2"),url(../media/akatab-latin-400-normal.26p074_v-otuu.woff?dpl=service-20261025T033055-701106919ebe)format("woff")}
@font-face{font-family:Akatab;font-style:normal;font-display:swap;font-weight:500;src:url(../media/akatab-latin-500-normal.1phrkc9tvw4ed.woff2?dpl=service-20261025T033055-701106919ebe)format("woff2"),url(../media/akatab-latin-500-normal.190pc5h4z_sy_.woff?dpl=service-20261025T033055-701106919ebe)format("woff")}
@font-face{font-family:Akatab;font-style:normal;font-display:swap;font-weight:600;src:url(../media/akatab-latin-600-normal.1bvgqlccbdf7p.woff2?dpl=service-20261025T033055-701106919ebe)format("woff2"),url(../media/akatab-latin-600-normal.3swsxuq-jdbvo.woff?dpl=service-20261025T033055-701106919ebe)format("woff")}
@font-face{font-family:Akatab;font-style:normal;font-display:swap;font-weight:700;src:url(../media/akatab-latin-700-normal.1_9ru24zob83x.woff2?dpl=service-20261025T033055-701106919ebe)format("woff2"),url(../media/akatab-latin-700-normal.20e3vibz9idv3.woff?dpl=service-20261025T033055-701106919ebe)format("woff")}
.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(../media/layers.3muxcl8sz6330.png?dpl=service-20261025T033055-701106919ebe);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(../media/layers-2x.23wrxu3xxu9-i.png?dpl=service-20261025T033055-701106919ebe);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(../media/marker-icon.1le94j_pe_ih1.png?dpl=service-20261025T033055-701106919ebe)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
:root{--accent:#a6532e;--accent-dark:#87401f;--text:#252b30;--muted:#596670;--line:#e0e4e7;--control-line:#cdd3d8;--soft:#f4f6f7;--surface:#fff;--canvas:#f5f6f7;--hover:#edf0f2;--danger:#a2332c;--danger-soft:#faeeec;--danger-line:#e4c6c1;--green:#3e674b;--green-soft:#edf4ee;--green-line:#bfcfc3;--warning:#94601f;--warning-soft:#faf3e7;--accent-soft:#f0e8e3;--focus:#bd734e;--on-accent:#fff;--bar-planned:#d7dce0;--bar-complete:#52785d;--bar-warning:#a8793d;--bar-danger:#ae554c;--bar-neutral:#7c8d82;--shadow:#1b283315;--scrim:#26333e50;--sidebar:222px;--radius:3px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--control-height:36px;--touch-height:44px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--accent:#de9b79;--accent-dark:#f0b28e;--text:#e6e9ec;--muted:#adb8c0;--line:#3b464e;--control-line:#667680;--soft:#242c32;--surface:#1e252b;--canvas:#171c20;--hover:#303b43;--danger:#f0a19b;--danger-soft:#3b2628;--danger-line:#7c4646;--green:#9dc6aa;--green-soft:#23382d;--green-line:#4f745c;--warning:#e2bb7b;--warning-soft:#3a3021;--accent-soft:#3b2d25;--focus:#e5a780;--on-accent:#201a16;--bar-planned:#7c8b96;--bar-complete:#82ad8d;--bar-warning:#c6a167;--bar-danger:#d78d83;--bar-neutral:#9eafa5;--shadow:#00000040;--scrim:#00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root[data-theme=system]{--accent:#de9b79;--accent-dark:#f0b28e;--text:#e6e9ec;--muted:#adb8c0;--line:#3b464e;--control-line:#667680;--soft:#242c32;--surface:#1e252b;--canvas:#171c20;--hover:#303b43;--danger:#f0a19b;--danger-soft:#3b2628;--danger-line:#7c4646;--green:#9dc6aa;--green-soft:#23382d;--green-line:#4f745c;--warning:#e2bb7b;--warning-soft:#3a3021;--accent-soft:#3b2d25;--focus:#e5a780;--on-accent:#201a16;--bar-planned:#7c8b96;--bar-complete:#82ad8d;--bar-warning:#c6a167;--bar-danger:#d78d83;--bar-neutral:#9eafa5;--shadow:#00000040;--scrim:#00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}body{background:var(--canvas);color:var(--text);font-variant-numeric:tabular-nums;margin:0;font-family:Akatab,Arial,sans-serif;font-size:13px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}button{color:inherit}a{color:var(--accent);text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}input,select,textarea{background:var(--surface);border:1px solid var(--control-line);color:var(--text);border-radius:3px;max-width:100%;min-height:36px;padding:8px 10px}input::placeholder{color:var(--muted)}textarea{resize:vertical;line-height:1.5}select{padding-right:26px}h1,h2,h3,p{margin:0}h1{letter-spacing:0;font-size:20px;font-weight:600;line-height:1.3}h2{letter-spacing:0;font-size:15px;font-weight:600;line-height:1.4}h3{font-size:14px;font-weight:600}strong,b{font-weight:600}small{font-size:11px}.muted{color:var(--muted)}.small{font-size:12px}.mono{font-family:Akatab,Arial,sans-serif;font-size:11px}.numeric{text-align:right}.overdue,.attention-text{color:var(--danger)!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{background:var(--surface);z-index:200;padding:10px;position:fixed;top:-60px;left:12px}.skip-link:focus{top:10px}.button{background:var(--surface);border:1px solid var(--control-line);border-radius:var(--radius);white-space:nowrap;min-height:36px;color:var(--text);justify-content:center;align-items:center;gap:6px;padding:7px 12px;font-size:13px;font-weight:500;line-height:1.5;display:inline-flex}.button:hover:not(:disabled){background:var(--soft);border-color:var(--control-line)}.button.primary{background:var(--accent);color:var(--surface);border-color:var(--accent)}.button.primary:hover:not(:disabled){background:var(--accent-dark);border-color:var(--accent-dark)}.small-button{min-height:31px;padding:5px 9px;font-size:12px}.text-button{color:var(--accent);background:0 0;border:0;align-items:center;gap:6px;padding:3px 0;font-size:12px;font-weight:500;display:inline-flex}.text-button:hover{text-decoration:underline}.icon-button{min-width:34px;min-height:34px;color:var(--muted);background:0 0;border:0;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;padding:7px;display:inline-flex}.icon-button:hover{background:var(--hover);color:var(--text)}.danger{color:var(--danger)}.app{min-height:100vh}.sidebar{width:var(--sidebar);border-right:1px solid var(--line);background:var(--soft);z-index:40;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.brand{flex-shrink:0;align-items:center;gap:10px;height:64px;padding:0 21px;display:flex}.brand-mark{width:32px;height:32px;color:var(--accent);justify-content:center;align-items:center;display:flex}.brand-mark svg{width:30px;height:30px}.brand-name{letter-spacing:0;font-size:13px;font-weight:700;line-height:1.2}.brand-name>span{letter-spacing:0;color:var(--muted);margin-top:4px;font-size:11px;font-weight:500;display:block}.sidebar nav{flex:1;padding:0 11px;overflow:auto}.nav-item{text-align:left;width:100%;min-height:36px;color:var(--muted);background:0 0;border:0;border-radius:3px;align-items:center;gap:8px;margin-bottom:2px;padding:8px 12px;font-size:13px;line-height:1.3;display:flex}.nav-item svg{opacity:.8;flex-shrink:0;width:17px;height:17px}.nav-item:hover{background:var(--hover);color:var(--text)}.nav-item.active{background:var(--accent-soft);color:var(--accent-dark);font-weight:600}.nav-item.active svg{opacity:1}.nav-item small{background:var(--hover);color:var(--muted);border-radius:2px;margin-left:auto;padding:0 5px;font-size:11px}.sidebar-footer{border-top:1px solid var(--line);margin-top:8px;padding:12px 16px}.local-label{color:var(--muted);white-space:nowrap;align-items:center;gap:7px;font-size:11px;display:flex}.local-label>span:first-child{background:var(--green);border-radius:50%;width:6px;height:6px}.local-label .mono{color:var(--muted);margin-left:auto;font-size:11px}.collapse-button{color:var(--muted);white-space:nowrap;background:0 0;border:0;align-items:center;gap:8px;padding:13px 0 0;font-size:11px;display:flex}.collapse-button svg{width:14px;height:14px}.app-body{margin-left:var(--sidebar)}.topbar{background:var(--surface);border-bottom:1px solid var(--line);z-index:30;align-items:center;gap:20px;height:64px;padding:0 28px;display:flex;position:relative}.app-title{font-size:12px;font-weight:500;display:none}.top-project{border-right:1px solid var(--line);align-items:center;gap:9px;min-width:210px;padding-right:20px;display:flex}.top-project svg{color:var(--muted)}.top-project select{background:0 0;border:0;max-width:260px;padding:7px 20px 7px 0;font-size:12px;font-weight:500}.global-search{color:var(--muted);flex:1;align-items:center;gap:8px;min-width:120px;display:flex}.global-search input{background:0 0;border:0;width:100%;min-width:0;padding:5px;font-size:12px}.global-search button{color:var(--muted);background:0 0;border:0;display:flex}.top-actions{align-items:center;gap:16px;margin-left:auto;display:flex}.notification-button{position:relative}.notification-button i{background:var(--accent);border:1px solid var(--surface);border-radius:50%;width:5px;height:5px;position:absolute;top:7px;right:8px}.user-button{text-align:left;background:0 0;border:0;align-items:center;gap:9px;padding:4px 0;display:flex}.avatar{background:var(--hover);width:31px;height:31px;color:var(--muted);border:1px solid var(--line);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:inline-flex}.user-name{white-space:nowrap;font-size:11px;line-height:1.3}.user-name small{color:var(--muted);text-transform:capitalize;margin-top:3px;font-size:11px;display:block}.popover-anchor{position:relative}.popover{background:var(--surface);border:1px solid var(--line);box-shadow:0 4px 18px var(--shadow);z-index:60;border-radius:4px;position:absolute;top:calc(100% + 12px);right:0}.notifications{width:365px;max-height:65vh;padding:16px;overflow:auto}.popover-title{justify-content:space-between;font-weight:600;display:flex}.notifications>p{margin:5px 0 12px}.notification-item{text-align:left;border:0;border-top:1px solid var(--hover);background:0 0;width:100%;padding:10px 0;display:block}.notification-item strong{font-size:12px;display:block}.notification-item span{color:var(--muted);margin-top:3px;font-size:11px;display:block}.notification-item:hover strong{color:var(--accent)}.account-menu{min-width:230px;padding:15px}.account-menu>strong{font-size:13px;display:block}.account-menu>span{color:var(--muted);font-size:11px}.account-menu>button{text-align:left;background:0 0;border:0;align-items:center;gap:10px;width:100%;padding:10px 0;font-size:12px;display:flex}.account-menu>button:first-of-type{border-top:1px solid var(--line);margin-top:12px}.demo-banner{background:var(--surface);border-bottom:1px solid var(--line);height:32px;color:var(--muted);align-items:center;gap:9px;padding:0 28px;font-size:11px;display:flex}.demo-tag{letter-spacing:0;color:var(--accent-dark);background:var(--accent-soft);border-radius:2px;padding:2px 6px;font-size:11px;font-weight:600}.timezone{color:var(--muted);margin-left:auto}main#workspace{outline:none;max-width:1900px;margin:0 auto;padding:16px 20px 0}.heading-row{flex-flow:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.heading-row p{color:var(--muted);margin-top:5px;font-size:12px}.heading-actions{align-items:center;gap:8px;display:flex}.metrics{background:var(--surface);border:0;border-radius:0;grid-template-columns:repeat(4,1fr);margin-bottom:16px;display:grid;overflow:hidden}.metric{text-align:left;border:0;border-right:1px solid var(--line);background:0 0;min-width:0;padding:12px 16px}.metric:nth-child(4n){border-right:0}.metric:nth-child(-n+4){border-bottom:1px solid var(--line)}.metric:hover{background:var(--soft)}.metric-label{color:var(--muted);justify-content:space-between;align-items:center;gap:4px;font-size:12px;display:flex}.metric-label svg{color:var(--muted);flex-shrink:0}.metric strong{letter-spacing:0;white-space:nowrap;margin:4px 0 0;font-size:22px;font-weight:500;line-height:1.25;display:block}.metric strong small{color:var(--muted);letter-spacing:0;margin-left:5px;font-size:13px;font-weight:400}.section{background:var(--surface);border:0;border-radius:0;margin-bottom:16px;overflow:hidden}.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.section-heading>div:first-child>span{color:var(--muted);margin-top:4px;font-size:11px;display:block}.section-heading>span{color:var(--muted);font-size:11px}.section-bottom{border-top:1px solid var(--hover);padding:12px 20px}.table-scroll{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:13px;line-height:1.45}th{color:var(--muted);letter-spacing:0;background:var(--soft);border-bottom:1px solid var(--line);white-space:nowrap;vertical-align:middle;padding:8px 12px;font-size:12px;font-weight:500}td{border-bottom:1px solid var(--hover);vertical-align:middle;padding:8px 12px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--surface)}.project-status table td{white-space:nowrap;padding-top:15px;padding-bottom:15px}.project-cell{flex-direction:column;gap:4px;display:flex}.project-cell small,.project-cell .mono{color:var(--muted);font-size:11px}.record-link{text-align:left;color:var(--text);background:0 0;border:0;padding:2px 0;font-weight:500;line-height:1.4}.record-link:hover{color:var(--accent);text-decoration:underline}.cell-sub{color:var(--muted);margin-top:4px;font-size:11px;display:block}.status{white-space:nowrap;color:var(--muted);background:0 0;border:0;border-radius:0;align-items:center;gap:5px;padding:0;font-size:11px;font-weight:500;line-height:1.6;display:inline-flex}.status>span{background:currentColor;border-radius:50%;flex-shrink:0;width:4px;height:4px}.status.good{color:var(--green);background:var(--green-soft)}.status.warn{color:var(--warning);background:var(--warning-soft)}.status.bad{color:var(--danger);background:var(--danger-soft)}.progress-track{background:var(--hover);border-radius:1px;min-width:45px;height:4px;overflow:hidden}.progress-track i{background:var(--bar-neutral);height:100%;display:block}.table-progress{align-items:center;gap:10px;min-width:108px;display:flex}.table-progress>span{text-align:right;width:34px;font-size:11px}.table-progress .progress-track{width:72px}.overview-middle{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:20px;display:grid}.chart-legend{color:var(--muted);align-items:center;gap:13px;font-size:11px;display:flex}.chart-legend>span{align-items:center;gap:5px;display:inline-flex}.chart-legend i{border-radius:1px;width:8px;height:8px;display:inline-block}.chart-legend .planned{background:var(--bar-planned)}.chart-legend .actual{background:var(--accent)}.chart-area{min-width:0;height:213px;padding:10px 16px 0 14px}.chart-note{border-top:1px solid var(--hover);color:var(--muted);align-items:center;gap:10px;margin:6px 20px 0;padding:12px 0;font-size:11px;display:flex}.chart-note strong{color:var(--muted);font-size:12px}.chart-note .muted{margin-left:auto;font-size:11px}.chart-data{color:var(--muted);padding:4px 20px;font-size:11px}.chart-data summary{cursor:pointer}.chart-data table{margin:8px 0}.task-total{align-items:baseline;gap:10px;padding:17px 22px 14px;display:flex}.task-total>strong{letter-spacing:0;font-size:24px;font-weight:500;line-height:1.2}.task-total strong small{color:var(--muted);font-size:19px;font-weight:400}.task-total>span{color:var(--muted);font-size:11px}.completion-strip{background:var(--hover);border-radius:2px;gap:2px;height:6px;margin:0 23px 15px;display:flex;overflow:hidden}.completion-counts{padding:0 22px}.completion-counts button{width:100%;color:var(--muted);background:0 0;border:0;justify-content:space-between;align-items:center;padding:7px 0;font-size:11px;display:flex}.completion-counts button span{align-items:center;gap:8px;display:flex}.completion-counts button span i{border-radius:1px;width:6px;height:6px}.completion-counts button strong{color:var(--text);font-size:12px}.completion-counts button:hover span{text-decoration:underline}.task-summary>p{color:var(--muted);padding:11px 22px 16px;font-size:11px}.overview-bottom{grid-template-columns:1fr 1fr;gap:20px;display:grid}.deadline-row,.issue-row{text-align:left;border:0;border-bottom:1px solid var(--hover);background:0 0;align-items:center;gap:12px;width:100%;padding:12px 20px;display:flex}.deadline-row:last-child,.issue-row:last-child{border:0}.deadline-row:hover,.issue-row:hover{background:var(--soft)}.date-block{background:var(--soft);border-radius:3px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:37px;height:40px;display:flex}.date-block strong{color:var(--muted);font-size:14px;line-height:1.3}.date-block small{text-transform:none;color:var(--muted);font-size:11px}.deadline-row>span:nth-child(2),.issue-row>span:nth-child(2){min-width:0}.deadline-row>span:nth-child(2)>strong,.issue-row>span:nth-child(2)>strong{font-size:11px;font-weight:500;line-height:1.4;display:block}.deadline-row>span:nth-child(2)>small,.issue-row>span:nth-child(2)>small{color:var(--muted);margin-top:4px;font-size:11px;display:block}.due-days{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:11px}.issue-row{padding-top:14px;padding-bottom:14px}.issue-row>svg{color:var(--muted);flex-shrink:0;margin-left:auto}.issue-marker{background:var(--bar-warning);border-radius:50%;flex-shrink:0;align-self:flex-start;width:5px;height:5px;margin-top:5px}.issue-marker.bad{background:var(--bar-danger)}.count-badge{background:var(--soft);border:1px solid var(--line);border-radius:3px;padding:1px 6px;font-family:Akatab,Arial,sans-serif}.calculation-notes{border-top:1px solid var(--line);color:var(--muted);padding:12px 0;font-size:11px}.calculation-notes summary{cursor:pointer;font-weight:500}.calculation-notes p{max-width:1100px;padding:10px 0;line-height:1.8}.workspace-footer{color:var(--muted);justify-content:space-between;padding:20px 0;font-size:11px;display:flex}.workspace-footer>span{align-items:center;gap:12px;display:flex}.workspace-footer .text-button{color:var(--muted);font-size:11px}.version{color:var(--muted);font-family:Akatab,Arial,sans-serif;font-size:11px}.register-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px;display:flex}.register-search{flex:1;min-width:210px;max-width:350px;position:relative}.register-search svg{color:var(--muted);width:16px;height:16px;position:absolute;top:10px;left:11px}.register-search input{width:100%;padding-left:35px;font-size:12px}.register-toolbar>select{font-size:11px}.date-filter{color:var(--muted);align-items:center;gap:5px;font-size:11px;display:flex}.date-filter input{min-width:100px;padding:7px 8px;font-size:11px}.toolbar-right{align-items:center;gap:10px;margin-left:auto;display:flex}.segmented{border:1px solid var(--line);background:var(--surface);border-radius:3px;padding:2px;display:flex}.segmented button{color:var(--muted);background:0 0;border:0;border-radius:2px;padding:5px 10px;font-size:11px}.segmented .selected{background:var(--hover);color:var(--text);font-weight:500}.register th{height:42px;padding:0 16px}.sort-button{text-align:left;color:var(--muted);background:0 0;border:0;align-items:center;gap:8px;padding:10px 0;font-size:12px;display:flex}.sort-button>span{color:var(--muted)}.source-label{color:var(--muted);background:var(--soft);white-space:nowrap;border-radius:2px;padding:2px 5px;font-size:11px}.source-label.own{color:var(--muted);background:0 0}.edit-link{color:var(--muted);background:0 0;border:0;padding:5px;font-size:11px}.edit-link:hover{color:var(--accent)}.pagination{border-top:1px solid var(--line);color:var(--muted);align-items:center;gap:20px;padding:12px 16px;font-size:11px;display:flex}.pagination>label{align-items:center;gap:6px;display:flex}.pagination select{min-height:28px;padding:3px 21px 3px 6px;font-size:11px}.pagination>div{align-items:center;gap:10px;margin-left:auto;display:flex}.module-actions{flex-wrap:wrap;align-items:center;gap:10px;margin:15px 0 20px;display:flex}.footnote{color:var(--muted);max-width:900px;font-size:11px;line-height:1.7}.empty{text-align:left;color:var(--muted);min-height:0;padding:16px 12px}.empty svg{opacity:.6;margin-bottom:10px}.empty h3{color:var(--muted);font-size:13px}.empty p{margin-top:5px;font-size:12px}.loading{color:var(--muted);flex-direction:column;align-items:center;gap:18px;padding:70px;display:flex}.notice{border:1px solid var(--green-line);background:var(--green-soft);color:var(--green);white-space:pre-wrap;border-radius:3px;align-items:center;gap:10px;margin-bottom:15px;padding:10px 14px;font-size:12px;display:flex}.notice>span{flex:1}.notice.error{background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger)}.notice .icon-button{min-width:24px;min-height:24px;margin-left:auto;padding:3px}.search-result{border:0;border-bottom:1px solid var(--hover);text-align:left;background:0 0;align-items:center;gap:15px;width:100%;padding:16px 20px;display:flex}.search-result>svg:first-child{color:var(--muted)}.search-result>svg:last-child{color:var(--muted);margin-left:auto}.search-result strong{font-size:13px;display:block}.search-result small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.search-result:hover{background:var(--soft)}.kanban{grid-template-columns:repeat(3,1fr);align-items:start;gap:18px;display:grid}.board-column{background:var(--hover);border:1px solid var(--line);border-radius:4px;min-height:350px;padding:12px}.board-title{justify-content:space-between;align-items:center;padding:1px 2px 12px;display:flex}.board-title>span:last-child{color:var(--muted);font-size:11px}.task-ticket{background:var(--surface);border:1px solid var(--line);border-radius:3px;margin-bottom:10px;padding:14px}.ticket-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.ticket-top .mono{color:var(--muted);font-size:11px}.task-name{text-align:left;background:0 0;border:0;padding:12px 0 5px;font-size:13px;font-weight:500;display:block}.task-name:hover{color:var(--accent)}.task-ticket>p{color:var(--muted);margin-bottom:14px;font-size:11px}.quantity-line{color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:7px;font-size:11px;display:flex}.quantity-line b{color:var(--muted);font-size:11px}.ticket-footer{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin-top:15px;font-size:11px;display:flex}.ticket-footer select{background:var(--soft);min-height:28px;padding:4px 18px 4px 5px;font-size:11px}.board-empty{text-align:center;padding:25px 0;font-size:11px}.week-grid{grid-template-columns:repeat(7,minmax(140px,1fr));min-height:360px;display:grid;overflow:auto}.week-day{border-right:1px solid var(--line);min-width:140px;padding:10px}.week-day:last-child{border:0}.week-day h3{color:var(--muted);padding:4px 0 14px;font-size:11px;font-weight:500}.week-day.today{background:var(--soft)}.week-day.today h3{color:var(--accent);font-weight:600}.schedule-item{background:var(--surface);border:1px solid var(--line);border-left:2px solid var(--accent);text-align:left;border-radius:2px;width:100%;margin-bottom:9px;padding:9px 8px;display:block}.schedule-item>small{color:var(--muted);font-size:11px;display:block}.schedule-item>strong{margin:4px 0;font-size:11px;line-height:1.5;display:block}.schedule-item>span{color:var(--muted);font-size:11px;display:block}.inline-actions{gap:8px;display:flex}.info-strip{background:var(--hover);border:1px solid var(--line);color:var(--muted);border-radius:3px;align-items:center;gap:12px;margin-bottom:20px;padding:14px 16px;font-size:12px;display:flex}.info-strip svg{color:var(--muted);flex-shrink:0}.methodology{color:var(--muted);max-width:950px;padding:6px 0 20px;font-size:12px}.methodology h2{color:var(--muted);margin:6px 0 10px}.methodology p{margin-bottom:10px;line-height:1.8}.financial-summary,.project-summary{background:var(--surface);border:1px solid var(--line);border-radius:4px;grid-template-columns:repeat(4,1fr);margin-bottom:20px;display:grid}.financial-summary>div,.project-summary>div{border-right:1px solid var(--line);padding:20px}.financial-summary>div:last-child,.project-summary>div:last-child{border-right:0}.financial-summary span,.project-summary span{color:var(--muted);font-size:11px;display:block}.financial-summary strong,.project-summary strong{letter-spacing:0;margin-top:8px;font-size:26px;font-weight:500;display:block}.financial-summary small,.project-summary small{color:var(--muted);letter-spacing:0;margin-top:3px;font-size:11px;font-weight:400;display:block}.finance-grid{grid-template-columns:1.5fr 1fr;gap:20px;display:grid}.finance-chart{height:265px}.inset{padding:16px 20px}.total-row{background:var(--soft);font-weight:600}.labour-trend{grid-template-columns:repeat(7,1fr);gap:20px;padding:20px;display:grid}.labour-trend>div>span{color:var(--muted);font-size:11px;display:block}.labour-trend>div>strong{margin-top:7px;font-size:17px;font-weight:500;display:block}.record-details{grid-template-columns:repeat(3,1fr);gap:23px;margin:0;padding:20px;display:grid}.record-details>div{min-width:0}.record-details dt{color:var(--muted);margin-bottom:5px;font-size:11px}.record-details dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:12px}.record-details .full{grid-column:1/-1}.coordinate-link{flex-wrap:wrap;align-items:center;gap:15px;padding:0 20px 20px;display:flex}.milestone-list{margin:0;padding:18px 20px;list-style:none}.milestone-list li{align-items:center;gap:15px;padding:0 0 24px;display:flex;position:relative}.milestone-list li:last-child{padding-bottom:0}.milestone-list li:not(:last-child):before{content:"";background:var(--line);width:1px;position:absolute;top:14px;bottom:0;left:4px}.milestone-dot{border:2px solid var(--control-line);background:var(--surface);z-index:1;border-radius:50%;flex-shrink:0;width:9px;height:9px}.milestone-dot.complete{background:var(--green);border-color:var(--green)}.milestone-list small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.milestone-list .status{margin-left:auto}.crew-list{flex-wrap:wrap;gap:30px;padding:20px;display:flex}.crew-list>div{align-items:center;gap:10px;display:flex}.crew-list strong{font-size:12px;display:block}.crew-list small{color:var(--muted);font-size:11px;display:block}.section-empty{color:var(--muted);padding:20px;font-size:12px}.detail-actions{align-items:center;gap:12px;margin-bottom:18px;display:flex}.daily-report{background:var(--surface);border:1px solid var(--line);border-radius:3px;margin-bottom:20px;padding:25px}.report-masthead{border-bottom:2px solid var(--muted);padding:22px 24px}.daily-report .report-masthead{padding:0 0 20px}.report-masthead h2{letter-spacing:0;margin:8px 0 4px;font-size:23px}.report-masthead p{color:var(--muted);margin-top:5px;font-size:13px}.report-masthead>div{align-items:center;gap:20px;margin-top:13px;display:flex}.report-masthead>small{color:var(--muted);margin-top:10px;font-size:11px;display:block}.report-meta{grid-template-columns:repeat(4,1fr);gap:20px;margin:0;padding:22px 0;display:grid}.report-meta dt{color:var(--muted);font-size:11px}.report-meta dd{margin:4px 0 0;font-size:12px}.daily-report>h3{margin:15px 0 9px}.daily-report th,.daily-report td{padding-left:12px;padding-right:12px}.diary-observations{grid-template-columns:1fr 1fr;gap:20px;padding-top:25px;display:grid}.diary-observations h3{color:var(--muted);margin-bottom:6px;font-size:11px}.diary-observations p{white-space:pre-wrap;font-size:12px;line-height:1.7}.report-draft{background:var(--warning-soft);color:var(--warning);margin-top:20px;padding:12px;font-size:12px}.photo-grid{grid-template-columns:repeat(3,1fr);gap:18px;padding:20px;display:grid}.photo-grid figure{min-width:0;margin:0}.photo-grid img{object-fit:cover;background:var(--soft);border:1px solid var(--line);width:100%;height:180px}.photo-grid figcaption{color:var(--muted);margin-top:7px;font-size:11px}.photo-grid figcaption small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.photo-upload{border-top:1px solid var(--line);flex-wrap:wrap;align-items:flex-end;gap:15px;padding:18px 20px;display:flex}.photo-upload>label{flex:1;min-width:180px}.photo-upload label{color:var(--muted);font-size:11px}.photo-upload input{width:100%;min-height:36px;margin-top:5px;font-size:11px;display:block}.report-controls{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:15px;display:flex}.report-controls label{color:var(--muted);font-size:11px}.report-controls input,.report-controls select{margin-top:6px;display:block}.report-controls>label:first-child{min-width:245px}.report-basis{color:var(--muted);margin-bottom:18px;font-size:11px}.report-table table{font-size:11px}.report-table th{white-space:normal;min-width:95px;padding:13px 12px}.report-table td{white-space:pre-wrap;vertical-align:top;padding:14px 12px}.daily-report-group{margin-bottom:30px}.report-photos{background:var(--surface);border:1px solid var(--line);border-top:0;margin-top:-20px}.settings-form{max-width:850px;padding:16px 0}.settings-form .small{margin:14px 0 18px;line-height:1.7}.new-user>summary{border-top:1px solid var(--line);color:var(--accent);cursor:pointer;padding:16px 20px;font-size:12px}.project-checks{border:1px solid var(--line);margin:18px 0 0;padding:12px 15px}.project-checks legend{color:var(--muted);font-size:11px}.project-checks label{align-items:center;gap:8px;margin:5px 0;font-size:12px;display:flex}.project-checks input{min-height:16px;accent-color:var(--accent)}pre{white-space:pre-wrap;max-width:400px;max-height:260px;color:var(--muted);font-family:Akatab,Arial,sans-serif;font-size:11px;overflow:auto}.import-panel{border:1px solid var(--line);background:var(--surface);border-radius:3px;margin:20px 0;padding:17px 20px}.import-panel summary{color:var(--accent);cursor:pointer;font-size:12px}.import-panel>p{color:var(--muted);margin:15px 0;font-size:11px}.import-panel form{grid-template-columns:1fr 1fr;gap:15px;max-width:850px;display:grid}.import-panel form label:nth-child(3){grid-column:1/-1}.import-panel form button{justify-self:start}.import-panel label{color:var(--muted);font-size:11px}.import-panel input,.import-panel select,.import-panel textarea{width:100%;margin-top:6px;display:block}.editor{border:0;border-left:1px solid var(--line);background:var(--surface);width:620px;max-width:100%;height:100dvh;max-height:100dvh;color:var(--text);box-shadow:-8px 0 35px var(--shadow);border-radius:0;margin:0;padding:0;position:fixed;inset:0 0 0 auto}.editor.wide-editor{width:820px}.editor::backdrop{background:var(--scrim)}.editor form{flex-direction:column;height:100%;min-height:100%;display:flex}.editor-heading{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.editor-heading h2{letter-spacing:0;margin-top:0;font-size:18px}.editor-body{flex:1;padding:16px 20px;overflow:auto}.editor-body label,.settings-form label{color:var(--muted);font-size:11px;font-weight:500}.form-grid{grid-template-columns:1fr 1fr;gap:12px 16px;display:grid}.form-grid label{min-width:0;display:block}.form-grid input,.form-grid select,.form-grid textarea{width:100%;color:var(--text);margin-top:6px;font-size:12px;font-weight:400;display:block}.full{grid-column:1/-1}.required{color:var(--accent);font-size:11px}.form-callout{color:var(--muted);background:0 0;border-radius:2px;margin-bottom:12px;padding:8px 0;font-size:11px;line-height:1.7}.form-grid+.small{margin:15px 0}.form-section-heading{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;margin:16px 0 12px;padding-top:23px;display:flex}.form-section-heading h3{font-size:14px}.form-section-heading p{color:var(--muted);max-width:470px;margin-top:4px;font-size:11px}.repeat-row{align-items:flex-end;gap:10px;display:flex}.repeat-row label{min-width:0}.repeat-row input,.repeat-row select{width:100%;margin-top:5px;padding-left:8px;padding-right:8px;font-size:11px;font-weight:400;display:block}.repeat-row .grow{flex:1}.attendance-row{margin-bottom:13px}.attendance-row label:first-child{flex:2}.attendance-row label:not(:first-child){flex:1}.remove-row{min-width:26px;min-height:36px;color:var(--muted);padding:5px}.attendance-total{background:var(--soft);color:var(--muted);justify-content:space-between;align-items:center;margin-top:15px;margin-bottom:15px;padding:10px 12px;font-size:11px;display:flex}.attendance-total strong{color:var(--text);font-size:13px}.repeat-activity{background:var(--soft);border:1px solid var(--line);border-radius:3px;margin-bottom:15px;padding:14px}.activity-row{margin-bottom:12px}.activity-row label:first-child{flex:3}.activity-row label:not(:first-child){flex:1}.repeat-activity>label{display:block}.repeat-activity textarea{width:100%;margin-top:5px;font-size:12px;font-weight:400;display:block}.repeat-activity>.small{margin-top:8px;font-size:11px}.checklist-item{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:3px;margin-bottom:12px;padding:12px 0}.checklist-item>label{margin-top:12px;display:block}.checklist-item textarea{width:100%;margin-top:6px;font-weight:400;display:block}.inline-empty{color:var(--muted);border:0;padding:12px;font-size:11px}.editor-footer{background:var(--surface);border-top:1px solid var(--line);flex-shrink:0;justify-content:flex-end;align-items:center;gap:9px;padding:16px 26px;display:flex}.editor-footer .danger{margin-right:auto;font-size:11px}.login-page{background:var(--surface);flex-direction:column;min-height:100vh;display:flex}.login-brand{letter-spacing:0;align-items:center;gap:11px;padding:20px 24px;font-size:14px;font-weight:500;display:flex}.login-brand b{color:var(--muted);font-weight:400}.login-panel{background:var(--surface);border:0;border-radius:0;width:440px;max-width:calc(100% - 32px);margin:16px auto 32px;padding:24px}.login-panel h1{margin:0 0 16px;font-size:20px}.login-panel>p{color:var(--muted);font-size:12px}.login-panel form{flex-direction:column;gap:12px;margin-top:16px;display:flex}.login-panel label{color:var(--muted);font-size:13px;font-weight:500}.login-panel input{width:100%;min-height:40px;margin-top:6px;font-size:13px;display:block}.login-panel form button{justify-content:space-between;width:100%;min-height:40px;margin-top:2px}.demo-login{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.demo-login strong{font-size:12px;font-weight:500}.demo-login p{color:var(--muted);margin:5px 0 15px;font-size:11px}.demo-login>.button{justify-content:space-between;width:100%}.demo-roles{gap:20px;margin:13px 0 20px;display:flex}.demo-roles button{color:var(--muted);background:0 0;border:0;padding:2px 0;font-size:11px}.demo-roles button:hover{text-decoration:underline}.login-panel .login-footnote{color:var(--muted);margin-top:16px;font-size:11px;line-height:1.7}.login-page>footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;margin-top:auto;padding:24px 45px;font-size:11px;display:flex}.login-page>footer span{font-size:11px}.collapsed{--sidebar:66px}.collapsed .brand{padding:0 17px}.collapsed .brand-name,.collapsed .nav-item>span,.collapsed .nav-item>small,.collapsed .sidebar-footer .local-label,.collapsed .collapse-button>span{display:none}.collapsed .sidebar nav{padding:10px 9px}.collapsed .nav-item{justify-content:center;padding:9px}.collapsed .sidebar-footer{padding:13px 24px}.collapsed .collapse-button{padding:0}.mobile-only,.nav-scrim{display:none}@media (min-width:1600px){.app-title{display:block}.topbar{gap:25px}.top-project{margin-left:auto}.global-search{max-width:370px}.metric{padding-top:20px;padding-bottom:19px}}@media (max-width:1200px){:root{--sidebar:198px}.brand{padding:0 15px}.brand-name,.brand-name>span{font-size:11px}.nav-item{gap:9px;font-size:11px}.topbar{gap:15px;padding:0 22px}main#workspace{padding:21px 22px 0}.metric{padding:15px}.metric strong{font-size:22px}.metric-label{font-size:11px}.section-heading{padding:12px 0}.overview-middle{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.chart-note .muted{display:none}.heading-row h1{font-size:20px}.project-status td,.project-status th{padding-left:13px;padding-right:13px}.finance-grid{grid-template-columns:1.3fr 1fr}.financial-summary strong{font-size:22px}.top-project select{max-width:210px}.top-project{min-width:185px}.user-name{display:none}}@media (max-width:950px){.overview-middle,.overview-bottom{gap:15px}.overview-middle{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.chart-legend{gap:8px;font-size:11px}.labour-chart .section-heading{flex-direction:column;align-items:flex-start;gap:9px}.metrics{grid-template-columns:repeat(2,1fr)}.metric{border-bottom:1px solid var(--line)}.metric:nth-child(2n){border-right:0}.metric:nth-last-child(-n+2){border-bottom:0}.metric:nth-child(4n+1){border-right:1px solid var(--line)}.metric strong{font-size:22px}.metric-label{font-size:11px}.timezone{display:none}.global-search input{font-size:11px}.topbar{gap:14px}.top-project{min-width:155px;padding-right:10px}.top-project select{max-width:170px}.top-actions{gap:6px}.demo-banner{padding:0 22px}.heading-row{flex-flow:wrap;align-items:center;margin-bottom:12px}.heading-actions{flex-wrap:wrap;justify-content:flex-end}.overview-bottom{grid-template-columns:1fr}.record-details{grid-template-columns:repeat(2,1fr)}.financial-summary,.project-summary{grid-template-columns:1fr 1fr}.financial-summary>div:nth-child(2),.project-summary>div:nth-child(2){border-right:0}.financial-summary>div:nth-child(-n+2),.project-summary>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.finance-grid{grid-template-columns:1fr}.labour-trend{grid-template-columns:repeat(4,1fr)}.report-meta{grid-template-columns:1fr 1fr}.kanban{gap:10px}.board-column{padding:8px}.task-ticket{padding:10px}.ticket-footer{flex-wrap:wrap}.topbar .global-search{max-width:220px}.photo-grid{grid-template-columns:1fr 1fr}}@media (max-width:760px){:root{--sidebar:0px}.sidebar{width:240px;transition:transform .15s;transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.sidebar .brand-name,.sidebar .nav-item>span,.sidebar .nav-item>small,.sidebar .sidebar-footer .local-label,.sidebar .collapse-button>span{display:revert}.sidebar .brand{padding:0 18px}.sidebar .brand-name{font-size:13px}.sidebar .brand-name>span{font-size:11px}.sidebar .brand .mobile-only{margin-left:auto}.sidebar .nav-item{justify-content:flex-start;font-size:12px}.sidebar .sidebar-footer{padding:16px 20px}.sidebar .collapse-button{display:none}.nav-scrim{background:var(--scrim);z-index:39;border:0;display:block;position:fixed;inset:0}.mobile-only{display:inline-flex}.topbar{gap:12px;height:60px;padding:0 15px}.top-project{border:0;flex:1;min-width:0}.top-project>svg{display:none}.top-project select{width:100%;max-width:240px;min-height:44px;font-size:12px}.global-search{display:none}.top-actions{gap:7px}.avatar{width:32px;height:32px}.topbar .icon-button{min-width:40px;min-height:40px}.demo-banner{gap:7px;height:32px;padding:0 18px;font-size:11px}.demo-tag{white-space:nowrap;font-size:11px}main#workspace{padding:20px 18px 0}.heading-row{flex-flow:wrap;align-items:center;gap:14px;margin-bottom:12px}.heading-row h1{font-size:20px}.heading-row p{max-width:100%;font-size:11px}.heading-actions{justify-content:flex-start}.button{min-height:40px;padding:8px 12px;font-size:12px}.small-button{min-height:36px;font-size:11px}.icon-button{min-width:40px;min-height:40px}.metrics{margin-bottom:18px}.metric{padding:17px 15px}.metric-label{font-size:11px}.metric strong{margin:9px 0 5px;font-size:22px}.metric strong small{font-size:11px}.overview-middle{display:block}.section{margin-bottom:17px}.section-heading{padding:12px 0}.section-heading h2{font-size:14px}.overview-middle .section-heading{flex-direction:row;align-items:center}.labour-chart .chart-legend{gap:7px;font-size:11px}.section-heading>div:first-child>span{max-width:230px;font-size:11px}.chart-area{height:220px}.task-summary{padding-bottom:6px}.task-total{padding-top:20px}.task-summary>p{font-size:11px}.completion-counts button{padding:10px 0}.completion-counts button span{font-size:12px}.overview-bottom{display:block}.deadline-row,.issue-row{min-height:65px;padding-left:16px;padding-right:16px}.issue-row>span:nth-child(2)>strong,.deadline-row>span:nth-child(2)>strong{font-size:12px}.issue-row>span:nth-child(2)>small,.deadline-row>span:nth-child(2)>small{font-size:11px}.section-bottom{padding:12px 16px}.notifications{width:calc(100vw - 24px);max-width:380px;position:fixed;top:61px;right:12px}.popover.account-menu{right:-3px}.workspace-footer{gap:15px;padding-top:15px;font-size:11px}.workspace-footer>span{gap:5px}.workspace-footer>span:last-child{font-size:11px}.workspace-footer .version{display:none}.register-toolbar{gap:8px}.register-search{flex-basis:100%;max-width:none}.register-toolbar>select{flex:1;min-width:140px;min-height:40px}.register-toolbar .toolbar-right{justify-content:flex-end;width:auto;margin:0 0 0 auto}.date-filter{flex:1}.date-filter input{width:100%;min-height:40px}.register td{white-space:nowrap;padding:4px 12px}.record-link{min-height:30px}.sort-button{min-height:40px}.pagination{flex-wrap:wrap;gap:10px;padding:12px}.pagination>label{margin-left:auto}.pagination>div{justify-content:space-between;width:100%}.pagination .button{min-height:38px}.segmented button{min-height:34px}.kanban{grid-template-columns:1fr;gap:15px}.board-column{min-height:100px;padding:12px}.task-ticket{padding:15px}.task-name{min-height:42px;font-size:14px}.task-ticket>p,.quantity-line,.ticket-footer{font-size:11px}.ticket-footer select{min-height:38px;font-size:11px}.record-details{gap:20px;padding:17px}.record-details dt{font-size:11px}.record-details dd{font-size:12px}.project-summary strong{font-size:24px}.financial-summary>div,.project-summary>div{padding:17px}.financial-summary strong{font-size:22px}.financial-summary small,.financial-summary>div>span{font-size:11px}.labour-trend{grid-template-columns:repeat(3,1fr);gap:20px}.section-heading .inline-actions{flex-wrap:wrap;justify-content:flex-end}.inline-actions button{min-height:33px;padding:5px 7px;font-size:11px}.week-grid{grid-template-columns:repeat(7,170px)}.week-day{min-width:170px}.schedule-item strong{font-size:12px}.schedule-item span,.schedule-item small,.methodology{font-size:11px}.info-strip{align-items:flex-start;font-size:11px}.photo-grid{grid-template-columns:1fr 1fr;gap:12px;padding:16px}.photo-grid img{height:150px}.daily-report{padding:18px}.report-masthead h2{font-size:21px}.report-meta{gap:16px}.diary-observations{grid-template-columns:1fr;gap:17px}.report-controls>label:first-child,.report-controls select{width:100%}.report-controls>label{flex:1}.report-controls input{width:100%;font-size:12px}.report-controls>.button{flex:1}.report-controls{gap:10px}.settings-form{padding:16px 0}.form-grid{gap:12px 16px}.form-grid input,.form-grid select{min-height:42px;font-size:13px}.editor{width:100%}.editor-heading,.editor-body{padding:16px 20px}.editor-footer{flex-wrap:wrap;gap:7px;padding:14px 18px}.editor-footer .button,.editor-footer .danger{font-size:11px}.editor-heading h2{margin-top:0;font-size:18px}.attendance-row{grid-template-columns:1fr 1fr 1fr 32px;gap:10px;display:grid}.attendance-row label:first-child{grid-column:1/4}.attendance-row label:nth-child(2){grid-column:1}.attendance-row label:nth-child(3){grid-column:2}.attendance-row label:nth-child(4){grid-column:3}.attendance-row .remove-row{grid-area:1/4}.repeat-row input,.repeat-row select{min-height:42px;font-size:12px}.activity-row{grid-template-columns:1fr 1fr 32px;gap:10px;display:grid}.activity-row label:first-child{grid-column:1/3}.activity-row label:nth-child(2){grid-area:2/1}.activity-row label:nth-child(3){grid-area:2/2}.activity-row .remove-row{grid-area:1/3}.form-section-heading{align-items:flex-start}.form-section-heading>.button{white-space:nowrap;min-height:36px;padding:7px;font-size:11px}.form-section-heading h3{font-size:13px}.form-section-heading p,.editor-body label{font-size:11px}.repeat-activity>label textarea{min-height:70px}.checklist-item .repeat-row{flex-wrap:wrap}.checklist-item .repeat-row .grow{flex-basis:100%}.checklist-item .repeat-row>label:nth-child(2){flex:1}.editor-body>.form-grid>label.full{grid-column:1/-1}.checklist-item>label textarea{min-height:70px}.photo-upload{gap:12px;padding:16px}.photo-upload .button{width:100%}.import-panel form{grid-template-columns:1fr}.import-panel form label:nth-child(3){grid-column:auto}.new-user summary{min-height:45px}.project-checks input{width:20px;height:20px}.milestone-list{padding:18px 16px}.milestone-list .status{font-size:11px}.login-brand{padding:24px;font-size:11px}.login-panel{margin-top:25px;padding:28px 24px 22px}.login-panel h1{font-size:20px}.login-page>footer{padding:20px;font-size:11px}.login-page>footer span{font-size:11px}.demo-roles button{min-height:36px;font-size:11px}.login-panel input{font-size:16px}.login-panel .button{min-height:44px}.detail-actions{flex-wrap:wrap}.editor .form-callout,.editor-body .notice{font-size:11px}.coordinate-link{align-items:flex-start}.report-meta dd{font-size:11px}}@media (max-width:390px){.metric{padding:15px 11px}.metric-label{font-size:11px}.metric strong{font-size:22px}.demo-banner>span:nth-child(2){white-space:nowrap;text-overflow:ellipsis;max-width:210px;overflow:hidden}.heading-row h1{font-size:20px}.section-heading .text-button{font-size:11px}.top-project select{max-width:180px}.form-grid{grid-template-columns:1fr;gap:12px 16px}.record-details{grid-template-columns:1fr 1fr}.editor-footer .button{padding:7px 8px}.financial-summary strong{font-size:22px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{@page{size:A4 landscape;margin:12mm}body{background:var(--surface);color:var(--text);font-size:11px}.sidebar,.topbar,.demo-banner,.heading-actions,.notice,.workspace-footer,.no-print,.report-controls,.report-basis,.detail-actions,.editor,.photo-upload,.import-panel{display:none!important}.app-body{margin:0}main#workspace{max-width:none;padding:0}.heading-row{flex-flow:wrap;align-items:center;margin-bottom:12px}.heading-row h1{font-size:20px}.heading-row p{font-size:11px}.section,.daily-report{border:0;border-radius:0;margin:0 0 20px;overflow:visible}.table-scroll{overflow:visible!important}table{table-layout:auto;width:100%;font-size:9px!important}th{color:var(--text);background:var(--hover)!important;white-space:normal!important;min-width:0!important;padding:8px 6px!important;font-size:8px!important}td{overflow-wrap:anywhere;white-space:pre-wrap;vertical-align:top;font-size:11px;padding:8px 6px!important}.report-table table{table-layout:fixed}.report-table th,.report-table td{line-height:1.5;padding:7px 4px!important;font-size:7px!important}thead{display:table-header-group}tr,figure,.diary-observations section{break-inside:avoid}.report-masthead{border-bottom:1px solid var(--text);padding:12px 0}.report-masthead h2{font-size:22px}.report-masthead .report-identity{color:var(--muted)}.daily-report{padding:0}.daily-report-group{break-after:page}.daily-report-group:last-child{break-after:auto}.report-meta{padding:18px 0}.photo-grid img{object-fit:contain;border:0;height:180px}.photos-section .section-heading{padding:12px 0}.photo-grid{grid-template-columns:repeat(3,1fr);padding:10px 0}.report-photos{border:0;margin:0}.diary-observations{gap:18px;padding-top:18px}.diary-observations p{font-size:11px}.status{-webkit-print-color-adjust:exact;print-color-adjust:exact}.report-table .empty{padding:20px}.record-link,.text-button{color:var(--text)}.daily-report .table-scroll table{table-layout:fixed}.printable{break-inside:auto}}.mobile-global-search{display:none}.account-active{align-items:center;gap:8px;margin-top:18px;display:flex!important}.account-active input{width:18px;height:18px;min-height:18px;accent-color:var(--accent)}.settings-form>.button+.button{margin-left:9px}@media (max-width:760px){.mobile-global-search{background:var(--surface);border:1px solid var(--line);color:var(--muted);border-radius:3px;align-items:center;gap:8px;margin-bottom:18px;padding:0 10px;display:flex}.mobile-global-search input{border:0;width:100%;min-height:42px;padding:9px 4px;font-size:13px}.mobile-global-search .icon-button{min-width:32px}.button,.form-grid input,.form-grid select,.repeat-row input,.repeat-row select{min-height:44px}.edit-link{min-height:44px;padding:8px}.text-button{min-height:32px}.report-controls input,.report-controls select{min-height:44px}}@media print{.mobile-global-search{display:none!important}}.diary-extra{border-top:1px solid var(--line);margin:24px 0 20px;padding-top:18px}.diary-extra summary{color:var(--accent);cursor:pointer;margin-bottom:18px;font-size:13px;font-weight:500}.form-section-heading .inline-actions{flex-shrink:0}@media (max-width:760px){.form-section-heading{flex-wrap:wrap}.form-section-heading .inline-actions{justify-content:flex-start;width:100%}.form-section-heading .inline-actions .button,.diary-extra summary{min-height:40px}}.settings-form>label>textarea{width:100%;margin-top:7px;display:block}@media print{.skip-link,.page-heading{display:none!important}.report-meta{padding:14px 0;grid-template-columns:repeat(4,1fr)!important}.diary-observations{grid-template-columns:1fr 1fr;gap:12px 25px;padding-top:15px;display:grid}.diary-observations section{break-inside:avoid;page-break-inside:avoid;display:block}.diary-observations h3{margin:0 0 4px;font-size:11px}.diary-observations p{font-size:11px;line-height:1.5}.daily-report>h3{margin:10px 0 6px;font-size:12px}.daily-report{margin-bottom:15px}.photos-section .section-heading h2{font-size:12px}.photo-grid img{height:135px}}.app-title{white-space:nowrap;color:var(--muted);font-size:11px;display:block}@media (max-width:1200px){.app-title{display:none}}@media print{.photos-section{break-inside:avoid;page-break-inside:avoid}.photos-section>.section-heading{break-after:avoid;page-break-after:avoid}.report-table th,.report-table td{line-height:1.4;font-size:8pt!important}.daily-report th{font-size:8pt!important}.daily-report td{font-size:9pt!important}.diary-observations p,.diary-observations h3{font-size:9pt}}.connection-details{max-width:850px;color:var(--muted);padding:16px 0;font-size:12px}.connection-details>p{margin-bottom:16px;line-height:1.7}.connection-details>p strong{color:var(--text)}.connection-details dl{grid-template-columns:1fr 1fr;gap:24px;margin:20px 0;display:grid}.connection-details dt{color:var(--text);margin-bottom:6px;font-weight:600}.connection-details dd{margin:0;line-height:1.7}.connection-callout{background:var(--hover);border-left:2px solid var(--accent);padding:10px 14px}.connection-details>.small{margin-top:18px}@media (max-width:760px){.connection-details{padding:18px}.connection-details dl{grid-template-columns:1fr;gap:18px}.editor{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.topbar{padding-top:env(safe-area-inset-top);height:calc(60px + env(safe-area-inset-top))}.sidebar-footer{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.login-page{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}}.company-settings details{margin:8px 0}.company-settings details>summary{cursor:pointer;color:var(--text);padding:8px 0;font-size:12px}.company-settings details form{gap:12px;max-width:680px;margin-top:8px;display:grid}.company-settings .settings-form>label{max-width:680px}.company-settings .settings-form>label,.company-settings details form>label{flex-direction:column;gap:6px;display:flex}.company-settings details form input{width:100%}.company-settings details form>.button{justify-self:start}.company-settings textarea{overflow-wrap:anywhere;font-family:Akatab,Arial,sans-serif;font-size:11px}.site-maps-workspace{min-width:0}.map-intro,.map-picker-row,.map-draw-tools,.map-view-tools,.map-legend,.map-form-actions,.map-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.map-intro{justify-content:flex-end;margin-bottom:8px}.map-intro p{margin:0;font-weight:500}.map-picker-row{border-top:1px solid var(--line);padding:12px 0}.map-picker-row>label{flex:1;min-width:220px;max-width:470px}.map-picker-row label,.map-filters label,.map-upload-fields label{flex-direction:column;gap:4px;font-size:12px;font-weight:500;display:flex}.map-source{flex-direction:column;flex:1;min-width:180px;display:flex}.map-source span{color:var(--muted);overflow-wrap:anywhere;font-size:11px}.map-legend{gap:18px;padding:8px 0 14px;font-size:12px}.map-legend>span,.map-register-status{align-items:center;gap:6px;display:inline-flex}.map-legend i,.map-register-status i{flex-shrink:0;width:10px;height:10px;display:inline-block}.map-legend b{font-family:Akatab,Arial,sans-serif;font-weight:400}.map-layout{border:1px solid var(--line);background:var(--surface);grid-template-columns:minmax(0,1fr) 326px;display:grid}.map-plan-panel{min-width:0}.map-draw-tools{border-bottom:1px solid var(--line);min-height:57px;padding:10px 12px}.map-draw-tools strong{font-size:12px}.map-view-tools{background:var(--soft);padding:8px 12px}.map-view-tools label{align-items:center;gap:5px;font-size:11px;font-weight:400;display:flex}.map-canvas-wrap{position:relative}.site-map-canvas{background:var(--hover);z-index:0;width:100%;height:520px;font-family:Akatab,Arial,sans-serif}.site-map-canvas.drawing{cursor:crosshair}.map-coordinate-note{background:var(--soft);color:var(--muted);margin:0;padding:8px 12px;font-size:11px}.map-centre-button{z-index:10;background:var(--surface);position:absolute;bottom:60px;left:12px}.map-assumption{margin:0;padding:12px}.map-handover-panel{border-left:1px solid var(--line);min-width:0;max-height:910px;padding:16px;overflow:auto}.map-handover-panel h2,.map-upload h2{margin:0 0 8px;font-size:15px}.map-handover-panel h3{margin:22px 0 10px;font-size:13px}.map-area-form{flex-direction:column;gap:10px;display:flex}.map-area-form p{margin:0}.map-field{flex-direction:column;gap:4px;font-size:12px;font-weight:500;display:flex}.map-field textarea,.map-field input,.map-field select{width:100%;min-width:0;font-weight:400}.map-two-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.map-retire{align-items:center;gap:6px;font-size:12px;flex-direction:row!important;display:flex!important}.map-retire input,.map-view-tools input{width:16px;height:16px;min-height:16px;margin:0;padding:0}.map-state{background:var(--soft);border-left:4px solid;padding:3px 8px;font-size:12px;font-weight:500;display:inline-block}.map-notes{margin:16px 0}.map-notes dt{color:var(--muted);margin-top:12px;font-size:11px;font-weight:600}.map-notes dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:3px 0 0}.map-history{margin:0;padding:0;list-style:none}.map-history>li{border-top:1px solid var(--line);padding:12px 0;font-size:12px}.map-history strong,.map-history small{display:block}.map-history small{color:var(--muted);margin-bottom:5px}.map-history summary{cursor:pointer}.map-error{border-left:3px solid var(--danger);background:var(--danger-soft);color:var(--danger);padding:8px 10px;font-size:12px}.map-work-register{border:0;margin-top:16px}.map-filters{align-items:flex-end;margin-bottom:14px}.map-filters>label{flex:1;min-width:140px}.map-filters .map-retire{flex:none;min-height:36px}.map-selected-row{background:var(--soft)}.map-work-register td{vertical-align:top;white-space:normal;max-width:260px}.map-work-register td:nth-child(5){min-width:210px}.block{display:block}.map-upload-fields{grid-template-columns:1fr 1fr 1fr;gap:14px;margin-bottom:12px;display:grid}.map-upload-fields input{width:100%;min-width:0}.map-upload .map-form-actions{margin-top:14px}.site-map-canvas .leaflet-control-attribution{font-size:11px}.site-map-canvas .leaflet-bar a{width:36px;height:36px;color:var(--text);line-height:36px}@media (max-width:1150px){.map-layout{grid-template-columns:minmax(0,1fr) 290px}.site-map-canvas{height:470px}}@media (max-width:850px){.map-layout{grid-template-columns:1fr}.map-handover-panel{border-left:0;border-top:1px solid var(--line);max-height:none}.site-map-canvas{height:460px}.map-upload-fields{grid-template-columns:1fr}.map-draw-tools .button,.map-form-actions .button{min-height:44px}.map-picker-row>label{max-width:none}}@media (max-width:480px){.site-map-canvas{height:400px}.map-view-tools{gap:6px}.map-view-tools .button{min-height:36px;font-size:11px}.map-legend{gap:8px 14px}.map-intro{justify-content:flex-end;align-items:flex-start;margin-bottom:8px}.map-picker-row select{width:100%}.map-centre-button{font-size:11px}}@media print{.site-map-canvas{height:480px}.map-draw-tools,.map-view-tools,.map-form-actions,.map-filters{display:none}.map-layout{display:block}.map-handover-panel{border-left:0;max-height:none;overflow:visible}}.mobile-pages,.mobile-primary-nav,.mobile-area-list,.mobile-area-actions,.map-filter-toggle{display:none}@media (max-width:700px){main#workspace{padding:12px 16px calc(78px + env(safe-area-inset-bottom))}.mobile-global-search{display:none!important}.mobile-global-search.expanded{margin:0 0 12px;display:flex!important}.page-heading{margin-bottom:12px}.heading-row{flex-flow:wrap;align-items:center;gap:8px;margin-bottom:12px}.heading-row h1{font-size:20px;line-height:1.25}.heading-row>div>p{display:none}.heading-actions{gap:8px}.heading-actions .button{min-height:40px}.mobile-primary-nav{padding:5px 6px calc(5px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);z-index:35;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-primary-nav button{min-height:49px;color:var(--muted);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11px;display:flex}.mobile-primary-nav button[aria-current=page]{color:var(--accent-dark);font-weight:600}.mobile-pages{border-bottom:1px solid var(--line);gap:0;width:100%;margin:0 0 12px;display:flex}.mobile-pages button{min-width:0;min-height:44px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:8px 3px;font-size:12px;font-weight:500}.mobile-pages button[aria-current=page]{border-bottom-color:var(--accent);color:var(--accent-dark)}.overview-pages .metrics{margin-bottom:10px}.overview-pages .metric{min-height:68px;padding:8px 12px}.overview-pages .metric-label{min-height:28px;font-size:11px}.overview-pages .metric strong{font-size:22px;line-height:1.25}.overview-pages .overview-middle,.overview-pages .overview-bottom{display:contents}.overview-pages:not([data-page=summary]) .metrics,.overview-pages:not([data-page=summary]) .calculation-notes,.overview-pages:not([data-page=sites]) .project-status,.overview-pages:not([data-page=labour]) .labour-chart,.overview-pages:not([data-page=labour]) .task-summary,.overview-pages:not([data-page=programme]) .overview-programme,.overview-pages:not([data-page=issues]) .overview-issues{display:none}.overview-pages .calculation-notes{margin-top:8px;font-size:11px}.overview-pages .section{margin-bottom:12px}.site-maps-workspace .map-intro{justify-content:flex-end;margin:0 0 8px}.site-maps-workspace .map-intro p{display:none}.site-maps-workspace .map-intro .button{min-height:34px;padding:5px 9px;font-size:11px}.site-maps-workspace .map-picker-row{border-top:0;padding:0 0 10px}.site-maps-workspace .map-picker-row>label{width:100%;min-width:0}.site-maps-workspace .map-picker-row select{min-height:38px}.site-maps-workspace .map-source{display:none}.site-maps-workspace .map-legend{gap:6px 12px;padding:0 0 9px;font-size:11px}.site-maps-workspace .map-legend i{width:8px;height:8px}.site-maps-workspace .map-layout{background:0 0;border:0;display:block}.site-maps-workspace .map-plan-panel{border:1px solid var(--line);background:var(--surface)}.site-maps-workspace .map-handover-panel{border:1px solid var(--line);background:var(--surface);padding:14px}.site-maps-workspace:not([data-page=map]) .map-plan-panel,.site-maps-workspace:not([data-page=map]) .map-legend,.site-maps-workspace:not([data-page=areas]) .map-work-register,.site-maps-workspace:not([data-page=handover]):not([data-page=history]) .map-handover-panel,.site-maps-workspace[data-page=handover] .map-history-section,.site-maps-workspace[data-page=history] .map-area-summary,.site-maps-workspace[data-page=history] .map-area-form,.site-maps-workspace[data-upload=true]>.mobile-pages,.site-maps-workspace[data-upload=true]>.map-intro,.site-maps-workspace[data-upload=true]>.map-picker-row,.site-maps-workspace[data-upload=true]>.map-legend,.site-maps-workspace[data-upload=true]>.map-layout,.site-maps-workspace[data-upload=true]>.map-work-register,.site-maps-workspace:not([data-page=map]) .map-intro{display:none}.site-maps-workspace .site-map-canvas{height:clamp(260px,100svh - 420px,520px)}.site-maps-workspace .map-draw-tools{gap:6px;min-height:52px;padding:7px 8px}.site-maps-workspace .map-draw-tools .button{min-height:40px;padding:6px 9px;font-size:11px}.site-maps-workspace .map-view-tools{padding:6px 8px}.site-maps-workspace .map-assumption,.site-maps-workspace .map-coordinate-note{display:none}.site-maps-workspace .map-centre-button{bottom:12px}.mobile-area-actions{gap:8px;margin:10px 0;display:flex}.mobile-area-actions .button{min-height:44px}.map-handover-panel .section-heading{padding:0 0 12px}.map-history-section h3{margin-top:0}.map-work-register{border:0;margin-top:0}.map-work-register .section-heading{padding:12px}.map-work-register .section-heading h2{font-size:13px}.map-work-register>.table-scroll{display:none}.map-filters{padding:0 12px}.map-filters>label:not(:first-of-type){display:none!important}.map-filters.filters-open>label{display:flex!important}.map-filter-toggle{order:1;min-height:40px;display:inline-flex}.map-filters>label:first-of-type{min-width:120px}.mobile-area-list{display:block}.mobile-area-list>button{text-align:left;background:var(--surface);border:0;border-top:1px solid var(--line);flex-direction:column;gap:5px;width:100%;padding:14px 12px;display:flex}.mobile-area-title{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.mobile-area-title strong{font-size:13px}.mobile-area-title>span{white-space:nowrap;font-size:11px;font-weight:500}.mobile-area-list small{color:var(--muted);font-size:11px}.mobile-area-next{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;display:-webkit-box;overflow:hidden}.mobile-area-open{color:var(--accent-dark);font-size:11px}.map-work-register .section-heading>span{font-size:11px}}.mobile-project-actions,.mobile-project-work{display:none}@media (max-width:700px){.project-detail-pages:not([data-page=summary]) .project-summary,.project-detail-pages:not([data-page=programme]) .project-programme,.project-detail-pages:not([data-page=details]) .record-information,.project-detail-pages:not([data-page=photos]) .photos-section,.project-detail-pages .project-related-section,.project-detail-pages:not([data-page=work]) .project-crew{display:none}.project-detail-pages[data-page=summary] .mobile-project-actions{flex-direction:column;gap:8px;margin-top:12px;display:flex}.mobile-project-actions .button{min-height:46px}.project-detail-pages[data-page=work] .mobile-project-work{background:var(--surface);border:1px solid var(--line);margin-bottom:12px;display:block}.mobile-project-work>button{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;justify-content:space-between;align-items:center;width:100%;min-height:50px;padding:12px 14px;display:flex}.mobile-project-work>button:last-child{border-bottom:0}.mobile-project-work>button>span:last-child{color:var(--muted);font-family:Akatab,Arial,sans-serif;font-size:11px}}.mobile-plan-upload{display:none}@media (max-width:700px){.heading-row{flex-flow:wrap;align-items:center;margin-bottom:12px}.heading-actions:empty,.mobile-secondary-action{display:none}.page-heading[data-module=overview] .heading-row{flex-direction:row;align-items:center}.page-heading[data-module=overview] h1{font-size:20px}.page-heading[data-module=overview] .heading-actions{flex-shrink:0}.page-heading[data-module=overview] .heading-actions .button{padding:7px 9px;font-size:11px}.site-maps-workspace[data-has-plan=true]>.map-intro{display:none}.mobile-plan-upload{align-self:flex-end;align-items:center;min-height:40px;display:inline-flex}.site-maps-workspace .map-picker-row{flex-wrap:nowrap;gap:8px}.site-maps-workspace .map-picker-row>label{flex:1;gap:0;font-size:0}.site-maps-workspace .map-picker-row select{font-size:12px}.site-maps-workspace .map-view-tools{z-index:5;background:var(--surface);border:1px solid var(--line);max-width:calc(100% - 58px);padding:3px;position:absolute;top:8px;right:8px}.site-maps-workspace .site-map-canvas{height:clamp(220px,100svh - 380px,520px)}}.button.primary{color:var(--on-accent)}.appearance-control{color:var(--muted);align-items:center;gap:10px;font-size:12px;display:flex}.appearance-control select{min-height:40px;font-size:12px}.account-menu .appearance-control{border-bottom:1px solid var(--line);flex-wrap:wrap;padding:10px 0}.recharts-text{fill:var(--muted)}.recharts-default-tooltip{background:var(--surface)!important;border-color:var(--line)!important;color:var(--text)!important}.recharts-tooltip-label{color:var(--text)}@media print{:root[data-theme]{--accent:#a6532e;--accent-dark:#87401f;--text:#252b30;--muted:#596670;--line:#e0e4e7;--control-line:#cdd3d8;--soft:#f4f6f7;--surface:#fff;--canvas:#f5f6f7;--hover:#edf0f2;--danger:#a2332c;--danger-soft:#faeeec;--danger-line:#e4c6c1;--green:#3e674b;--green-soft:#edf4ee;--green-line:#bfcfc3;--warning:#94601f;--warning-soft:#faf3e7;--accent-soft:#f0e8e3;--focus:#bd734e;--on-accent:#fff;--bar-planned:#d7dce0;--bar-complete:#52785d;--bar-warning:#a8793d;--bar-danger:#ae554c;--bar-neutral:#7c8d82;--shadow:#1b283315;--scrim:#26333e50;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.appearance-control{display:none}}.nav-groups{margin-top:18px}.nav-group{margin-bottom:4px}.nav-group-toggle{gap:9px}.nav-group-toggle>span{flex:1}.nav-group-toggle>svg:last-child{opacity:.8;width:13px;height:13px}.nav-group-toggle[aria-expanded=true]>svg:last-child{transform:rotate(90deg)}.nav-group-items[hidden]{display:none}.nav-group-items{padding:2px 0 8px}.nav-item.nav-child{min-height:34px;padding-left:40px}.collapsed .nav-group-toggle>svg:last-child{display:none}@media (max-width:760px){.sidebar .nav-item{min-height:44px}.sidebar .nav-item.nav-child{padding-left:40px}}.commercial-account{background:var(--surface);min-height:100svh}.commercial-account>header,.commercial-account>footer{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding:24px 5vw;display:flex}.account-wordmark{letter-spacing:0;color:var(--text);font-size:16px;line-height:1.2}.account-wordmark b{display:block}.account-wordmark span{color:var(--accent);margin-left:8px}.account-main{grid-template-columns:1fr;gap:20px;max-width:960px;margin:auto;padding:24px;display:grid}.account-intro h1{letter-spacing:0;max-width:500px;margin:0 0 8px;font-size:20px;font-weight:600;line-height:1.3}.account-intro p{margin-bottom:32px;font-size:18px}.account-content h2{margin-top:0;font-size:16px;font-weight:600;line-height:1.2}.account-content p{font-size:14px}.account-content form{gap:12px;margin-top:16px;display:grid}.account-content label{gap:7px;font-weight:500;display:grid}.account-content input,.account-content select{width:100%;min-height:44px}.account-content .account-consent{align-items:flex-start;gap:12px;font-size:13px;font-weight:400;display:flex}.account-consent input{width:18px;min-height:18px;margin-top:2px}.account-actions{flex-wrap:wrap;gap:12px;display:flex}.commercial-account .button{min-height:44px}.commercial-account>footer{border-bottom:0;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.billing-facts{margin:16px 0}.billing-facts>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:12px 0;display:flex}.billing-facts dd{text-align:right;margin:0}.setup-steps{margin:16px 0;padding:0;list-style:none}.setup-steps li{border-top:1px solid var(--line);gap:16px;padding:16px 0;display:flex}.setup-steps li>span{color:var(--accent);font-family:Akatab,Arial,sans-serif}.setup-steps h3{margin:0;font-size:14px;font-weight:500}.setup-steps p{margin:8px 0}.subscription-banner{border-left:3px solid var(--accent);background:var(--soft);justify-content:space-between;gap:16px;margin-bottom:16px;padding:12px 16px;display:flex}@media (max-width:760px){.account-main{grid-template-columns:1fr;gap:20px;padding:24px}.account-intro h1{max-width:350px}.account-intro p{margin-bottom:16px}.commercial-account>header{padding:20px 24px}.commercial-account>header>a:last-child{font-size:12px}.commercial-account>footer{padding:20px 24px}.account-actions{flex-direction:column}.subscription-banner{flex-wrap:wrap}}.home-switch{border-bottom:1px solid var(--line);gap:20px;margin-bottom:12px;display:flex}.home-switch button{min-height:44px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;padding:6px 0}.home-switch button[aria-current=page]{border-bottom-color:var(--accent);color:var(--accent-dark);font-weight:600}.performance-actions{display:none}.field-home{max-width:960px}.field-actions>button,.field-work-list>button:not(.text-button),.field-draft{text-align:left;background:var(--surface);border:0;border-bottom:1px solid var(--line);width:100%;min-height:62px;color:var(--text);border-top:1px solid var(--line);align-items:center;gap:14px;margin-top:8px;padding:14px 16px;display:flex}.field-actions>button>span,.field-work-list>button>span,.field-draft>span{flex:1}.field-home strong{font-size:14px;font-weight:600}.field-home small{color:var(--muted);margin-top:3px;font-size:12px;display:block}.field-home button:hover{background:var(--hover)}.field-site-heading{justify-content:space-between;align-items:start;gap:16px;margin-bottom:14px;display:flex}.field-site-heading h2{font-size:16px}.field-site-heading p{color:var(--muted);margin-top:3px}.field-site-heading>button{white-space:nowrap;min-height:44px}.field-actions{border:0;border-radius:0;overflow:hidden}.field-actions>button:last-child{border-bottom:0}.field-actions>button>svg:last-child,.field-draft>svg{width:17px;color:var(--muted)}.field-work-list{margin-top:12px}.field-work-list[hidden]{display:none}.field-work-list h3{margin-bottom:8px}.field-work-list .text-button{min-height:44px}.field-handover{text-align:left;background:var(--soft);border:0;width:100%;margin-top:12px;padding:12px;display:block}.field-handover>span,.field-handover>strong{display:block}.field-handover>span:not(.handover-label){white-space:pre-wrap;margin-top:6px}.field-handover>strong{margin-top:6px;font-size:13px}.field-draft{border:0;border-top:1px solid var(--line);margin-top:8px}.quick-capture{width:580px}.quick-capture .editor-heading p{color:var(--muted);margin-top:4px}.quick-capture .editor-body>label{flex-direction:column;gap:6px;margin-bottom:18px;display:flex}.quick-capture .editor-body>p{margin-bottom:14px}.quick-capture .editor-body{padding:20px 24px}@media (max-width:700px){.home-switch{margin-bottom:14px}.field-site-heading{margin-bottom:12px}.field-site-heading h2{font-size:16px}.field-site-heading p{font-size:12px}.field-actions>button{min-height:52px;padding:8px 12px}.quick-capture input,.quick-capture select,.quick-capture textarea{min-height:48px;font-size:16px}.quick-capture .editor-footer .button{min-height:48px}.quick-capture .editor-body{padding:18px 16px}}.field-handover>span:not(.handover-label),.field-handover>strong{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.quick-capture .capture-layout{flex-direction:column;height:100%;min-height:100%;display:flex}.quick-capture .capture-form,.quick-capture .photo-upload{height:auto;min-height:0}.quick-capture .capture-form{display:block}.quick-capture .capture-form>label{flex-direction:column;gap:6px;margin-bottom:18px;display:flex}.quick-capture .capture-form>p{margin-bottom:14px}.register{border-top:1px solid var(--line)}.register-filter-panel{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;margin-bottom:var(--space-3);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.register-filter-panel>select{min-width:160px}.register-filter-panel .date-filter{flex:0 auto}.site-context-hint{color:var(--muted);margin:var(--space-2) 0;font-size:12px}.handover-label,.report-identity{color:var(--muted);font-size:12px;font-weight:500;display:block}.status>span{display:none}.field-work-list>button>span:last-child:not(:first-child){flex:none;font-size:12px}.field-actions>button,.field-work-list>button:not(.text-button),.field-draft{min-height:52px;padding:8px 12px}.field-home .section-heading{flex-wrap:wrap}.account-content{max-width:640px}.account-content>p,.account-content>label,.account-content>.button,.account-actions{margin-top:var(--space-3)}.account-company{color:var(--muted)}.commercial-account>header,.commercial-account>footer{padding:16px 24px}.login-panel form button,.demo-login>.button{justify-content:center}.login-panel>.button{margin-top:12px}.topbar svg,.button svg{flex-shrink:0}@media (max-width:760px){main#workspace{padding:12px 16px calc(76px + env(safe-area-inset-bottom))}.heading-row{gap:8px 12px}.heading-actions{margin-left:auto}.heading-actions .button,.button,.small-button,.icon-button,.text-button,.edit-link,.record-link,.segmented button,.sort-button,.demo-roles button{min-height:var(--touch-height)}.icon-button{min-width:var(--touch-height)}.topbar{gap:4px;height:56px;padding:0 8px}.topbar .icon-button{min-width:44px;min-height:44px}.top-actions{gap:0}.top-project{padding-right:0}.top-project select{min-height:44px;font-size:14px}input,select,textarea,.form-grid input,.form-grid select,.form-grid textarea,.editor-body input,.editor-body select,.editor-body textarea{min-height:44px;font-size:16px}input[type=checkbox],input[type=radio]{min-height:18px}.register-toolbar{gap:8px;margin-bottom:8px}.register-toolbar>select{min-width:100px;min-height:44px;font-size:14px}.register-search input{min-height:44px;font-size:16px}.register-filter-panel{gap:8px}.register-filter-panel>select{width:100%}.register-filter-panel .date-filter{flex:140px}.register td{padding:4px 12px}.pagination{gap:8px;padding:8px 0}.pagination .button{min-height:44px}.pagination>div{width:auto;margin-left:auto}.field-home strong{font-size:14px}.field-actions>button,.field-work-list>button:not(.text-button){min-height:52px}.account-main{gap:16px;padding:16px}.commercial-account>header,.commercial-account>footer,.login-brand{padding:16px}.login-panel{max-width:100%;margin:0 auto 24px;padding:16px}.editor-heading,.editor-body,.editor-footer{padding:12px 16px}.form-grid{gap:12px}.connection-details dl>div{padding:12px 0}}.cross-site-tasks>button:not(.text-button)>span:first-child{flex:1;min-width:0}.cross-site-tasks>button:not(.text-button)>span:last-child{max-width:100px}.report-identity{margin-bottom:8px}@media (max-width:760px){.connection-details{padding:16px 0}.field-handover>span:not(.handover-label),.field-handover>strong{-webkit-line-clamp:unset;display:block}.topbar{height:calc(56px + env(safe-area-inset-top))}}a{color:var(--text)}a:hover{text-decoration:underline}.text-button{color:var(--text)}.pagination{background:0 0}@media (max-width:760px){.pagination select{min-height:44px;font-size:14px}.register-toolbar .toolbar-right{flex-wrap:wrap}.company-settings details>summary{min-height:44px;display:list-item}.sidebar .nav-item,.field-handover{min-height:44px}}@media (max-width:760px),(pointer:coarse){.editor .button,.editor .small-button,.editor .form-section-heading .button,.editor .form-section-heading .inline-actions .button,.app .button,.app .nav-item,.app .record-link,.app .sort-button,.app .segmented button,.app input:not([type=checkbox]):not([type=radio]),.app select,.app textarea,.editor input:not([type=checkbox]):not([type=radio]),.editor select,.editor textarea,.site-maps-workspace .map-picker-row select,.site-maps-workspace .map-draw-tools .button,.site-maps-workspace .map-intro .button,.site-maps-workspace .map-view-tools .button,.map-filters .map-retire,.diary-extra summary,.calculation-notes summary,.chart-data summary,.map-history summary{min-height:44px}.site-map-canvas .leaflet-bar a{width:44px;height:44px;line-height:44px}.project-checks label,.account-consent{min-height:44px}}
