:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand-orange:#c26834;--brand-orange-dark:#a4522a;--brand-orange-soft:#f6e7de;--brand-charcoal:#2f2f2f;--brand-charcoal-soft:#3d3d3d;--brand-orange-text:#a4522a;--brand-action-bg:#9f4a20;--brand-action-hover:#7f3817;--brand-on-charcoal:#f19a60;--ink:#3a3a3c;--ink-muted:#6b6b70;--surface:#fff;--surface-alt:#f7f7f8;--page:#e9eaec;--line:#dcdcde;--line-strong:#c4c4c7;--status-info-bg:#eef2f6;--status-info-fg:#37546f;--status-warn-bg:#fbeedd;--status-warn-fg:#8a5a12;--status-ok-bg:#e6f2e7;--status-ok-fg:#2c6b31;--status-danger-bg:#fbe6e6;--status-danger-fg:#a42121;--status-accent-bg:#efe9f7;--status-accent-fg:#57409c;--status-danger-border:#f0c7c7;--status-ok-border:#c6e0c8;--watermark-size:clamp(5rem, 11vw, 9.5rem);--watermark-opacity:.07;--shell-max:96rem;--shell-gutter:clamp(.75rem, 3vw, 2.5rem);--panel-pad:clamp(1rem, .55rem + 1.9vw, 2.25rem);--fs-xs:clamp(.75rem, .72rem + .12vw, .8125rem);--fs-sm:clamp(.8125rem, .78rem + .16vw, .9rem);--fs-base:clamp(.9375rem, .9rem + .2vw, 1.0625rem);--fs-lg:clamp(1.05rem, .99rem + .28vw, 1.2rem);--fs-h2:clamp(1.05rem, .97rem + .4vw, 1.3rem);--fs-h1:clamp(1.375rem, 1.2rem + .85vw, 2rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:clamp(1.5rem, 1.1rem + 1.6vw, 2.75rem);--radius:2px;--radius-pill:999px;--shadow:0 1px 3px #2f2f2f1f;--shadow-raised:0 2px 10px #2f2f2f24;--tap:2.75rem;--font-sans:"Lato", "Segoe UI", system-ui, -apple-system, sans-serif;font-family:var(--font-sans);font-size:var(--fs-base);color:var(--ink);background:var(--page)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--brand-orange-text:#ffad73;--ink:#f5f7fa;--ink-muted:#c8cdd5;--page:#101114;--surface:#1b1d21;--surface-alt:#30343c;--surface-hover:#39404a;--line:#4a515c;--line-strong:#727b89;--status-info-bg:#1f3444;--status-info-fg:#b8ddff;--status-warn-bg:#493716;--status-warn-fg:#ffd28a;--status-ok-bg:#1f3a27;--status-ok-fg:#b4e6bc;--status-danger-bg:#482323;--status-danger-fg:#ffb7b7;--status-accent-bg:#352b4b;--status-accent-fg:#d8c5ff;--status-danger-border:#8c4d4d;--status-ok-border:#52745a;--watermark-opacity:.1;--shadow:0 4px 18px #00000061;--shadow-raised:0 8px 28px #0000008c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--brand-orange-text:#ffad73;--ink:#f5f7fa;--ink-muted:#c8cdd5;--page:#101114;--surface:#1b1d21;--surface-alt:#30343c;--surface-hover:#39404a;--line:#4a515c;--line-strong:#727b89;--status-info-bg:#1f3444;--status-info-fg:#b8ddff;--status-warn-bg:#493716;--status-warn-fg:#ffd28a;--status-ok-bg:#1f3a27;--status-ok-fg:#b4e6bc;--status-danger-bg:#482323;--status-danger-fg:#ffb7b7;--status-accent-bg:#352b4b;--status-accent-fg:#d8c5ff;--status-danger-border:#8c4d4d;--status-ok-border:#52745a;--watermark-opacity:.1;--shadow:0 4px 18px #00000061;--shadow-raised:0 8px 28px #0000008c}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{min-height:100dvh;font-family:var(--font-sans);font-size:var(--fs-base);color:var(--ink);background:var(--page);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;line-height:1.5;display:flex}img,svg,video,canvas{max-width:100%;height:auto}h1,h2,h3{color:var(--ink);text-wrap:balance;font-weight:700;line-height:1.25}h1{font-size:var(--fs-h1);margin:0 0 var(--space-4)}h2{font-size:var(--fs-h2);margin:0 0 var(--space-3)}h3{font-size:var(--fs-lg);margin:0 0 var(--space-2)}p{margin:0 0 var(--space-3)}a{color:var(--brand-orange-text)}.app-watermark{z-index:0;width:var(--watermark-size);height:var(--watermark-size);opacity:var(--watermark-opacity);pointer-events:none;-webkit-user-select:none;user-select:none;position:fixed;bottom:0;left:0}.app-header,.app-nav,.app-main,body.auth-page main{z-index:1;position:relative}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--brand-orange);outline-offset:2px}.app-nav a:focus-visible{outline-offset:-4px;box-shadow:inset 0 0 0 2px var(--brand-charcoal);outline:3px solid #fff}.table-scroll:focus-visible{outline:3px solid var(--brand-orange-text);outline-offset:2px}.shell{width:100%;max-width:var(--shell-max);padding-inline:var(--shell-gutter);margin-inline:auto}.app-header{background:var(--brand-charcoal);color:#fff}.app-header .shell{align-items:center;gap:var(--space-2);min-height:3.25rem;padding-block:var(--space-2);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.app-brand{justify-self:center;align-items:center;gap:var(--space-2);letter-spacing:.01em;font-weight:900;font-size:var(--fs-sm);color:var(--brand-on-charcoal);border:2px solid var(--brand-on-charcoal);white-space:nowrap;grid-column:2;padding:.2rem .55rem;line-height:1.2;text-decoration:none;display:inline-flex}.app-brand:hover{color:#fff;border-color:#fff}.app-header__user{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:clamp(4.5rem,4vw + 3rem,16rem);font-size:var(--fs-sm);color:#d6d6d8;grid-column:1;justify-self:start;overflow:hidden}.app-header__meta{justify-self:end;align-items:center;gap:var(--space-2);grid-column:3;min-width:0;display:inline-flex}.icon-btn{width:var(--tap);min-height:var(--tap);flex:none;gap:0;padding:0}.icon-btn svg{flex:none;width:1.1rem;height:1.1rem}.app-header .icon-btn.secondary{color:#fff;background:0 0;border-color:#5a5a5c}.app-header .icon-btn.secondary:hover{color:#fff;background:var(--brand-charcoal-soft);border-color:var(--brand-orange)}.theme-toggle{color:#fff;background:0 0;border:1px solid #5a5a5c;font-size:1.1rem;line-height:1}.theme-toggle:hover{color:#fff;background:var(--brand-charcoal-soft);border-color:var(--brand-orange)}.theme-toggle .theme-toggle__dark,:root[data-theme=dark] .theme-toggle .theme-toggle__light{display:none}:root[data-theme=dark] .theme-toggle .theme-toggle__dark{display:inline}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-toggle .theme-toggle__light{display:none}:root:not([data-theme=light]) .theme-toggle .theme-toggle__dark{display:inline}}body.auth-page .theme-toggle{top:var(--space-3);right:var(--space-3);z-index:2;color:var(--ink);background:var(--surface);border-color:var(--line-strong);position:fixed}body.auth-page .theme-toggle:hover{color:var(--ink);background:var(--surface-alt);border-color:var(--brand-orange)}.app-nav{background:var(--brand-action-bg)}.app-nav .shell{scrollbar-width:none;align-items:stretch;gap:clamp(.25rem,1.5vw,1.25rem);display:flex;overflow-x:auto}.app-nav .shell::-webkit-scrollbar{display:none}.app-nav a{min-height:var(--tap);padding:0 var(--space-3);color:#fff;font-size:var(--fs-sm);white-space:nowrap;border-bottom:3px solid #0000;align-items:center;text-decoration:none;display:inline-flex}.app-nav a:hover{background:var(--brand-action-hover)}.app-nav a[aria-current=page]{border-bottom-color:#fff;font-weight:700}.app-main{width:100%;max-width:var(--shell-max);padding:var(--shell-gutter) var(--shell-gutter) var(--space-7);flex:1;margin-inline:auto}.panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);padding:var(--panel-pad)}body.auth-page{background:var(--page);padding:var(--shell-gutter);justify-content:center;align-items:center}body.auth-page main{background:var(--surface);border:1px solid var(--line);width:100%;max-width:26rem;box-shadow:var(--shadow-raised);padding:clamp(1.25rem,4vw,2.25rem)}body.auth-page main.auth-wide{max-width:34rem}body.auth-page .auth-brand{text-align:center;font-weight:900;font-size:var(--fs-lg);color:var(--brand-orange);border:2px solid var(--brand-orange);margin-bottom:var(--space-5);padding:.35rem .5rem;display:block}body.auth-page form>button{width:100%;margin-top:var(--space-5)}label{margin-top:var(--space-4);margin-bottom:var(--space-1);font-weight:700;font-size:var(--fs-sm);display:block}input,select,textarea{width:100%;min-height:var(--tap);font-family:inherit;font-size:max(1rem, var(--fs-base));color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);padding:.55rem .65rem;display:block}input:focus,select:focus,textarea:focus{border-color:var(--brand-orange);box-shadow:0 0 0 2px var(--brand-orange-soft);outline:none}button,a.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap);font-family:inherit;font-size:var(--fs-sm);text-align:center;color:#fff;background:var(--brand-action-bg);border:1px solid var(--brand-action-bg);border-radius:var(--radius);cursor:pointer;padding:.5rem 1.1rem;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex}button:hover,a.btn:hover{background:var(--brand-action-hover);border-color:var(--brand-action-hover);color:#fff}button.secondary,a.btn.secondary{color:var(--ink);background:var(--surface);border-color:var(--line-strong)}button.secondary:hover,a.btn.secondary:hover{background:var(--surface-alt);border-color:var(--brand-orange);color:var(--ink)}button:disabled{cursor:wait;opacity:.6}.actions{gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.actions button,.actions a.btn{flex:0 auto}.actions.top-actions{margin-top:0;margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--line)}.back-btn{min-height:2rem;margin-bottom:var(--space-3);font-size:var(--fs-sm);color:var(--brand-orange-text);align-items:center;text-decoration:none;display:inline-flex}.back-btn:hover{text-decoration:underline}.muted{color:var(--ink-muted);overflow-wrap:anywhere}.error{color:var(--status-danger-fg)}.section{margin-bottom:var(--space-7)}.section>h2{padding-bottom:var(--space-2);border-bottom:2px solid var(--brand-orange)}.report-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.report-header h1{margin-bottom:var(--space-2)}.report-status,.badge{border-radius:var(--radius);font-size:var(--fs-xs);white-space:nowrap;padding:.2rem .6rem;font-weight:700;display:inline-block}.status-draft,.badge-in_progress{background:var(--status-info-bg);color:var(--status-info-fg)}.status-submitted{background:var(--status-warn-bg);color:var(--status-warn-fg)}.status-approved,.badge-completed{background:var(--status-ok-bg);color:var(--status-ok-fg)}.badge-wp{background:var(--status-accent-bg);color:var(--status-accent-fg)}.reports-list{margin-top:var(--space-5);gap:var(--space-3);display:grid}.report-card{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--surface-alt);border:1px solid var(--line);border-left:4px solid var(--brand-orange);border-radius:var(--radius);cursor:pointer;flex-wrap:wrap;transition:background-color .15s,border-color .15s;display:flex}.report-card:hover{background:var(--line);border-color:var(--line-strong);border-left-color:var(--brand-orange-dark)}.report-card-info{min-width:0}.report-card h3{margin:0 0 var(--space-1);font-size:var(--fs-lg)}.report-meta{gap:var(--space-2) var(--space-5);font-size:var(--fs-sm);color:var(--ink-muted);flex-wrap:wrap;display:flex}.download-pdf-card-btn{min-height:2.25rem;font-size:var(--fs-xs);white-space:nowrap;flex:none;padding:.35rem .75rem}.table-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;width:100%;max-width:100%;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.data-table th,.data-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:.55rem .65rem}.data-table thead th{color:var(--brand-orange-text);white-space:nowrap;border-bottom:2px solid var(--brand-orange-text);background:0 0;font-weight:700}.data-table tbody tr:nth-child(2n)>td{background:var(--surface-alt)}.empty-state{text-align:center;color:var(--ink-muted);padding:var(--space-5)!important;background:var(--surface-alt)!important}.placeholder-panel{padding:var(--space-7) var(--space-4);text-align:center;color:var(--ink-muted);background:var(--surface-alt);border-radius:var(--radius)}.placeholder-panel h2{margin:0 0 var(--space-2);color:var(--ink);border:0;padding:0}.placeholder-panel p{margin:0}.asset-preview-img{object-fit:cover;border:1px solid var(--line-strong);border-radius:var(--radius);width:4.5rem;height:3.375rem}.work-assignment-details-row>td{border-bottom:2px solid var(--line-strong);background:var(--surface-alt)!important;padding:0!important}.work-personnel-container{padding:var(--space-2) var(--space-3);border-bottom:1px dashed var(--line-strong)}.work-sub-title{font-size:var(--fs-xs);color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-1);font-weight:700;display:block}.work-personnel-list{gap:var(--space-1);flex-wrap:wrap;display:flex}.personnel-pill{align-items:center;gap:var(--space-1);font-size:var(--fs-xs);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-pill);padding:.15rem .6rem;display:inline-flex}.work-photos-container{padding:var(--space-2) var(--space-3)}.work-photos-flex{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(5rem,1fr));display:grid}.work-photo-thumb{aspect-ratio:4/3;object-fit:cover;border:1px solid var(--line-strong);border-radius:var(--radius);width:100%;transition:transform .15s}.work-photo-thumb:hover{transform:scale(1.04)}#loading,#error{padding:var(--space-6);text-align:center}#error{color:var(--status-danger-fg);background:var(--status-danger-bg);border:1px solid var(--status-danger-border);border-radius:var(--radius)}.refresh-indicator{margin-top:var(--space-4);font-size:var(--fs-xs);color:var(--ink-muted)}.field{gap:var(--space-1);flex-direction:column;display:flex}.field label{margin-top:0}#invite-form{gap:var(--space-4);margin-top:var(--space-5);flex-direction:column;display:flex}#denied{padding:var(--space-6);text-align:center;color:var(--status-danger-fg);background:var(--status-danger-bg);border:1px solid var(--status-danger-border);border-radius:var(--radius)}#status{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius)}#status.success{color:var(--status-ok-fg);background:var(--status-ok-bg);border:1px solid var(--status-ok-border)}#status.error{color:var(--status-danger-fg);background:var(--status-danger-bg);border:1px solid var(--status-danger-border)}@media (width<=767px){.data-table,.data-table tbody,.data-table tr,.data-table td{width:100%;display:block}.data-table thead{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.data-table tbody tr{margin-bottom:var(--space-3);background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--brand-orange)}.data-table tbody tr:nth-child(2n)>td{background:0 0}.data-table td{gap:var(--space-3);padding:.45rem var(--space-3);border-bottom:1px solid var(--line);overflow-wrap:anywhere;grid-template-columns:minmax(6rem,38%) 1fr;align-items:start;display:grid}.data-table tr>td:last-child{border-bottom:0}.data-table td:before{content:attr(data-label);font-size:var(--fs-xs);color:var(--brand-orange-text);text-transform:uppercase;letter-spacing:.03em;font-weight:700}.data-table td:not([data-label]),.data-table td.empty-state,.work-assignment-details-row>td{display:block}.data-table td.empty-state{padding:var(--space-4)!important}.work-assignment-details-row{border-left-color:var(--line-strong)!important}.actions button,.actions a.btn{flex:100%}}:root[data-theme=dark] .app-header,:root[data-theme=dark] .app-nav,:root[data-theme=dark] .panel,:root[data-theme=dark] body.auth-page main,:root[data-theme=dark] .report-card,:root[data-theme=dark] input,:root[data-theme=dark] select,:root[data-theme=dark] textarea{border-color:var(--line-strong)}:root[data-theme=dark] .report-card:hover{background:var(--surface-hover)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .app-header,:root:not([data-theme=light]) .app-nav,:root:not([data-theme=light]) .panel,:root:not([data-theme=light]) body.auth-page main,:root:not([data-theme=light]) .report-card,:root:not([data-theme=light]) input,:root:not([data-theme=light]) select,:root:not([data-theme=light]) textarea{border-color:var(--line-strong)}:root:not([data-theme=light]) .report-card:hover{background:var(--surface-hover)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}:root{--tap:max(44px, 2.75rem)}.dwb-page{gap:var(--space-5);display:grid}.dwb-toolbar,.dwb-section,.dwb-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow)}.dwb-toolbar,.dwb-section{padding:var(--space-4)}.dwb-toolbar{align-items:end;gap:var(--space-3);flex-wrap:wrap;display:flex}.dwb-toolbar__field{gap:var(--space-1);min-width:min(100%,13rem);display:grid}.dwb-toolbar__field label,.dwb-label{font-size:var(--fs-sm);color:var(--ink-muted);font-weight:700}.dwb-toolbar input[type=week],.dwb-card textarea,.dwb-reset input{width:100%;min-height:var(--tap);border:1px solid var(--line-strong);border-radius:var(--radius);font:inherit;color:var(--ink);background:var(--surface);padding:.55rem .7rem}.dwb-toolbar__nav{gap:var(--space-2);flex-wrap:wrap;display:flex}.dwb-heading-row{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.dwb-heading-row h2,.dwb-heading-row h3{margin:0}.dwb-status,.dwb-chip{align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);font-size:var(--fs-xs);padding:.2rem .55rem;font-weight:700;line-height:1.35;display:inline-flex}.dwb-status--draft,.dwb-status--selected,.dwb-chip--info{color:var(--status-info-fg);background:var(--status-info-bg)}.dwb-status--reviewed,.dwb-chip--warn{color:var(--status-warn-fg);background:var(--status-warn-bg)}.dwb-status--ready,.dwb-status--submitted,.dwb-chip--ok{color:var(--status-ok-fg);background:var(--status-ok-bg)}.dwb-status--failed,.dwb-chip--danger{color:var(--status-danger-fg);background:var(--status-danger-bg)}.dwb-summary-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));display:grid}.dwb-summary-item{padding:var(--space-3);background:var(--surface-alt);border-left:3px solid var(--line-strong)}.dwb-summary-item strong{margin-top:var(--space-1);overflow-wrap:anywhere;display:block}.dwb-alert{margin:var(--space-3) 0 0;padding:var(--space-3);border:1px solid var(--line);background:var(--status-info-bg);color:var(--status-info-fg)}.dwb-alert--warning{border-color:var(--status-danger-border);background:var(--status-warn-bg);color:var(--status-warn-fg)}.dwb-alert--danger{border-color:var(--status-danger-border);background:var(--status-danger-bg);color:var(--status-danger-fg)}.dwb-alert--success{border-color:var(--status-ok-border);background:var(--status-ok-bg);color:var(--status-ok-fg)}.dwb-issues{gap:var(--space-2);margin-top:var(--space-3);display:grid}.dwb-issue{padding:var(--space-3);border-left:3px solid var(--line-strong);background:var(--surface-alt)}.dwb-issue--blocking{border-left-color:var(--status-danger-fg)}.dwb-issue--warning{border-left-color:var(--status-warn-fg)}.dwb-issue__meta{margin-top:var(--space-1);color:var(--ink-muted);font-size:var(--fs-sm);overflow-wrap:anywhere}.dwb-cards{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));display:grid}.dwb-card{padding:var(--space-4);gap:var(--space-3);display:grid}.dwb-card--approved{border-left:4px solid var(--status-ok-fg)}.dwb-card--rejected{border-left:4px solid var(--status-danger-fg)}.dwb-card__title{justify-content:space-between;align-items:start;gap:var(--space-2);display:flex}.dwb-card__title h3{margin:0}.dwb-card__meta{gap:var(--space-2);flex-wrap:wrap;display:flex}.dwb-card__observation{font-size:var(--fs-lg);margin:0}.dwb-card__actions,.dwb-run-actions,.dwb-reset{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.dwb-card textarea{resize:vertical;min-height:5.5rem}.dwb-reset input{flex:18rem}.dwb-muted{color:var(--ink-muted)}.dwb-loading{opacity:.65;pointer-events:none}.dwb-inline-error{color:var(--status-danger-fg);font-size:var(--fs-sm);font-weight:700}@media (width<=48rem){.dwb-toolbar>*,.dwb-toolbar__nav,.dwb-toolbar__nav button,.dwb-run-actions,.dwb-run-actions button,.dwb-card__actions,.dwb-card__actions button{width:100%}.dwb-toolbar__nav{grid-template-columns:repeat(3,1fr);display:grid}.dwb-card__title{display:grid}}.planning-dnd-panel{border-top:1px solid var(--border,#d8dde4);margin-top:1.5rem;padding-top:1.5rem}.planning-dnd-heading,.planning-dnd-inbox__header,.planning-dnd-toolbar,.planning-dnd-column__header,.planning-dnd-card__heading,.planning-dnd-modal__heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.planning-dnd-heading{align-items:flex-start;margin-bottom:1rem}.planning-dnd-heading h2,.planning-dnd-modal h3{margin:.2rem 0 .35rem}.planning-dnd-heading__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.planning-dnd-inbox{border:1px solid var(--border,#d8dde4);background:var(--surface,#fff);border-radius:.9rem;margin:1rem 0;padding:1rem}.planning-dnd-inbox__header>div{gap:.2rem;display:grid}.planning-dnd-count{border:1px solid var(--border,#d8dde4);border-radius:999px;place-items:center;min-width:2rem;min-height:2rem;font-weight:700;display:inline-grid}.planning-dnd-inbox__rail{scroll-snap-type:x proximity;grid-auto-columns:minmax(240px,320px);grid-auto-flow:column;gap:.8rem;padding:.8rem 0 .2rem;display:grid;overflow-x:auto}.planning-dnd-card{border:1px solid var(--border,#d8dde4);background:var(--surface,#fff);scroll-snap-align:start;border-radius:.8rem;gap:.55rem;padding:.8rem;display:grid}.planning-dnd-card[draggable=true]{cursor:grab}.planning-dnd-card[draggable=true]:active{cursor:grabbing}.planning-dnd-card--selected{outline-offset:2px;outline:3px solid}.planning-dnd-card__heading{align-items:flex-start}.planning-dnd-card__select{justify-self:start}.planning-dnd-toolbar{flex-wrap:wrap;margin:1rem 0 .8rem}.planning-dnd-board{scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;grid-auto-flow:column;gap:.75rem;padding:.2rem .1rem .8rem;display:grid;overflow-x:auto}.planning-dnd-board--day{grid-auto-columns:minmax(220px,1fr)}.planning-dnd-board--week{grid-auto-columns:minmax(250px,1fr)}.planning-dnd-column{border:1px solid var(--border,#d8dde4);background:var(--surface,#fff);scroll-snap-align:start;border-radius:.9rem;flex-direction:column;min-height:260px;display:flex}.planning-dnd-column:focus-within{outline-offset:2px;outline:2px solid}.planning-dnd-column__header{border-bottom:1px solid var(--border,#d8dde4);align-items:flex-start;padding:.75rem}.planning-dnd-column__header>div{gap:.15rem;display:grid}.planning-dnd-column__header span{opacity:.72;font-size:.82rem}.planning-dnd-column__body{flex:1;align-content:start;gap:.65rem;min-height:150px;padding:.75rem;display:grid}.planning-dnd-column .planning-dnd-card{box-shadow:none}.planning-dnd-drop-action{margin:0 .75rem .75rem}.planning-dnd-quick-create{min-width:2.5rem;min-height:2.5rem;padding:.35rem;font-size:1.2rem}.planning-dnd-empty{opacity:.7;margin:.4rem 0}.planning-dnd-modal{z-index:1000;background:#00000059;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.planning-dnd-modal__card{border:1px solid var(--border,#d8dde4);background:var(--surface,#fff);border-radius:1rem;gap:1rem;width:min(520px,100%);padding:1.1rem;display:grid;box-shadow:0 18px 60px #0003}.planning-dnd-modal__card label{gap:.35rem;display:grid}.planning-dnd-modal__card input,.planning-dnd-modal__card select{width:100%}@media (width<=720px){.planning-dnd-heading,.planning-dnd-toolbar{flex-direction:column;align-items:stretch}.planning-dnd-heading__actions{justify-content:flex-start}.planning-dnd-inbox__rail,.planning-dnd-board--day,.planning-dnd-board--week{grid-auto-columns:minmax(82vw,1fr)}.planning-dnd-column{min-height:220px}}.planning-dnd-card{touch-action:pan-y}.planning-dnd-card--pointer-dragging{opacity:.72;transform:scale(.99)}.planning-dnd-column--pointer-target{outline-offset:2px;outline:3px solid}@media (prefers-reduced-motion:reduce){.planning-dnd-card--pointer-dragging{transform:none}}@media (forced-colors:active){.planning-dnd-column--pointer-target{outline:3px solid highlight}}body.planning-page{--shell-max:112rem}.planning-panel{min-width:0}#planning-loading{min-height:clamp(8rem,18vh,14rem);color:var(--ink-muted);text-align:center;place-items:center;display:grid}#planning-loading p{margin:0;font-weight:700}.planning-heading,.planning-view-heading,.planning-toolbar,.planning-card__heading,.planning-week-card__header,.planning-dialog__heading{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.planning-heading{margin-bottom:var(--space-5);align-items:flex-start}.planning-readonly-badge,.planning-write-badge,.planning-badge,.planning-work-week,.planning-detail-badge{border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-alt);min-height:1.75rem;color:var(--ink-muted);font-size:var(--fs-xs);white-space:nowrap;align-items:center;padding:.15rem .55rem;font-weight:700;display:inline-flex}.planning-write-badge,.planning-work-week{color:var(--ink)}.planning-write-badge{border-color:var(--brand-orange-dark)}.planning-detail-badge{border-style:dashed;border-color:var(--brand-orange-dark);color:var(--ink)}.planning-detail-badge--urgent{border-style:solid;border-width:2px}.planning-toolbar{padding:var(--space-4);margin-bottom:var(--space-4);border:1px solid var(--line);background:var(--surface-alt);flex-wrap:wrap;justify-content:flex-start}.planning-toolbar label{gap:var(--space-1);min-width:min(22rem,100%);font-size:var(--fs-sm);font-weight:700;display:grid}.planning-toolbar select{min-height:var(--tap);border:1px solid var(--line-strong);border-radius:var(--radius);color:var(--ink);background:var(--surface);font:inherit;padding:.45rem .65rem}.planning-toolbar #planning-status{margin-left:auto}.planning-tabs{gap:var(--space-2);margin-bottom:var(--space-5);border-bottom:2px solid var(--line);flex-wrap:wrap;display:flex}.planning-tabs button{color:var(--ink-muted);background:0 0;border:0;border-bottom:3px solid #0000;border-radius:0;margin-bottom:-2px}.planning-tabs button[aria-pressed=true]{border-bottom-color:var(--brand-orange);color:var(--ink);background:var(--surface-alt)}.planning-view-heading{margin-bottom:var(--space-3)}.planning-week-controls{gap:var(--space-2);display:flex}.planning-week-controls button{min-width:var(--tap);min-height:var(--tap)}.planning-view-summary,.planning-rolling-wave-summary{align-items:center;gap:var(--space-3) var(--space-5);color:var(--ink-muted);font-size:var(--fs-sm);flex-wrap:wrap;display:flex}.planning-view-summary{margin-bottom:var(--space-3)}.planning-view-summary strong,.planning-rolling-wave-summary strong{color:var(--ink)}.planning-rolling-wave-summary{padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);border:1px dashed var(--line-strong);background:var(--surface-alt)}.planning-gantt-scroll{border:1px solid var(--line);background:var(--surface);overscroll-behavior-inline:contain;max-width:100%;overflow:auto}.planning-gantt{--gantt-label-width:clamp(14rem, 21vw, 22rem);min-width:max-content}.planning-gantt__row{grid-template-columns:var(--gantt-label-width) var(--timeline-width);border-bottom:1px solid var(--line);min-height:4rem;display:grid}.planning-gantt__row:last-child{border-bottom:0}.planning-gantt__row--header{min-height:4.5rem;font-size:var(--fs-xs);font-weight:700}.planning-gantt__label{z-index:3;width:var(--gantt-label-width);overflow-wrap:anywhere;border-right:1px solid var(--line);background:var(--surface);flex-direction:column;justify-content:center;gap:.15rem;min-width:0;padding:.55rem .75rem;display:flex;position:sticky;left:0}.planning-gantt__label span{color:var(--ink-muted);font-size:var(--fs-xs)}.planning-gantt__label .planning-detail-badge{color:var(--ink);align-self:flex-start}.planning-gantt__label--header{background:var(--brand-charcoal);color:#fff}.planning-gantt__track{background-image:repeating-linear-gradient(to right, transparent 0, transparent 55px, color-mix(in srgb, var(--line) 55%, transparent) 56px);min-height:4rem;position:relative}.planning-gantt__track--header{background:var(--surface-alt);min-height:4.5rem;overflow:hidden}.planning-gantt__month,.planning-gantt__week{border-left:1px solid var(--line-strong);white-space:nowrap;align-items:center;padding-inline:.45rem;display:flex;position:absolute;overflow:hidden}.planning-gantt__month{height:2.25rem;top:0}.planning-gantt__week{border-top:1px solid var(--line);color:var(--ink-muted);font-size:var(--fs-xs);top:2.25rem;bottom:0}.planning-gantt__bar{border:1px solid var(--brand-orange-dark);border-radius:var(--radius);background:var(--brand-orange);height:1.2rem;box-shadow:var(--shadow);position:absolute;top:50%;transform:translateY(-50%)}.planning-gantt__bar--milestone{border-radius:0;height:.9rem;transform:translate(-50%,-50%)rotate(45deg);width:.9rem!important}.planning-gantt-mobile{display:none}.planning-card-list{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr));display:grid}.planning-card,.planning-week-card{min-width:0;padding:var(--space-4);overflow-wrap:anywhere;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow)}.planning-card__heading{align-items:flex-start}.planning-card__badges{justify-content:flex-end;gap:var(--space-1);flex-wrap:wrap;display:flex}.planning-card__dates{margin-top:var(--space-2);font-weight:700}.planning-card__meta{margin-top:var(--space-1);color:var(--ink-muted);font-size:var(--fs-sm)}.planning-item-actions{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.planning-item-actions button{min-height:var(--tap);font-size:var(--fs-xs);padding:.35rem .65rem}.planning-unscheduled{margin-top:var(--space-6)}.planning-lookahead-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr));display:grid}.planning-week-card__header{padding-bottom:var(--space-2);margin-bottom:var(--space-2);border-bottom:1px solid var(--line);align-items:baseline}.planning-week-card__header span{color:var(--ink-muted);font-size:var(--fs-xs)}.planning-week-card ul{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.planning-week-card li{gap:0 var(--space-2);grid-template-columns:auto 1fr;display:grid}.planning-week-card__item{align-items:flex-start;gap:var(--space-1);flex-wrap:wrap;min-width:0;display:flex}.planning-week-card__subject{min-width:0}.planning-week-card__dates{color:var(--ink-muted);font-size:var(--fs-xs);flex-basis:100%}.planning-empty-state{padding:var(--space-5);border:1px dashed var(--line-strong);color:var(--ink-muted);text-align:center;background:var(--surface-alt)}.planning-error,.planning-form__error{padding:var(--space-4);border:1px solid var(--status-danger-border);color:var(--status-danger-fg);background:var(--status-danger-bg)}.planning-error{margin-top:var(--space-4)}.planning-form__error{margin:0}.planning-dialog{border:1px solid var(--line-strong);border-radius:var(--radius);width:min(38rem,100vw - 2rem);max-height:calc(100dvh - 2rem);color:var(--ink);background:var(--surface);box-shadow:var(--shadow);padding:0;overflow:auto}.planning-dialog::backdrop{background:#00000073}.planning-form{gap:var(--space-4);padding:var(--space-5);display:grid}.planning-dialog__heading{align-items:flex-start}.planning-dialog__heading h2,.planning-dialog__heading p{margin-top:0}.planning-form label{gap:var(--space-1);font-weight:700;display:grid}.planning-form input,.planning-form select{width:100%;min-height:var(--tap);border:1px solid var(--line-strong);border-radius:var(--radius);color:var(--ink);background:var(--surface);font:inherit;padding:.45rem .65rem}.planning-form__dates{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.planning-form__week{min-height:1.5rem;margin:0;font-weight:700}.planning-form__actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}@media (width>=100rem){.planning-lookahead-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=45rem){.planning-heading,.planning-view-heading,.planning-toolbar{flex-direction:column;align-items:stretch}.planning-toolbar label{min-width:0}.planning-toolbar>button{width:100%}.planning-toolbar #planning-status{margin-left:0}.planning-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.planning-tabs button{width:100%;min-width:0;padding-inline:var(--space-2)}.planning-week-controls{width:100%}.planning-week-controls button:nth-child(2){flex:1}.planning-gantt-scroll{display:none}.planning-gantt-mobile{display:block}.planning-card__heading{flex-direction:column}.planning-card__badges{justify-content:flex-start}.planning-item-actions>*{flex:8rem}.planning-form__dates{grid-template-columns:1fr}.planning-form__actions>*{flex:1}}@media (forced-colors:active){.planning-gantt__bar,.planning-detail-badge,.planning-readonly-badge,.planning-write-badge,.planning-badge,.planning-work-week{forced-color-adjust:auto;border-color:buttontext}}.report-notes-section{gap:1rem;display:grid}.report-note-group{border:1px solid var(--border-color,#d9dee7);background:var(--panel-subtle,#fff);border-radius:.75rem;gap:.65rem;padding:.9rem;display:grid}.report-note-group h3{margin:0;font-size:1rem}.report-note-list{gap:.65rem;display:grid}.report-note-card{background:color-mix(in srgb, currentColor 5%, transparent);border-inline-start:4px solid;border-radius:.45rem;padding:.75rem .85rem}.report-note-card p{white-space:pre-wrap;overflow-wrap:anywhere;margin:.45rem 0 0}.report-note-card__meta{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.report-note-card--general,.report-note-card--other{color:#445064}.report-note-card--safety,.report-note-card--blocker{color:#8d2d2d}.report-note-card--quality{color:#67551d}.report-note-card--weather{color:#315d7a}.report-note-group--legacy{opacity:.9}@media (forced-colors:active){.report-note-card{color:canvastext;background:canvas;border:1px solid canvastext;border-inline-start-width:4px}}.report-photo-grid,.work-photos-flex.report-photo-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));align-items:start;gap:1rem;margin-top:.75rem;display:grid}.report-photo-card{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow);cursor:zoom-in;margin:0;overflow:hidden}.report-photo-card:focus-visible{outline:3px solid var(--brand-orange);outline-offset:3px}.report-photo-card[draggable=true]{cursor:grab}.report-photo-card[draggable=true]:active{cursor:grabbing}.report-photo-media{aspect-ratio:4/3;background:var(--surface-alt);width:100%;overflow:hidden}.report-photo-image,.work-photo-thumb.report-photo-image,.asset-preview-img.report-photo-image{object-fit:cover;object-position:center;width:100%;max-width:none;height:100%;display:block}.report-photo-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem;display:flex}.report-photo-label{min-width:0;color:var(--ink);font-size:var(--fs-sm);overflow-wrap:anywhere;flex:12rem}.report-photo-archive-status{border-radius:var(--radius-pill);min-height:1.75rem;font-size:var(--fs-xs);white-space:nowrap;align-items:center;padding:.2rem .55rem;font-weight:700;display:inline-flex}.report-photo-archive-status.is-archived{color:var(--status-ok-fg);background:var(--status-ok-bg)}.report-photo-archive-status.is-pending{color:var(--status-warn-fg);background:var(--status-warn-bg)}.report-photo-archive-status.is-failed{color:var(--status-danger-fg);background:var(--status-danger-bg)}.report-photo-actions{flex:none}.report-photo-download{white-space:nowrap;min-height:2.5rem;padding-inline:.85rem}.work-package-stack{gap:1.25rem;display:grid}.work-package-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);padding:1rem}.work-package-card__header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.work-package-card__header h3{margin:0}.work-package-block+.work-package-block{border-top:1px solid var(--line);margin-top:1.1rem;padding-top:1rem}.work-package-block h4{margin:0 0 .6rem}.work-assignment-overview{gap:.65rem;display:grid}.work-assignment-overview__item{border:1px solid var(--line);background:var(--surface-alt);padding:.75rem}.work-assignment-overview__members{flex-wrap:wrap;gap:.35rem;margin-top:.45rem;display:flex}.erp-summary{margin:0;line-height:1.55}.detail-review-list{margin:0;padding-left:1.25rem}.work-package-photo-groups{gap:1rem;display:grid}.work-photo-group{min-width:0}.work-photo-group__heading{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.45rem;display:flex}.report-photo-grid.compact-photo-grid{grid-template-columns:repeat(auto-fill,minmax(7rem,9rem));gap:.65rem;margin-top:0}.report-photo-card.compact-photo-card{box-shadow:none;border-radius:var(--radius);position:relative;overflow:visible}.compact-photo-button{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block;position:relative}.compact-photo-button:focus-visible{outline:3px solid var(--brand-orange);outline-offset:2px}.report-photo-image.compact-photo-image{aspect-ratio:4/3;border-radius:var(--radius) var(--radius) 0 0;width:100%;height:auto}.compact-photo-caption{font-size:var(--fs-xs);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;padding:.4rem .5rem;display:block;overflow:hidden}.compact-photo-hover-preview{z-index:50;border:1px solid var(--line-strong);background:var(--surface);width:min(24rem,72vw);box-shadow:var(--shadow-raised);pointer-events:none;padding:.35rem;display:none;position:absolute;bottom:calc(100% + .5rem);left:50%;transform:translate(-50%)}.compact-photo-hover-preview img{object-fit:contain;width:100%;height:auto;max-height:18rem;display:block}@media (hover:hover) and (pointer:fine){.compact-photo-button:hover .compact-photo-hover-preview{display:block}}.photo-lightbox{border:1px solid var(--line-strong);background:var(--surface);width:min(96vw,80rem);max-width:80rem;max-height:94vh;color:var(--ink);box-shadow:var(--shadow-raised);padding:0}.photo-lightbox::backdrop{background:#000000c7}.photo-lightbox__inner{grid-template-rows:auto minmax(0,1fr) auto;max-height:94vh;display:grid}.photo-lightbox__header,.photo-lightbox__footer{background:var(--surface);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.photo-lightbox__meta{color:var(--muted);font-size:var(--fs-xs);margin-top:.2rem}.photo-lightbox__image-wrap{touch-action:pan-y;-webkit-user-select:none;user-select:none;background:#111;place-items:center;min-height:0;padding:1rem 4rem;display:grid;position:relative}.photo-lightbox__image{object-fit:contain;cursor:grab;width:auto;max-width:100%;height:auto;max-height:calc(94vh - 12rem);display:block}.photo-lightbox__image:active{cursor:grabbing}.photo-lightbox__nav{z-index:2;color:#111;background:#ffffffe0;border-radius:999px;width:3rem;height:3rem;padding:0;font-size:2rem;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.photo-lightbox__nav--previous{left:.75rem}.photo-lightbox__nav--next{right:.75rem}.photo-lightbox__caption{overflow-wrap:anywhere;gap:.2rem;min-width:0;display:grid}.photo-lightbox__footer--actions{flex-wrap:wrap;align-items:end}.photo-move-controls{flex:24rem;grid-template-columns:minmax(12rem,1fr) auto;align-items:end;gap:.4rem .6rem;display:grid}.photo-move-controls label{font-size:var(--fs-xs);grid-column:1/-1;font-weight:700}.photo-move-controls select{width:100%;min-width:0}.photo-lightbox__action-buttons{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}@media (width<=47.99rem){.report-photo-grid,.work-photos-flex.report-photo-grid{grid-template-columns:1fr}.report-photo-grid.compact-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.work-package-card{padding:.75rem}.work-package-card__header,.work-photo-group__heading{flex-direction:column;align-items:flex-start}.report-photo-footer,.photo-lightbox__footer{flex-direction:column;align-items:stretch}.photo-lightbox{border:0;width:100vw;max-width:none;max-height:100dvh}.photo-lightbox__inner{max-height:100dvh}.photo-lightbox__image-wrap{padding:.5rem 3.25rem}.photo-lightbox__image{max-height:calc(100dvh - 18rem)}.photo-lightbox__nav{width:2.5rem;height:2.5rem}.photo-move-controls{grid-template-columns:1fr}.photo-move-controls label{grid-column:auto}.photo-lightbox__action-buttons{grid-template-columns:1fr 1fr;display:grid}.photo-lightbox__action-buttons button:last-child{grid-column:1/-1}.report-photo-download,#photo-lightbox-download{width:100%}}
