:root{--da-navy: #2e3f8c;--da-navy-dark: #1a2d6e;--da-navy-deeper: #152259;--da-red: #e63946;--da-red-dark: #c12430;--da-bg: #f0f2f7;--da-card-bg: #ffffff;--da-border: #d8dce8;--da-text: #1a1a2e;--da-text-muted: #6b7280;--da-text-light: #9ca3af;--da-healthy: #2e3f8c;--da-degraded: #7ba7d4;--da-unhealthy: #e63946;--da-unknown: #c0c6d6;--nav-height: 52px;--nav-bg: var(--da-navy);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--shadow-card: 0 1px 4px rgba(0, 0, 0, .1), 0 0 1px rgba(0, 0, 0, .08);--shadow-nav: 0 2px 6px rgba(0, 0, 0, .2)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-sans);font-size:14px;color:var(--da-text);background-color:var(--da-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}h1,h2,h3,h4{font-weight:600}.app{display:flex;flex-direction:column;height:100%}.app__content{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.navbar{height:var(--nav-height);background-color:var(--nav-bg);box-shadow:var(--shadow-nav);display:flex;align-items:stretch;padding:0 16px;flex-shrink:0;position:relative;z-index:100}.navbar__logo{display:flex;align-items:center;gap:10px;margin-left:-16px;padding:0 24px 0 20px;text-decoration:none;flex-shrink:0;background:#fff;align-self:stretch;border-right:1px solid rgba(0,0,0,.08)}.navbar__logo-icon{width:28px;height:28px;flex-shrink:0}.navbar__logo-text{color:#1a202c;font-size:16px;font-weight:600;letter-spacing:.01em;text-transform:lowercase}.navbar__tabs{display:flex;align-items:stretch;flex:1;list-style:none;gap:0}.navbar__tab{display:flex;align-items:center}.navbar__tab-btn{background:none;border:none;color:#ffffffd9;font-size:13.5px;font-weight:500;padding:0 14px;height:100%;white-space:nowrap;cursor:pointer;position:relative;transition:color .15s;letter-spacing:.01em}.navbar__tab-btn:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background-color:var(--da-red);transform:scaleX(0);transition:transform .15s}.navbar__tab-btn:hover,.navbar__tab-btn.active{color:#fff}.navbar__tab-btn.active:after{transform:scaleX(1)}.navbar__logo-img{height:28px;width:auto;display:block}.navbar__tab-btn--copilot{color:#ffffffe6}.navbar__right{display:flex;align-items:center;gap:12px;padding-left:8px;flex-shrink:0}.navbar__search-btn{background:none;border:none;color:#fffc;font-size:18px;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .15s,color .15s}.navbar__search-btn:hover{background-color:#ffffff1f;color:#fff}.navbar__avatar{width:34px;height:34px;border-radius:50%;background-color:#fff3;color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;letter-spacing:.5px;cursor:pointer;flex-shrink:0}.copilot-layout{display:flex;flex:1;min-height:0;overflow:hidden;background:var(--da-bg)}.left-panel{position:relative;background:#2d3142;flex-shrink:0;height:100%;overflow:hidden;display:flex;flex-direction:column}.left-panel__scroll{flex:1;overflow-y:auto;padding-bottom:24px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}.left-panel__scroll::-webkit-scrollbar{width:4px}.left-panel__scroll::-webkit-scrollbar-track{background:transparent}.left-panel__scroll::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.left-panel__resize-handle{position:absolute;top:0;right:0;bottom:0;width:5px;cursor:col-resize;z-index:10;background:transparent;transition:background .15s}.left-panel__resize-handle:hover{background:#ffffff2e}.main-area{flex:1;overflow-y:auto;padding:24px 32px;min-width:0;display:flex;flex-direction:column}.tree-card-view{margin-top:14px;animation:treeCardIn .18s ease}@keyframes treeCardIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.copilot-placeholder{display:flex;justify-content:center;padding:16px 0 40px}.copilot-placeholder__card{background:var(--da-card-bg);box-shadow:var(--shadow-card);border-radius:6px;padding:36px 44px;max-width:820px;width:100%;display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}.copilot-placeholder__icon{display:flex;align-items:center;justify-content:center}.copilot-placeholder__title{font-size:22px;font-weight:700;color:var(--da-navy);margin:0}.copilot-placeholder__desc{font-size:14px;line-height:1.7;color:var(--da-text-muted);max-width:580px}.copilot-placeholder__status{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--da-text-light)}.job-card-tree{display:flex;flex-direction:column;gap:5px;width:100%;margin-bottom:4px}.tree-view-tabs{display:flex;gap:4px;padding:10px 12px 8px}.tree-view-tab{flex:1;padding:5px 0;font-size:10px;font-weight:700;letter-spacing:.07em;border:none;background:#ffffff0f;color:#fff6;cursor:pointer;border-radius:5px;transition:background .15s,color .15s}.tree-view-tab--active{background:#7dd3fc2e;color:#7dd3fc}.tree-view-tab:hover:not(.tree-view-tab--active){background:#ffffff1a;color:#ffffffb3}.tree-section{border:1.5px solid var(--da-border);border-radius:8px;overflow:hidden;background:#fff}.tree-section__header{display:flex;align-items:center;gap:9px;padding:10px 14px;cursor:pointer;-webkit-user-select:none;user-select:none;background:#f6f7fb;transition:background .14s}.tree-section__header:hover{background:#eef0f8}.tree-section__icon{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;flex-shrink:0}.tree-section__icon--active{background:#2e3f8c1a;color:#2e3f8c}.tree-section__icon--archive{background:#6b72801a;color:#6b7280}.tree-section__icon--approval{background:#d977061f;color:#d97706}.tree-section__icon--paused{background:#3b82f61a;color:#2563eb}.tree-section__label{font-size:12.5px;font-weight:700;color:var(--da-navy);flex:1;text-align:left}.tree-section__chevron{color:var(--da-text-muted);display:flex;flex-shrink:0}.tree-section__body{padding:8px 12px 10px;display:flex;flex-direction:column;gap:2px}.tree-group{margin-left:6px}.tree-group__header{display:flex;align-items:center;gap:7px;padding:5px 8px;border-radius:6px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s}.tree-group__header:hover{background:#2e3f8c0d}.tree-group__chevron{color:var(--da-text-muted);display:flex;flex-shrink:0;transition:transform .15s ease}.tree-group__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tree-group__icon-label{font-size:11px;flex-shrink:0;width:14px;text-align:center}.tree-group__label{font-size:11.5px;font-weight:600;color:#374151;flex:1;text-align:left}.tree-group__children{margin-left:20px;padding-left:8px;border-left:1.5px solid var(--da-border)}.tree-leaf{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:6px;cursor:pointer;transition:background .12s;margin:1px 0;border-left:2.5px solid transparent}.tree-leaf:hover{background:#2e3f8c0f}.tree-leaf--active{background:#2e3f8c1a;border-left-color:var(--da-navy)}.tree-leaf__dot{width:6px;height:6px;border-radius:50%;background:#d1d5db;border:1.5px solid #9ca3af;flex-shrink:0}.tree-leaf--active .tree-leaf__dot{background:var(--da-navy);border-color:var(--da-navy)}.tree-leaf__label{font-size:11.5px;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.tree-leaf--active .tree-leaf__label{color:var(--da-navy);font-weight:600}.tree-badge{background:#e5e7eb;color:#374151;font-size:10px;font-weight:700;border-radius:10px;padding:1px 7px;min-width:18px;text-align:center;flex-shrink:0;line-height:1.6}.tree-badge--section{background:#2e3f8c1f;color:var(--da-navy)}.tree-badge--amber{background:#d9770626;color:#b45309}.tree-badge--blue{background:#3b82f626;color:#2563eb}.tree-empty{font-size:12px;color:var(--da-text-muted);padding:6px 10px;font-style:italic}.tree-hint{position:fixed;z-index:2000;background:#fff;border:1.5px solid var(--da-border);border-radius:10px;padding:12px 14px;width:310px;box-shadow:0 8px 28px #00000021,0 2px 6px #00000012;pointer-events:none;display:flex;flex-direction:column;gap:6px}.tree-hint__header{display:flex;align-items:center;justify-content:space-between;gap:8px}.tree-hint__type{font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.09em;color:var(--da-text-muted)}.tree-hint__priority{font-size:10.5px;font-weight:800;letter-spacing:.05em}.tree-hint__loc{font-size:10.5px;color:var(--da-text-muted);margin-top:-2px}.tree-hint__issue{font-size:11px;color:#374151;line-height:1.55;border-top:1px solid var(--da-border);padding-top:7px;margin-top:1px}.left-panel .job-card-tree{gap:0;padding:8px 0 0}.left-panel .tree-section{border:none;border-radius:0;border-bottom:1px solid rgba(255,255,255,.06);background:transparent}.left-panel .tree-section__icon--active,.left-panel .tree-section__icon--paused,.left-panel .tree-section__icon--archive,.left-panel .tree-section__icon--approval{background:#7dd3fc1a;color:#7dd3fc}.left-panel .tree-section__header{background:transparent;color:#ffffffc7;border-bottom:none}.left-panel .tree-section__header:hover{background:#ffffff0d}.left-panel .tree-section__chevron{color:#fff6}.left-panel .tree-section__body{border-top:1px solid rgba(255,255,255,.05);background:#0000001f}.left-panel .tree-section__label{color:#ffffffd9}.left-panel .tree-group__header{color:#ffffff94}.left-panel .tree-group__header:hover{background:#ffffff0d}.left-panel .tree-group__label{color:#ffffff94}.left-panel .tree-leaf,.left-panel .tree-leaf__label{color:#ffffffa6}.left-panel .tree-leaf:hover{background:#ffffff12}.left-panel .tree-leaf:hover .tree-leaf__label{color:#ffffffe6}.left-panel .tree-leaf--active{background:#ffffff21;border-left-color:#ffffff8c}.left-panel .tree-leaf--active .tree-leaf__label{color:#fff}.left-panel .tree-badge,.left-panel .tree-badge--section,.left-panel .tree-badge--amber{background:#7dd3fc1f;color:#7dd3fc}.left-panel .tree-empty{color:#ffffff59}.tree-section--reports{cursor:pointer}.tree-section--reports .tree-section__header{padding:10px 14px}.left-panel .tree-section--reports:hover .tree-section__header{background:#ffffff12}.tree-section--reports-active .tree-section__header,.left-panel .tree-section--reports-active .tree-section__header{background:#7dd3fc1f;color:#7dd3fc}.tree-section__icon--reports{color:#7dd3fc}.tree-section--info{cursor:pointer}.tree-section--info .tree-section__header{padding:10px 14px}.left-panel .tree-section--info:hover .tree-section__header{background:#ffffff12}.tree-section--info-active .tree-section__header,.left-panel .tree-section--info-active .tree-section__header{background:#f5c5421f;color:#f5c542}.tree-section__icon--info{color:#f5c542}.tree-section--flows{cursor:pointer}.left-panel .tree-section--flows:hover .tree-section__header{background:#ffffff12}.tree-section--flows-active .tree-section__header,.left-panel .tree-section--flows-active .tree-section__header{background:#f5c5421f;color:#f5c542}.tree-section__icon--flows{color:#f5c542}.approval-leaf{display:flex;flex-direction:column;gap:4px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.07);margin-bottom:2px}.approval-leaf:last-child{border-bottom:none}.approval-leaf__meta{display:flex;align-items:center;gap:6px;padding-left:24px}.approval-leaf__expiry{font-size:10px;color:#ffffff73;flex:1}.approval-leaf__nudge-btn,.approval-leaf__approve-btn{font-size:10px;font-weight:700;padding:2px 8px;border-radius:4px;border:none;cursor:pointer;font-family:inherit;transition:all .15s;white-space:nowrap}.approval-leaf__nudge-btn{background:#ffffff1f;color:#ffffffbf}.approval-leaf__nudge-btn:hover{background:#ffffff38;color:#fff}.approval-leaf__nudge-btn--sent{background:#22c55e40;color:#86efac;cursor:default}.approval-leaf__approve-btn{background:#15803d59;color:#86efac}.approval-leaf__approve-btn:hover{background:#15803d8c;color:#fff}.tree-subnodes{padding:0 0 4px}.tree-subnode{display:flex;align-items:center;justify-content:flex-start!important;gap:8px;padding:9px 14px 9px 49px!important;cursor:pointer;font-size:12.5px;font-weight:500;color:#ffffffe0!important;transition:background .15s,color .15s}.tree-subnode:hover{background:#ffffff0f;color:#fff!important}.tree-subnode--active{background:#ffffff1a;color:#fff!important;font-weight:600}.tree-subnode__dot{width:5px;height:5px;border-radius:50%;background:#ffffff4d;flex-shrink:0}.tree-subnode--active .tree-subnode__dot{background:#7dd3fc}.tree-subnode__ext{margin-left:auto;font-size:11px;opacity:.45}.camera-scene{border-radius:4px;overflow:hidden;border:1px solid var(--da-border);background:#111}.camera-scene__overlay-wrap{position:relative;width:100%;aspect-ratio:2560 / 1024;overflow:hidden;display:block}.camera-scene__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;display:block}.camera-scene__svg-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.camera-scene__missing{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:160px;color:#ffffff80;font-size:13px;background:#1a1a2e}.camera-scene__missing-icon{font-size:28px;margin-bottom:4px}.camera-scene__missing code{font-family:monospace;background:#ffffff1a;padding:2px 8px;border-radius:3px;font-size:12px}.camera-scene__undo-bar{display:flex;align-items:center;gap:12px;padding:7px 12px;background:#fefce8;border-top:1px solid #fde68a}.camera-scene__undo-btn{font-size:12px;font-weight:700;color:#92400e;background:#fde68a;border:1px solid #f59e0b;border-radius:5px;padding:4px 12px;cursor:pointer;white-space:nowrap;transition:background .12s}.camera-scene__undo-btn:hover{background:#fcd34d}.camera-scene__undo-hint{font-size:11px;color:#a16207}.camera-scene__caption{padding:8px 12px;font-size:12px;color:var(--da-text-muted);background:#f7f8fc;border-top:1px solid var(--da-border);line-height:1.6;font-style:italic}.zone-add-menu{position:fixed;z-index:1200;background:#1e2330;border:1px solid #3a4060;border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:6px;min-width:186px;box-shadow:0 8px 32px #0000008c;transform:translate(-50%,10px)}.zone-add-menu__title{font-size:10px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.09em;padding:2px 4px 6px;border-bottom:1px solid #2d3555}.zone-add-menu__btn{display:flex;align-items:center;gap:10px;background:#2a3050;border:1px solid #3a4070;border-radius:6px;color:#e5e7eb;font-size:13px;font-weight:600;padding:9px 12px;cursor:pointer;transition:background .1s;text-align:left}.zone-add-menu__btn:hover{background:#343d65}.zone-add-menu__btn--cancel{background:transparent;border-color:transparent;color:#6b7280;font-size:12px;font-weight:400;padding:4px 12px;justify-content:center}.zone-add-menu__btn--cancel:hover{color:#d1d5db;background:#ffffff0d}.zone-add-menu__swatch{width:14px;height:14px;border-radius:3px;flex-shrink:0}.zone-add-menu__swatch--excl{background:#f5c800}.zone-add-menu__swatch--alert{background:#2e3f8c;border:1px solid #5577cc}.zone-drawing-hint{display:flex;align-items:center;gap:10px;padding:7px 12px;background:#1e2330;border-top:1px solid #2d3555}.zone-drawing-hint__badge{font-size:11px;font-weight:700;padding:3px 9px;border-radius:4px;white-space:nowrap;flex-shrink:0}.zone-drawing-hint__text{font-size:12px;color:#9ca3af;flex:1;line-height:1.4}.zone-drawing-hint__cancel{font-size:12px;font-weight:600;color:#f87171;background:transparent;border:1px solid rgba(248,113,113,.6);border-radius:4px;padding:3px 10px;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .1s}.zone-drawing-hint__cancel:hover{background:#f871711f}.evidence-health-grid{display:flex;flex-direction:column;border:1px solid var(--da-border);border-radius:5px;overflow:hidden}.health-check{display:flex;align-items:center;gap:12px;padding:9px 14px;font-size:12.5px;border-bottom:1px solid var(--da-border)}.health-check:last-child{border-bottom:none}.health-check--ok{background:#f9fafb}.health-check--fail{background:#e6394608}.health-check__icon{width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0}.health-check--ok .health-check__icon{background:#dcfce7;color:#15803d}.health-check--fail .health-check__icon{background:#e6394624;color:var(--da-red)}.health-check__label{font-weight:600;color:var(--da-text);min-width:130px;flex-shrink:0}.health-check__value{color:var(--da-text-muted)}.health-check--fail .health-check__value{color:var(--da-red)}.evidence-chart{border:1px solid var(--da-border);border-radius:5px;background:#f9fafb;padding:12px 14px 10px;display:flex;flex-direction:column;gap:8px}.evidence-chart__title{font-size:10.5px;font-weight:600;color:var(--da-text-muted);text-transform:uppercase;letter-spacing:.05em}.evidence-chart__legend{display:flex;flex-wrap:wrap;gap:14px}.chart-legend-item{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--da-text-muted)}.chart-legend-item--alert{color:var(--da-red);font-weight:600}.chart-legend-swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0}.evidence-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.stat-pill{background:var(--da-bg);border:1px solid var(--da-border);border-radius:5px;padding:10px 12px;display:flex;flex-direction:column;gap:3px}.stat-pill--highlight{background:#e639460d;border-color:#e6394647}.stat-pill__value{font-size:17px;font-weight:700;color:var(--da-navy);line-height:1}.stat-pill--highlight .stat-pill__value{color:var(--da-red)}.stat-pill__label{font-size:10px;font-weight:600;color:var(--da-text-muted);text-transform:uppercase;letter-spacing:.04em}.stat-pill__sub{font-size:11px;color:var(--da-text-muted);line-height:1.4}.evidence-naming{border:1px solid var(--da-border);border-radius:5px;overflow:hidden}.naming-row{display:flex;align-items:baseline;gap:12px;padding:9px 14px;font-size:12.5px;border-bottom:1px solid var(--da-border);background:#f9fafb}.naming-row:last-child{border-bottom:none}.naming-row__label{font-weight:600;color:var(--da-text-muted);font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;min-width:110px;flex-shrink:0}.naming-row__value{color:var(--da-text)}.naming-row__value--old{text-decoration:line-through;color:var(--da-text-muted)}.naming-row__value--new{color:#1a7a4a;font-weight:700}.evidence-site-cameras{display:flex;flex-direction:column;border:1px solid var(--da-border);border-radius:5px;overflow:hidden}.site-camera-row{display:flex;align-items:center;gap:10px;padding:8px 14px;font-size:12.5px;border-bottom:1px solid var(--da-border);background:#f9fafb}.site-camera-row:last-child{border-bottom:none}.site-camera-row--warn{background:#e6394608}.camera-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.camera-status-dot--ok{background:#22c55e;box-shadow:0 0 0 2px #22c55e2e}.camera-status-dot--warn{background:var(--da-red);box-shadow:0 0 0 2px #e639462e}.site-camera-row__name{font-weight:500;color:var(--da-text);flex:1}.site-camera-row__note{font-size:11.5px;color:var(--da-text-muted)}.site-camera-row--warn .site-camera-row__note{color:var(--da-red)}.evidence-poc-cameras{display:flex;flex-direction:column;gap:10px}.poc-cameras-table{width:100%;border-collapse:collapse;border:1px solid var(--da-border);border-radius:5px;overflow:hidden;font-size:12.5px}.poc-th{padding:8px 10px;text-align:left;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--da-text-muted);background:#f4f6fb;border-bottom:1px solid var(--da-border)}.poc-th--fix{text-align:center;white-space:nowrap}.poc-autofix-hint{margin-left:4px;color:var(--da-navy);cursor:help;font-size:11px}.poc-td{padding:7px 10px;border-bottom:1px solid var(--da-border);color:var(--da-text)}.poc-camera-row:last-child .poc-td{border-bottom:none}.poc-camera-row--warn{background:#e6394608}.poc-td--status{width:18px}.poc-td--name{font-weight:500}.poc-td--note{font-size:11.5px;color:var(--da-text-muted)}.poc-camera-row--warn .poc-td--note{color:var(--da-red)}.poc-td--fix{text-align:center;width:72px}.poc-fix-label{display:flex;align-items:center;justify-content:center;gap:5px;cursor:pointer}.poc-fix-cb{width:15px;height:15px;cursor:pointer;accent-color:var(--da-navy)}.poc-fix-text{font-size:10px;font-weight:600;color:var(--da-text-muted);text-transform:uppercase}.poc-fix-na{color:var(--da-border);font-size:12px}tfoot .poc-tf-label{padding:7px 10px;font-size:11px;font-weight:600;color:var(--da-text-muted);background:#f9fafb;border-top:1px solid var(--da-border)}tfoot .poc-tf-cb{padding:7px 10px;background:#f9fafb;border-top:1px solid var(--da-border);text-align:center}.poc-autofix-banner{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:#2e3f8c0f;border:1.5px solid rgba(46,63,140,.22);border-radius:6px;font-size:12.5px;color:var(--da-text);line-height:1.6}.poc-autofix-banner__icon{font-size:18px;line-height:1;flex-shrink:0;margin-top:1px}.schedule-grid-wrap{margin-top:12px;border:1px solid var(--da-border);border-radius:5px;overflow:hidden}.schedule-grid-title{padding:8px 12px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--da-text-muted);background:#f4f6fb;border-bottom:1px solid var(--da-border)}.schedule-table{width:100%;border-collapse:collapse;font-size:12.5px}.sched-th{padding:7px 12px;background:#f9fafb;font-size:10px;font-weight:700;color:var(--da-text-muted);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--da-border);text-align:left}.sched-row{border-bottom:1px solid var(--da-border)}.sched-row:last-child{border-bottom:none}.sched-row--new{background:#fafbfd}.sched-td{padding:7px 12px;vertical-align:middle}.sched-val{color:var(--da-text);font-weight:500}.sched-val--mono{font-family:SFMono-Regular,Consolas,monospace;font-size:12px}.sched-state{display:inline-block;padding:2px 9px;border-radius:99px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.sched-state--on{background:#22c55e1f;color:#15803d;border:1px solid rgba(34,197,94,.28)}.sched-state--off{background:#6b72801a;color:#6b7280;border:1px solid rgba(107,114,128,.25)}.sched-input{padding:4px 8px;border:1px solid var(--da-border);border-radius:4px;font-size:12px;color:var(--da-text);background:#fff;outline:none;font-family:inherit}.sched-input:focus{border-color:var(--da-navy);box-shadow:0 0 0 2px #2e3f8c1f}.sched-input--time{width:92px}.evidence-site-schedule{display:flex;flex-direction:column;gap:0}.site-sched-heading{font-size:11.5px;font-weight:700;color:var(--da-text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.site-sched-table{width:100%;border-collapse:collapse;font-size:12.5px;border:1px solid var(--da-border);border-radius:6px;overflow:hidden}.site-sched-th{padding:7px 12px;background:#f5f6fa;text-align:left;font-size:11px;font-weight:700;color:var(--da-text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--da-border)}.site-sched-row{border-bottom:1px solid var(--da-border)}.site-sched-row:last-child{border-bottom:none}.site-sched-row--warn{background:#d977060a}.site-sched-td{padding:7px 12px;vertical-align:middle}.site-sched-td--name{font-weight:600;color:var(--da-text);white-space:nowrap}.site-sched-td--schedule{font-family:SFMono-Regular,Consolas,monospace;font-size:12px;color:var(--da-text-muted)}.site-sched-badge{display:inline-block;padding:2px 9px;border-radius:99px;font-size:10px;font-weight:700;letter-spacing:.05em}.site-sched-badge--warn{background:#d977061f;color:#b45309;border:1px solid rgba(217,119,6,.3)}.site-sched-badge--ok{background:#22c55e1a;color:#15803d;border:1px solid rgba(34,197,94,.25)}.site-sched-divider{height:1px;background:var(--da-border);margin:18px 0 0}.comment-box{display:flex;align-items:flex-start;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--da-border)}.comment-box__input{flex:1;resize:vertical;border:1px solid var(--da-border);border-radius:5px;padding:8px 10px;font-size:12.5px;font-family:inherit;color:var(--da-text);background:#fafbfd;outline:none;min-height:46px;line-height:1.5;transition:border-color .15s}.comment-box__input:focus{border-color:var(--da-navy);box-shadow:0 0 0 2px #2e3f8c1a;background:#fff}.comment-box__rec-dot{position:absolute;top:3px;right:3px;width:7px;height:7px;border-radius:50%;background:#e63946;animation:rec-blink .8s ease-in-out infinite}@keyframes rec-blink{0%,to{opacity:1}50%{opacity:0}}.ref-image{display:flex;flex-direction:column;gap:8px}.ref-image__photo{width:100%;max-height:340px;object-fit:cover;object-position:center;border-radius:4px;display:block;border:1px solid var(--da-border)}.ref-image__caption{font-size:11.5px;color:var(--da-text-muted);font-style:italic;line-height:1.55;margin:0}.scene-with-zones{display:flex;flex-direction:column;gap:8px}.scene-with-zones__frame{position:relative;width:100%;border-radius:4px;border:1px solid var(--da-border);overflow:hidden;line-height:0}.scene-with-zones__photo{width:100%;max-height:340px;object-fit:cover;object-position:center;display:block}.scene-with-zones__svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.copilot-placeholder__job-card-preview{width:100%;border:1.5px solid var(--da-border);border-radius:6px;overflow:clip;text-align:left;box-shadow:0 2px 10px #00000017,0 1px 4px #0000000f}.jcp-header{background:var(--da-navy);padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;overflow:visible}.jcp-header__title{flex:1;min-width:0;font-size:11px;font-weight:700;letter-spacing:.1em;color:#ffffffb3;text-transform:uppercase}.jcp-header__actions{display:flex;align-items:center;gap:4px}.jcp-priority-pill{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:3px 9px;border-radius:4px;flex-shrink:0}.jcp-priority-pill--critical{background:#e63946d9;color:#fff}.jcp-priority-pill--high{background:#dc641ed1;color:#fff}.jcp-priority-pill--medium{background:#c8a000d9;color:#fff}.jcp-priority-pill--low{background:#ffffff2e;color:#ffffffd9}.jcp-two-col{display:flex;align-items:flex-start}.jcp-left{flex:0 0 42%;padding:16px 18px;display:flex;flex-direction:column;gap:10px;border-right:1.5px solid var(--da-border);min-width:0}.jcp-right{flex:1;padding:14px 16px;display:flex;flex-direction:column;gap:14px;min-width:0}.jcp-two-col--single .jcp-left{flex:1;border-right:none}.jcp-collapse-section{border:1px solid var(--da-border);border-radius:5px;overflow:hidden}.jcp-section-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:7px 10px;background:#f6f7fb;border:none;cursor:pointer;font-family:inherit;text-align:left;transition:background .14s}.jcp-section-toggle:hover{background:#eef0f8}.jcp-collapse-body{padding:10px 12px;background:#fff}.jcp-collapse-body--sop .jcp-field{display:none}.jcp-collapse-body--sop .jcp-row{gap:0}.jcp-action-bar{position:sticky;bottom:0;background:#fff;border-top:1.5px solid var(--da-border);z-index:4;box-shadow:0 -2px 8px #0000000f}.jcp-divider{height:1px;background:var(--da-border)}.org-tree{display:flex;flex-direction:column;gap:5px}.org-tree__label{font-size:10.5px;font-weight:600;letter-spacing:.05em;color:var(--da-text-muted);text-transform:uppercase}.org-tree__path{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:12.5px}.org-tree__crumb-wrap{display:flex;align-items:center;gap:4px}.org-tree__crumb{padding:2px 8px;border-radius:3px;font-weight:500}.org-tree__crumb--org{background:#eef0fa;color:var(--da-navy)}.org-tree__crumb--group{background:#f0eefa;color:#5a3ea0}.org-tree__crumb--site{background:#eef7f0;color:#2a6e3f}.org-tree__crumb--camera{background:#e6394614;color:var(--da-red);font-weight:600}.org-tree__sep{color:var(--da-text-light);font-size:14px}.jcp-row{display:flex;flex-direction:column;gap:4px}.jcp-field{font-size:10.5px;font-weight:600;letter-spacing:.05em;color:var(--da-text-muted);text-transform:uppercase}.jcp-value{font-size:13px;color:var(--da-text);line-height:1.6}.jcp-value--title{font-weight:600;font-size:14px;color:var(--da-navy)}.jcp-sop-textarea{flex:1;width:100%;min-height:64px;padding:6px 8px;font-size:12px;font-family:inherit;color:var(--da-text, #374151);background:#f9fafb;border:1px solid var(--da-border);border-radius:4px;resize:vertical;line-height:1.5}.jcp-sop-textarea:focus{outline:none;border-color:var(--da-navy);background:#fff}.jcp-sop-textarea::placeholder{color:var(--da-text-muted);font-style:italic}.jcp-title-with-num{display:flex;align-items:flex-start;gap:10px}.jcp-card-num{font-weight:700;font-size:20px;color:var(--da-navy);min-width:24px;line-height:1.3;flex-shrink:0;opacity:.55}.priority-wrap{display:flex;align-items:flex-start;gap:10px;flex:1}.jcp-badge--high{background:#e639461f;color:var(--da-red);border:1px solid rgba(230,57,70,.3)}.priority-explain{font-size:12.5px;color:var(--da-text-muted);line-height:1.55}.jcp-badge--critical{background:#e639462e;color:var(--da-red);border:1px solid rgba(230,57,70,.45)}.jcp-badge--medium{background:#d48f1021;color:#8a5e00;border:1px solid rgba(212,143,16,.35)}.jcp-badge--low{background:var(--da-bg);color:var(--da-text-muted);border:1px solid var(--da-border)}.jcp-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:8px;border-top:1px solid var(--da-border);margin-top:4px}.jcp-btn--full{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;gap:6px}.jcp-btn-placeholder{visibility:hidden;pointer-events:none}.jcp--resolved,.jcp--parked,.jcp--irrelevant{opacity:.5;transition:opacity .4s ease}.jcp--resolved .jcp-body,.jcp--resolved .jcp-actions,.jcp--parked .jcp-body,.jcp--parked .jcp-actions,.jcp--irrelevant .jcp-body,.jcp--irrelevant .jcp-actions{pointer-events:none}.jcp--approval{border:5px solid #d97706;box-shadow:0 0 0 3px #d9770626,0 2px 10px #00000017,0 1px 4px #0000000f}.jcp-resolved-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 9px;border-radius:99px;margin-right:4px;white-space:nowrap}.badge--green{background:#22c55e;color:#fff}.badge--blue{background:#2e3f8c;color:#fff}.badge--grey{background:#9ca3af;color:#fff}.badge--amber{background:#d97706;color:#fff}.badge--red{background:#e63946;color:#fff}.jcp-approval-required-notice{grid-column:1 / -1;display:flex;align-items:flex-start;gap:10px;background:#d9770614;border:1.5px solid rgba(217,119,6,.35);border-radius:7px;padding:10px 14px;margin-bottom:2px}.jcp-approval-required-badge{flex-shrink:0;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;background:#d97706;color:#fff;padding:2px 7px;border-radius:4px;line-height:18px}.jcp-approval-required-text{font-size:12px;color:#92400e;line-height:1.45}.jcp--approval-approved{border-left:4px solid #15803d;box-shadow:0 0 0 3px #15803d1f,0 2px 10px #00000017,0 1px 4px #0000000f}.jcp--rejected{border-left:4px solid #e63946;box-shadow:0 0 0 3px #e639461f,0 2px 10px #00000017,0 1px 4px #0000000f}.jcp--modification{border-left:4px solid #d97706;box-shadow:0 0 0 3px #d977061f,0 2px 10px #00000017,0 1px 4px #0000000f}.jcp-decision-banner{display:flex;align-items:flex-start;gap:8px;padding:12px 18px;font-size:13px;line-height:1.5;border-bottom:1.5px solid transparent}.jcp-decision-banner--rejected{background:#e6394612;border-color:#e6394638;color:#991b1b}.jcp-decision-banner--modification{background:#d9770612;border-color:#d9770638;color:#92400e}.jcp-sop-badge{background:#ffffff26!important;color:#ffffffe6!important;border:1px solid rgba(255,255,255,.25)!important;font-size:9px!important;font-weight:700!important;height:18px!important;margin-left:8px}.copilot-progress{width:100%;display:flex;flex-direction:column;gap:7px}.copilot-progress__top{display:flex;justify-content:space-between;align-items:baseline}.copilot-progress__label{font-size:12.5px;color:var(--da-text-muted);font-weight:500}.copilot-progress__pct{font-size:13px;font-weight:800;color:var(--da-navy)}.copilot-roi{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px}.copilot-roi__tag{font-size:11.5px;font-weight:700;color:var(--da-navy);display:flex;align-items:center;gap:5px;white-space:nowrap}.copilot-roi__item{font-size:11px;background:#2e3f8c12;border:1px solid rgba(46,63,140,.18);color:var(--da-navy);border-radius:99px;padding:2px 10px;line-height:1.7}@keyframes pb-shimmer{0%{filter:brightness(1)}40%{filter:brightness(1.55)}to{filter:brightness(1)}}.pb-flash{animation:pb-shimmer .9s ease-out forwards}@keyframes pb-glow-pulse{0%,to{box-shadow:0 0 #16a34a73}50%{box-shadow:0 0 0 7px #16a34a00}}.copilot-progress__fill--done{background:linear-gradient(90deg,#16a34a,#4ade80)!important;animation:pb-glow-pulse 1.8s ease-in-out infinite}.copilot-progress--done .copilot-progress__track{background:#16a34a1f}.copilot-progress--done .copilot-progress__label{color:#16a34a;font-weight:600}.copilot-progress--done .copilot-progress__pct{color:#16a34a}@keyframes pb-pct-pop{0%{transform:scale(1)}45%{transform:scale(1.38)}70%{transform:scale(.94)}to{transform:scale(1)}}.pb-pct-pop{animation:pb-pct-pop .5s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes pb-badge-float{0%{opacity:1;transform:translateY(0) scale(1)}20%{opacity:1;transform:translateY(-6px) scale(1.1)}to{opacity:0;transform:translateY(-28px) scale(.9)}}.pb-badge{display:inline-block;margin-left:8px;font-size:11px;font-weight:700;color:#16a34a;animation:pb-badge-float .9s ease-out forwards;pointer-events:none;vertical-align:baseline}@keyframes pb-roi-enter{0%{opacity:0;transform:translate(-10px) scale(.92)}to{opacity:1;transform:translate(0) scale(1)}}.pb-roi-enter{animation:pb-roi-enter .38s cubic-bezier(.34,1.56,.64,1) both}.reports-panel{width:100%;border:1.5px solid var(--da-border);border-radius:6px;overflow:hidden}.reports-panel__header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:#f4f6fb;border-bottom:1.5px solid var(--da-border)}.reports-panel__title{font-size:11px;font-weight:800;color:var(--da-navy);text-transform:uppercase;letter-spacing:.08em}.reports-panel__subtitle{font-size:11px;color:var(--da-text-muted)}.report-cards{display:grid;grid-template-columns:1fr 1fr;gap:0}@media(max-width:640px){.report-cards{grid-template-columns:1fr}}.report-card{padding:18px 18px 14px;border-right:1px solid var(--da-border);display:flex;flex-direction:column;gap:12px}.report-card:last-child{border-right:none}.report-card__head{display:flex;align-items:flex-start;gap:10px}.report-card__head-icon{width:34px;height:34px;border-radius:7px;background:#2e3f8c17;color:var(--da-navy);display:flex;align-items:center;justify-content:center;flex-shrink:0}.report-card__head-icon--amber{background:#d9770617;color:#d97706}.report-card__title{font-size:13px;font-weight:700;color:var(--da-navy);margin-bottom:2px}.report-card__desc{font-size:11.5px;color:var(--da-text-muted);line-height:1.5}.report-card__stats{display:flex;gap:16px}.report-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.report-stat__val{font-size:22px;font-weight:800;line-height:1}.report-stat__val--green{color:#22c55e}.report-stat__val--blue{color:#2e3f8c}.report-stat__val--grey{color:#9ca3af}.report-stat__val--amber{color:#d97706}.report-stat__label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--da-text-muted)}.report-card__list{display:flex;flex-direction:column;border:1px solid var(--da-border);border-radius:5px;overflow:hidden;flex:1}.report-item{display:flex;align-items:center;gap:8px;padding:7px 12px;font-size:11.5px;border-bottom:1px solid var(--da-border);background:#fafbfd}.report-item:last-child{border-bottom:none}.ri--resolved{border-left:3px solid #22c55e}.ri--parked{border-left:3px solid #2e3f8c}.ri--ignored{border-left:3px solid #9ca3af}.ri--approval{border-left:3px solid #d97706;flex-direction:column;align-items:flex-start;padding:10px 12px;gap:4px}.report-item__camera{font-weight:600;color:var(--da-text);flex:1}.report-item__site{font-size:11px;color:var(--da-text-muted)}.report-item__badge{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:1px 7px;border-radius:99px}.ri-badge--resolved{background:#22c55e26;color:#15803d}.ri-badge--parked{background:#2e3f8c1f;color:#2e3f8c}.ri-badge--ignored{background:#9ca3af2e;color:#6b7280}.report-item__approval-row{display:flex;align-items:center;gap:8px;width:100%}.report-item__type{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#d97706}.report-item__title-text{font-size:11.5px;color:var(--da-text);line-height:1.4}.report-item__signoff{display:flex;align-items:center;gap:8px;width:100%;margin-top:2px}.report-item__signoff-label{font-size:10px;font-weight:600;color:var(--da-text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.report-item__signoff-line{flex:1;height:1px;border-bottom:1.5px dashed var(--da-border);margin-bottom:2px}.report-card__empty{font-size:12px;color:var(--da-text-muted);line-height:1.6;padding:12px;background:#f9fafb;border:1px solid var(--da-border);border-radius:5px;flex:1}.report-card__btn{width:100%;padding:9px;border-radius:5px;border:1.5px solid var(--da-border);background:#f4f6fb;color:var(--da-navy);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;font-family:inherit;margin-top:auto}.report-card__btn:hover{background:#eaecf5;border-color:var(--da-navy)}.report-card__btn--approval{background:#d977060f;border-color:#d9770659;color:#92400e}.report-card__btn--approval:hover{background:#d977061f;border-color:#d97706}.reports-panel__toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 16px;background:#f4f6fb;border:none;border-bottom:1.5px solid var(--da-border);cursor:pointer;font-family:inherit;text-align:left;gap:8px;transition:background .15s}.reports-panel__toggle:hover{background:#edf0f8}.reports-panel__header-text{display:flex;align-items:center;gap:10px;flex:1}.reports-panel__toggle-chevron{color:var(--da-text-muted);display:flex;flex-shrink:0}.dash-panel{width:100%;border:1.5px solid var(--da-border);border-radius:6px;overflow:hidden}.dash-panel__header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:#f4f6fb;border-bottom:1.5px solid var(--da-border)}.dash-panel__title{font-size:11px;font-weight:800;color:var(--da-navy);text-transform:uppercase;letter-spacing:.08em}.dash-panel__subtitle{font-size:11px;color:var(--da-text-muted)}.dash-tiles{display:grid;grid-template-columns:repeat(6,1fr)}.dash-tile{display:flex;flex-direction:column;align-items:center;padding:20px 10px 16px;border-right:1px solid var(--da-border);background:var(--tile-bg, rgba(46,63,140,.04));transition:filter .15s;cursor:default;gap:4px}.dash-tile:last-child{border-right:none}.dash-tile:hover{filter:brightness(.96)}.dash-tile--done{background:#22c55e0d}.dash-tile__icon{color:var(--tile-color, #2e3f8c);margin-bottom:4px}.dash-tile__count{font-size:28px;font-weight:800;color:var(--tile-color, #2e3f8c);line-height:1}.dash-tile--done .dash-tile__count{font-size:22px;color:#22c55e}.dash-tile__label{font-size:10px;font-weight:700;color:var(--da-text-muted);text-transform:uppercase;letter-spacing:.07em;text-align:center}.dash-tile__priority{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.dash-tile__done-tag{font-size:10px;font-weight:600;color:#22c55e}@keyframes tile-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.18);opacity:.8}}@keyframes tile-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes tile-ping{0%,to{transform:scale(1)}35%{transform:scale(1.12)}65%{transform:scale(.94)}}@keyframes tile-bounce{0%,to{transform:translateY(0)}40%{transform:translateY(-5px)}65%{transform:translateY(-2px)}}@keyframes tile-wave{0%,to{transform:rotate(0)}25%{transform:rotate(7deg)}75%{transform:rotate(-7deg)}}@keyframes tile-tick{0%,to{transform:rotate(0)}50%{transform:rotate(18deg)}}.anim-pulse{animation:tile-pulse 2.2s ease-in-out infinite}.anim-spin-slow{animation:tile-spin 9s linear infinite}.anim-ping{animation:tile-ping 2.6s ease-in-out infinite}.anim-bounce{animation:tile-bounce 2s ease-in-out infinite}.anim-wave{animation:tile-wave 3s ease-in-out infinite}.anim-tick{animation:tile-tick 2.2s ease-in-out infinite}@media(max-width:640px){.dash-tiles{grid-template-columns:repeat(2,1fr)}.dash-tile{border-right:1px solid var(--da-border);border-bottom:1px solid var(--da-border)}.dash-tile:nth-child(2n){border-right:none}.dash-tile:nth-last-child(-n+2){border-bottom:none}}.dash-panel__toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 16px;background:#f4f6fb;border:none;border-bottom:1.5px solid var(--da-border);cursor:pointer;font-family:inherit;text-align:left;gap:8px;transition:background .15s}.dash-panel__toggle:hover{background:#edf0f8}.dash-panel__header-text{display:flex;align-items:center;gap:10px;flex:1}.dash-panel__toggle-chevron{color:var(--da-text-muted);display:flex;flex-shrink:0}.dash-panel--sidebar{border:none;border-radius:0;border-bottom:1px solid rgba(255,255,255,.07);background:transparent}.dash-panel__sidebar-header{padding:14px 14px 7px;font-size:10px;font-weight:700;letter-spacing:.09em;color:#ffffff61;text-transform:uppercase}.dash-tiles--sidebar{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.06)}.dash-tiles--sidebar .dash-tile{padding:10px 6px 9px;background:#ffffff0a;border-right:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07);border-radius:0;gap:3px}.dash-tiles--sidebar .dash-tile:nth-child(3n){border-right:none}.dash-tiles--sidebar .dash-tile__count{color:#fff;font-size:17px;font-weight:700}.dash-tiles--sidebar .dash-tile__label{color:#ffffff7a;font-size:9px;text-align:center;line-height:1.3}.dash-tiles--sidebar .dash-tile__priority{font-size:8.5px;font-weight:600;letter-spacing:.03em;opacity:.85;color:#7dd3fc}.dash-tiles--sidebar .dash-tile--done .dash-tile__count{color:#4ade80}.info-box{width:100%;flex-shrink:0;border:1.5px solid var(--da-border);border-radius:6px;overflow:hidden;text-align:left}.info-box__header{padding:12px 16px;background:#f4f6fb;font-size:13px;font-weight:600;color:var(--da-navy)}.info-box__body{border-top:1px solid var(--da-border);padding:20px 18px}.capability-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px}.capability-item{display:flex;flex-direction:column;gap:6px}.capability-item__icon{color:var(--da-navy);display:flex;align-items:center}.capability-item__label{font-size:13px;font-weight:600;color:var(--da-text)}.capability-item__desc{font-size:12.5px;color:var(--da-text-muted);line-height:1.6}.main-area__empty{display:flex;align-items:stretch;margin:-24px -32px;width:calc(100% + 64px);flex:1;min-height:0}.landing-page{position:relative;display:flex;flex-direction:column;align-items:center;width:100%;flex:1;min-height:480px;background:#0c0f1e;overflow:hidden}.landing-page__ambient{position:absolute;top:-80px;left:50%;transform:translate(-50%);width:700px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(46,63,140,.2) 0%,transparent 70%);pointer-events:none}.landing-page__top{display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px 40px 12px;position:relative;z-index:1;width:100%;max-width:720px}.landing-page__badge{display:inline-flex;align-items:center;gap:8px;padding:4px 14px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:#ffffff0a;font-size:11px;color:#ffffff8c;margin-bottom:12px;width:fit-content;letter-spacing:.01em}.landing-page__badge-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;flex-shrink:0;animation:lp-pulse 2s ease-in-out infinite}@keyframes lp-pulse{0%,to{opacity:1;box-shadow:0 0 #22c55e80}50%{opacity:.8;box-shadow:0 0 0 5px #22c55e00}}.landing-page__title{font-size:36px;font-weight:800;color:#fff;line-height:1.1;letter-spacing:-.02em;margin:0 0 10px}.landing-page__title-accent{background:linear-gradient(130deg,#60a5fa,#22d3ee);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-page__desc{font-size:12.5px;color:#ffffff6b;line-height:1.6;max-width:420px;margin:0 0 18px}.landing-page__stats{display:flex;align-items:center;justify-content:center}.landing-page__stat{display:flex;flex-direction:column;align-items:center;gap:4px}.landing-page__stat-val{font-size:22px;font-weight:700;color:#fff;line-height:1}.landing-page__stat-label{font-size:10.5px;color:#ffffff61;white-space:nowrap;display:flex;align-items:center;gap:4px}.landing-page__stat-divider{width:1px;height:38px;background:#ffffff1a;margin:0 28px}.landing-page__globe{display:flex;align-items:center;justify-content:center;padding:0 0 16px;position:relative;z-index:1}.globe-canvas{width:380px;height:380px;cursor:grab;display:block}.globe-canvas:active{cursor:grabbing}.landing-stat-tip{position:relative;display:inline-flex;align-items:center}.landing-stat-tip__icon{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;border-radius:50%;border:1px solid rgba(255,255,255,.3);font-size:8px;font-style:italic;font-weight:700;color:#fff6;cursor:default;line-height:1;flex-shrink:0}.landing-stat-tip__popup{display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#1e2440;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:8px 12px;font-size:11px;color:#ffffffbf;line-height:1.5;white-space:normal;width:200px;text-align:center;box-shadow:0 8px 24px #0006;pointer-events:none;z-index:100;font-style:normal;font-weight:400}.landing-stat-tip__popup:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#ffffff1f}.landing-stat-tip:hover .landing-stat-tip__popup{display:block}.process-flows-panel{padding:24px}.flow-diagram-card{background:#fff;border:1px solid var(--da-border);border-radius:8px;padding:24px;margin-bottom:24px}.flow-diagram-card__title{font-size:11px;font-weight:700;color:var(--da-navy);text-transform:uppercase;letter-spacing:.07em;margin-bottom:20px}.flow-diagram-card__hint{font-size:11px;color:var(--da-text-muted);margin:-8px 0 14px;font-style:italic}.spec-panel{padding:32px 40px 48px;max-width:960px}.spec-panel__hero{margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid var(--da-border)}.spec-panel__hero-badge{display:inline-block;background:var(--da-navy);color:#fff;font-size:10px;font-weight:700;letter-spacing:.08em;padding:2px 8px;border-radius:4px;margin-bottom:10px;text-transform:uppercase}.spec-panel__hero-title{font-size:24px;font-weight:700;color:var(--da-navy);margin:0 0 4px}.spec-panel__hero-sub{font-size:14px;color:var(--da-text-muted);margin:0 0 10px}.spec-panel__hero-meta{font-size:12px;color:var(--da-text-muted);margin:0}.spec-panel__hero-meta code{background:#e8ecf4;padding:1px 5px;border-radius:3px;font-size:11px;color:var(--da-navy)}.spec-section{border:1px solid var(--da-border);border-radius:8px;margin-bottom:8px;background:#fff;overflow:hidden}.spec-section>summary{display:flex;align-items:center;padding:13px 18px;font-weight:600;font-size:13.5px;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none;color:var(--da-navy);background:#f8f9fc;transition:background .12s}.spec-section>summary::-webkit-details-marker{display:none}.spec-section>summary:before{content:"▶";font-size:9px;margin-right:10px;color:var(--da-text-muted);transition:transform .2s}.spec-section[open]>summary:before{transform:rotate(90deg)}.spec-section>summary:hover{background:#eef0f8}.spec-section[open]>summary{border-bottom:1px solid var(--da-border)}.spec-section__body{padding:16px 18px}.spec-subsection{border:1px solid var(--da-border);border-radius:6px;margin:8px 0;overflow:hidden;background:#fafbfd}.spec-subsection>summary{display:flex;align-items:center;padding:9px 14px;font-size:12.5px;font-weight:600;color:#374151;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none;background:#f3f4f8;transition:background .12s}.spec-subsection>summary::-webkit-details-marker{display:none}.spec-subsection>summary:before{content:"▶";font-size:8px;margin-right:8px;color:var(--da-text-muted);transition:transform .2s}.spec-subsection[open]>summary:before{transform:rotate(90deg)}.spec-subsection>summary:hover{background:#eaecf4}.spec-subsection[open]>summary{border-bottom:1px solid var(--da-border)}.spec-subsection>pre,.spec-subsection>.spec-section__body,.spec-subsection>p{margin:0;padding:14px 16px}.spec-pre{background:#1e2130;color:#cdd6f4;padding:14px 16px;border-radius:6px;font-size:11.5px;overflow-x:auto;font-family:JetBrains Mono,Fira Code,Consolas,monospace;line-height:1.65;white-space:pre;margin:10px 0 0}.spec-pre--go{color:#89dceb}.spec-pre--json{color:#a6e3a1}.spec-table-wrap{width:100%;overflow-x:auto;border-radius:8px;border:1px solid var(--da-border);margin:10px 0;box-shadow:0 1px 4px #2e3f8c0f}.spec-table{width:100%;border-collapse:collapse;font-size:12.5px}.spec-table thead tr{background:#eef0f8}.spec-table th{text-align:left;padding:9px 14px;color:var(--da-navy);font-weight:700;font-size:11.5px;letter-spacing:.03em;text-transform:uppercase;border-bottom:2px solid var(--da-border);white-space:nowrap}.spec-table td{padding:8px 14px;border-bottom:1px solid #e8ecf4;vertical-align:top;color:#374151;line-height:1.5}.spec-table tbody tr:last-child td{border-bottom:none}.spec-table tbody tr:nth-child(2n) td{background:#f7f8fc}.spec-table tbody tr:hover td{background:#eef1fb}.spec-table code{background:#e4e8f5;padding:1px 6px;border-radius:4px;font-size:11px;color:var(--da-navy);font-family:JetBrains Mono,Fira Code,monospace}.spec-method{display:inline-block;padding:1px 7px;border-radius:4px;font-size:10px;font-weight:700;letter-spacing:.04em;white-space:nowrap}.spec-method--get{background:#dcfce7;color:#166534}.spec-method--post{background:#dbeafe;color:#1e40af}.spec-method--put{background:#fef3c7;color:#92400e}.spec-method--patch{background:#ede9fe;color:#5b21b6}.spec-method--del{background:#fee2e2;color:#991b1b}.spec-priority{display:inline-block;padding:1px 7px;border-radius:4px;font-size:10px;font-weight:700;letter-spacing:.04em}.spec-priority--critical{background:#fee2e2;color:#991b1b}.spec-priority--high{background:#ffedd5;color:#9a3412}.spec-priority--medium{background:#fef3c7;color:#92400e}.spec-priority--low{background:#f0f9ff;color:#0c4a6e}.spec-note{font-size:12.5px;color:#374151;line-height:1.6;margin:8px 0}.spec-note code{background:#e8ecf4;padding:1px 5px;border-radius:3px;font-size:11px;color:var(--da-navy)}.spec-list{font-size:12.5px;color:#374151;padding-left:20px;margin:8px 0;line-height:1.8}.spec-list code{background:#e8ecf4;padding:1px 5px;border-radius:3px;font-size:11px;color:var(--da-navy)}.spec-decision{border-left:3px solid var(--da-navy);padding:10px 14px;margin:10px 0;background:#f8f9fc;border-radius:0 6px 6px 0}.spec-decision__title{font-weight:600;font-size:12.5px;color:var(--da-navy);margin-bottom:4px}.spec-decision__body{font-size:12px;color:#4b5563;line-height:1.6}.mermaid-wrap{overflow-x:auto}.mermaid-wrap svg{display:block;width:100%;min-width:600px;height:auto}.flow-node-tooltip{position:fixed;z-index:9999;max-width:340px;background:#1a2560;color:#e8ecf8;font-size:12px;line-height:1.6;padding:11px 15px;border-radius:7px;box-shadow:0 6px 24px #00000059;pointer-events:none;border-left:3px solid #e63946}.flow-node-tooltip strong{display:block;color:#fff;font-size:12px;font-weight:700;margin-bottom:5px;letter-spacing:.02em}.mermaid-wrap .node rect.label-container,.mermaid-wrap .node rect.basic{fill:#2e3f8c!important;stroke:#4a5fa8!important}.mermaid-wrap .node text,.mermaid-wrap .node tspan{fill:#fff!important}.mermaid-wrap .edgeLabel text,.mermaid-wrap .edgeLabel tspan,.mermaid-wrap .edgeLabels text,.mermaid-wrap .edgeLabels tspan{fill:#1a2560!important;font-weight:700!important;font-size:12px!important}.review-page{flex:1;min-height:0;overflow-y:auto;padding:24px 32px;max-width:860px;display:flex;flex-direction:column;gap:20px}.review-page>*{flex-shrink:0}.review-banner{display:flex;gap:14px;align-items:flex-start;background:#eff6ff;border:1px solid #bfdbfe;border-left:4px solid #2e3f8c;border-radius:8px;padding:16px 18px;font-size:13px;color:#1e3a6e;line-height:1.55}.review-banner__icon{flex-shrink:0;margin-top:1px;color:#2e3f8c}.review-report{display:flex;flex-direction:column;gap:0;background:#fff;border:1px solid var(--da-border);border-radius:8px;overflow:hidden}.rr-block{padding:20px 24px;border-bottom:1px solid var(--da-border)}.rr-block:last-child{border-bottom:none}.rr-block__heading{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--da-text-muted);margin-bottom:12px}.rr-issue{display:flex;flex-direction:column;gap:10px}.rr-issue__title-row{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}.rr-issue__title{font-size:15px;font-weight:700;color:var(--da-navy);flex:1;line-height:1.4}.rr-prose{font-size:13px;color:#374151;line-height:1.65;margin:0}.rr-proposal{background:#f0f7ff;border-left:3px solid #2e3f8c;border-radius:0 6px 6px 0;padding:12px 16px}.rr-images{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:520px){.rr-images{grid-template-columns:1fr}}.rr-image-col{display:flex;flex-direction:column;gap:8px}.rr-image-col__label{font-size:11px;font-weight:600;color:var(--da-text-muted);padding:4px 8px;border-radius:4px;display:inline-block;align-self:flex-start}.rr-image-col__label--before{background:#fef2f2;color:#991b1b}.rr-image-col__label--after{background:#f0fdf4;color:#166534}.rr-img-wrap{position:relative;width:100%;aspect-ratio:2560 / 1024;overflow:hidden;border-radius:6px;border:1px solid var(--da-border);background:#111}.rr-img-wrap__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.rr-img-wrap .camera-scene,.rr-img-wrap .camera-scene__overlay-wrap{position:absolute;inset:0;width:100%;height:100%}.rr-img-wrap .camera-scene__photo{width:100%;height:100%;object-fit:cover}.rr-img-wrap .camera-scene__svg-overlay{position:absolute;inset:0;width:100%;height:100%}.rr-sop{font-family:inherit;font-size:12px;color:#374151;line-height:1.7;white-space:pre-wrap;background:#f9fafb;border:1px solid var(--da-border);border-radius:6px;padding:14px 16px;margin:0}.review-actions-wrap{background:#fff;border:1px solid var(--da-border);border-radius:8px;padding:20px;display:flex;flex-direction:column;gap:12px}.review-actions-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#6b7280}.review-note-input{width:100%;border:1px solid var(--da-border);border-radius:6px;padding:10px 12px;font-size:13px;font-family:inherit;color:#374151;background:#f9fafb;resize:vertical;line-height:1.5}.review-note-input:focus{outline:none;border-color:#2e3f8c}.review-actions{display:flex;gap:10px;flex-wrap:wrap}.review-btn{padding:10px 22px;border-radius:6px;font-size:13px;font-weight:700;border:none;cursor:pointer;letter-spacing:.01em;transition:background .15s,opacity .15s}.review-btn:disabled{opacity:.4;cursor:not-allowed}.review-btn--approve{background:#16a34a;color:#fff}.review-btn--approve:hover:not(:disabled){background:#15803d}.review-btn--reject{background:#dc2626;color:#fff}.review-btn--reject:hover:not(:disabled){background:#b91c1c}.review-btn--modify{background:#2e3f8c;color:#fff}.review-btn--modify:hover:not(:disabled){background:#243272}.review-actions-hint{font-size:11px;color:#9ca3af}.review-decision-wrap{flex:1;display:flex;align-items:center;justify-content:center;padding:48px 24px}.review-decision-card{background:#fff;border:1px solid var(--da-border);border-radius:10px;padding:40px 48px;max-width:520px;width:100%;text-align:center;display:flex;flex-direction:column;gap:14px}.review-decision-icon{font-size:40px;line-height:1}.review-decision-heading{font-size:20px;font-weight:700}.review-decision-body{font-size:14px;color:#374151;line-height:1.6}.review-decision-note{font-size:13px;color:#6b7280;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:10px 14px;text-align:left;line-height:1.5}.review-decision-close{font-size:12px;color:#9ca3af;margin-top:4px}
