*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--sans);font-size:14px;line-height:1.5;color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{cursor:not-allowed;opacity:.5}button{color:inherit}button,a,input,select,textarea{outline-offset:4px}:focus-visible{outline:2px solid var(--violet)}.skip-link{position:fixed;top:-60px;left:12px;z-index:99;background:white;padding:12px}.skip-link:focus{top:10px}svg{display:inline-block;vertical-align:middle;flex-shrink:0}.icon{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.app-layout{min-height:100vh;padding-left:var(--sidebar)}.sidebar{width:var(--sidebar);background:var(--rail);color:#e6e8e1;position:fixed;inset:0 auto 0 0;z-index:30;display:flex;flex-direction:column;padding:30px 17px 19px}.brand{display:flex;align-items:center;gap:10px;padding:0 10px 29px}.brand img{width:34px;height:34px}.brand-name{font-size:21px;letter-spacing:-.8px;font-weight:650}.brand-name span{font-weight:400;color:#aeb1a8}.brand-tag{display:block;font:9px var(--mono);letter-spacing:2px;color:#8f958e;margin-top:4px}.workspace-switch{padding:10px 11px 12px;border:1px solid #343832;border-radius:6px;background:#20231f}.workspace-switch label{font:9px var(--mono);letter-spacing:1.7px;text-transform:uppercase;color:#9da396;display:block;margin-bottom:5px}.workspace-switch select{appearance:none;color:#e7ebe1;background:transparent;border:0;width:100%;font-size:12px;padding:2px 17px 2px 0;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14'%3E%3Cpath d='m4 5 3 3 3-3' fill='none' stroke='%23b8bbaa'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right center}.workspace-switch option{color:#e7ebe1;background:#222621}.nav-label{font:9px var(--mono);letter-spacing:2px;color:#858b80;margin:25px 12px 10px}.nav-link{display:flex;align-items:center;gap:12px;padding:11px 12px;margin:3px 0;border-radius:5px;font-size:13px;color:#c1c6bb;transition:background var(--fast),color var(--fast)}.nav-link:hover{background:#292d26;color:white}.nav-link.active{background:#35342c;color:#fff2e9;box-shadow:inset 2px 0 var(--coral)}.nav-link.active .icon{color:#f48b6b}.nav-count{margin-left:auto;font:10px var(--mono);background:#464035;color:#f5c6b3;padding:2px 6px;border-radius:4px}.nav-link.sub{padding-left:17px;font-size:12px}.sidebar-bottom{margin-top:auto;padding-top:24px}.pip-rail{border:1px solid #444050;border-radius:7px;background:linear-gradient(125deg,#302e3a,#22251f);width:100%;text-align:left;padding:13px;color:#e2ddff;display:flex;align-items:center;gap:10px}.pip-rail small{font-size:10px;color:#b6b0cb;display:block;margin-top:3px}.rail-footer{display:flex;align-items:center;gap:9px;margin:20px 9px 0}.avatar{width:29px;height:29px;border-radius:50%;background:#d7d0bd;color:#33392c;display:grid;place-items:center;font:11px var(--mono)}.rail-footer b{font-size:11px;font-weight:550}.rail-footer small{display:block;color:#828b7d;font:9px var(--mono);margin-top:3px}.dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--green);vertical-align:middle;margin-right:6px}.rail-footer .dot{background:#95b382}.topbar{height:65px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 32px;background:#f7f6f0e8;gap:14px}.breadcrumb{font:10px var(--mono);color:var(--muted);letter-spacing:.6px;display:flex;align-items:center;gap:13px}.breadcrumb b{font-weight:500;color:var(--ink)}.breadcrumb span.sep{color:#b7b9ae}.top-actions{display:flex;align-items:center;gap:15px}.top-search{border:0;background:transparent;display:flex;align-items:center;gap:9px;color:var(--muted);font-size:12px}.keycap{border:1px solid var(--line);background:#fdfcf6;font:10px var(--mono);padding:3px 5px;border-radius:3px;color:#7d8275}.top-currency{border:1px solid var(--line);background:var(--paper);border-radius:4px;font:10px var(--mono);padding:6px 8px;color:var(--ink)}.icon-btn{width:34px;height:34px;display:inline-grid;place-items:center;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--muted)}.icon-btn:hover{background:#e6e8df;color:var(--ink)}.mobile-toggle{display:none}.canvas{min-height:calc(100vh - 65px);background-image:linear-gradient(#757b6810 1px,transparent 1px),linear-gradient(90deg,#757b6810 1px,transparent 1px);background-size:28px 28px;padding:32px 34px 38px}.content{max-width:1460px;margin:0 auto}.eyebrow{font:10px var(--mono);text-transform:uppercase;letter-spacing:1.8px;color:var(--muted)}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:25px}.page-heading h1{font:38px/1.16 var(--serif);letter-spacing:-1.2px;margin:10px 0 10px;font-weight:400}.page-heading h1 em{color:#7a846c;font-weight:400}.page-heading p{color:var(--muted);margin:0;font-size:13px}.page-heading .actions{padding-top:19px}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn{border:1px solid var(--line);border-radius:5px;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--paper);color:var(--ink);padding:9px 13px;font-size:12px;font-weight:550;min-height:37px;transition:background var(--fast),box-shadow var(--fast),transform var(--fast);white-space:nowrap}.btn:hover{background:#f5f5ee;border-color:#b8bfb0}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--coral);color:#241c13;border-color:var(--coral)}.btn.primary:hover{background:#f4785b;border-color:#f4785b;box-shadow:0 3px 10px #ee654522}.btn.violet{background:var(--violet-soft);color:var(--violet-ink);border-color:#d9d3f4}.btn.violet:hover{background:#e4dffb}.btn.dark{background:var(--rail);color:#f5f3e8;border-color:var(--rail)}.btn.small{font-size:11px;min-height:30px;padding:6px 10px}.btn.ghost{background:transparent;border-color:transparent}.btn.danger{color:var(--red);border-color:#e9c4bc}.btn.full{width:100%}.btn .icon{width:16px;height:16px}.subtle-link{color:var(--muted);font-size:11px;display:inline-flex;align-items:center;gap:7px}.subtle-link:hover{color:var(--ink)}.subtle-link .icon{width:14px;height:14px}.demo-notice{display:flex;align-items:center;gap:9px;background:#e8ebdfb3;border:1px solid #d6ddc8;color:#4e6147;padding:8px 12px;font-size:11px;border-radius:5px;margin-bottom:24px}.demo-notice .tag{font:9px var(--mono);letter-spacing:1px;border-right:1px solid #c8d0bd;padding-right:10px}.demo-notice button{margin-left:auto;color:#3c5732;background:transparent;border:0;font-size:11px;text-decoration:underline;text-underline-offset:3px}.hero-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:22px;align-items:center;margin-bottom:27px}.hero-layout h1{font:45px/1.07 var(--serif);letter-spacing:-1.5px;margin:10px 0 12px;font-weight:400}.hero-layout h1 em{font-weight:400;color:#737e61}.hero-layout p{color:var(--muted);font-size:12px;max-width:455px;margin:0}.hero-caption{font:9px var(--mono);letter-spacing:1px;color:#929783;display:flex;align-items:center;gap:10px;margin-top:19px}.hero-caption .rule{height:1px;width:32px;background:#b6bda6}.ai-callout{border:1px solid #d8d4e4;background:linear-gradient(145deg,#fbfaf7,#f0edf7);padding:21px;border-radius:8px;position:relative;overflow:hidden}.ai-callout::after{content:'✳';position:absolute;right:-9px;top:-45px;font-size:145px;line-height:1;color:#7669ed0c;pointer-events:none}.ai-top{display:flex;align-items:center;gap:8px;color:var(--violet-ink);font:9px var(--mono);letter-spacing:1px}.ai-top .icon{width:17px;height:17px}.ai-callout h2{font:21px var(--serif);margin:14px 0 7px;letter-spacing:-.4px}.ai-callout p{font-size:11px;line-height:1.6;color:#7a7783;margin-bottom:14px}.ai-suggestion{border:1px solid #dfd9ea;border-radius:5px;background:#ffffffe0;display:flex;align-items:center;justify-content:space-between;width:100%;padding:9px 11px;color:#635c7a;font-size:11px}.ai-suggestion:hover{border-color:#b9aedc}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:0 0 25px}.metric{background:var(--paper);border:1px solid var(--line);border-radius:7px;padding:17px 18px 14px;position:relative;min-width:0;transition:border-color var(--fast)}a.metric:hover{border-color:#a5b195}.metric .metric-label{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px;gap:6px}.metric .metric-label .icon{width:15px;height:15px;color:#929880}.metric-value{font-size:29px;font-weight:500;letter-spacing:-1.2px;line-height:1.2;margin:12px 0 8px;font-variant-numeric:tabular-nums}.metric-value span{font:10px var(--mono);letter-spacing:0;color:var(--muted);margin-left:5px}.metric-foot{font-size:10px;color:#7d8474;display:flex;align-items:center;gap:5px}.metric-foot.good{color:var(--green)}.metric-foot.warn{color:var(--amber)}.metric-foot .icon{width:12px;height:12px}.grid-two{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);gap:20px;margin-bottom:20px}.grid-half{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:8px;min-width:0;overflow:hidden}.panel-head{padding:16px 19px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line-soft)}.panel-head h2{font-size:13px;font-weight:600;letter-spacing:-.2px;margin:0;display:flex;align-items:center;gap:8px}.panel-head p{font-size:11px;color:var(--muted);margin:3px 0 0}.panel-body{padding:19px}.panel-foot{padding:12px 19px;border-top:1px solid var(--line-soft);font-size:10px;color:var(--muted);display:flex;align-items:center;justify-content:space-between;gap:8px}.label-number{background:#eeefe7;border:1px solid #e1e4d8;font:10px var(--mono);padding:1px 6px;border-radius:4px;font-weight:400;color:#6e7666}.table-scroll{overflow:auto;width:100%}table{width:100%;border-collapse:collapse;text-align:left}th{font:9px var(--mono);letter-spacing:.8px;text-transform:uppercase;color:#7b8272;background:#f7f7f0;padding:10px 17px;white-space:nowrap;font-weight:400;border-bottom:1px solid var(--line-soft)}td{padding:13px 17px;border-bottom:1px solid var(--line-soft);font-size:12px;vertical-align:middle}tr:last-child td{border-bottom:0}tbody tr:hover{background:#f7f8f2}td strong{font-size:12px;font-weight:550;display:block;color:#30382b}td small{font-size:10px;color:var(--muted);display:block;margin-top:3px}.number{font-variant-numeric:tabular-nums;font-family:var(--mono);font-size:11px}.right{text-align:right}.mono{font-family:var(--mono)}.muted{color:var(--muted)}.nowrap{white-space:nowrap}.status{display:inline-flex;align-items:center;gap:5px;font-size:10px;padding:3px 7px;border-radius:4px;font-weight:500;white-space:nowrap;background:#eef0e7;color:#636d57;border:1px solid transparent}.status .dot{width:4px;height:4px;margin:0}.status.green{background:var(--green-soft);color:var(--green)}.status.amber{background:var(--amber-soft);color:var(--amber)}.status.violet{background:var(--violet-soft);color:var(--violet-ink)}.status.red{background:var(--red-soft);color:var(--red)}.status.grey{background:#edeee9;color:#697061}.table-arrow .icon{width:16px;height:16px;color:#8f9683}.supplier-cell{display:flex;align-items:center;gap:10px}.supplier-initial{width:29px;height:29px;display:grid;place-items:center;background:#edeee3;border:1px solid #e0e3d4;border-radius:5px;color:#788164;font:10px var(--mono)}.opportunity-item{padding:16px 18px;border-bottom:1px solid var(--line-soft);display:flex;align-items:flex-start;gap:12px}.opportunity-item:last-child{border-bottom:0}.opportunity-symbol{background:var(--green-soft);color:var(--green);padding:6px;border-radius:5px;margin-top:2px}.opportunity-symbol .icon{width:16px;height:16px}.opportunity-item h3{font-size:12px;font-weight:550;margin:0 0 4px}.opportunity-item p{font-size:10px;color:var(--muted);margin:0}.opportunity-saving{font:12px var(--mono);color:var(--green);margin-left:auto;white-space:nowrap;padding-top:2px}.opportunity-saving small{display:block;font:9px var(--sans);color:#83917c;margin-top:3px;text-align:right}.mini-bars{display:flex;align-items:flex-end;gap:5px;height:84px;padding:6px 0}.mini-bars .bar-wrap{flex:1;display:flex;height:100%;align-items:flex-end}.mini-bars .bar{background:#b5bf9e;width:100%;min-height:2px;border-radius:3px 3px 0 0;transition:background var(--fast)}.mini-bars .bar-wrap:last-child .bar{background:var(--coral)}.mini-bars .bar:hover{background:#899774}.chart-labels{display:flex;justify-content:space-between;font:9px var(--mono);color:#939a88;margin-top:8px}.vendor-row{display:grid;grid-template-columns:125px 1fr 70px;gap:10px;align-items:center;font-size:10px;margin:12px 0}.vendor-track{height:5px;background:#ebeee2;border-radius:2px;overflow:hidden}.vendor-fill{background:#a0b090;height:100%;border-radius:2px}.vendor-row:nth-child(2) .vendor-fill{background:#c1ab83}.vendor-row:nth-child(3) .vendor-fill{background:#b4afc9}.vendor-row:nth-child(4) .vendor-fill{background:#c2c7b6}.attention-row{display:flex;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid var(--line-soft)}.attention-row:last-child{border:0}.attention-row .icon{color:var(--amber);width:17px;height:17px}.attention-row p{margin:0;font-size:12px}.attention-row small{font-size:10px;color:var(--muted)}.attention-row a{margin-left:auto}.workspace-footer{display:flex;justify-content:space-between;font:9px var(--mono);letter-spacing:.5px;color:#939987;margin-top:28px;gap:14px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}.tabs{display:flex;gap:3px;align-items:center;flex-wrap:wrap}.tab{border:1px solid transparent;border-radius:5px;background:transparent;padding:8px 11px;font-size:11px;color:var(--muted);display:inline-flex;align-items:center;gap:7px}.tab.active{background:var(--paper);border-color:var(--line);color:var(--ink);box-shadow:0 1px 2px #00000004}.tab:hover{color:var(--ink)}.tab .label-number{font-size:9px}.search-form{display:flex;align-items:center;gap:7px}.search-input{background:var(--paper);border:1px solid var(--line);border-radius:5px;padding:9px 11px;min-width:240px;font-size:11px}.filter-select{background:var(--paper);border:1px solid var(--line);border-radius:5px;padding:8px 10px;color:var(--ink);font-size:11px;max-width:240px}.empty{text-align:center;padding:49px 22px}.empty .empty-icon{color:#8b967d;border:1px solid var(--line);background:#f2f4e9;border-radius:9px;padding:12px;display:inline-block}.empty h3{font:23px var(--serif);margin:14px 0 7px}.empty p{font-size:12px;color:var(--muted);max-width:400px;margin:0 auto 17px;line-height:1.65}.callout{padding:12px 15px;border:1px solid #d7ddcb;background:#eff2e7;color:#59634d;border-radius:5px;font-size:11px;margin-bottom:17px;line-height:1.65}.callout.amber{background:#fbf2df;border-color:#eadbc0;color:#866123}.callout.violet{background:var(--violet-soft);border-color:#dcd5f2;color:var(--violet-ink)}.callout.error{background:var(--red-soft);border-color:#edc4bb;color:var(--red)}.callout .icon{width:15px;height:15px;margin-right:5px}.section-gap{margin-top:20px}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.offer-card{padding:21px;background:var(--paper);border:1px solid var(--line);border-radius:7px}.offer-card h3{font-size:14px;line-height:1.4;margin:14px 0 4px;font-weight:550}.offer-card .meta{font:9px var(--mono);color:#8d9581;letter-spacing:.5px}.offer-compare{display:flex;gap:17px;padding:18px 0;align-items:center}.offer-compare .old{font:17px var(--mono);color:#858d78}.offer-compare .new{font:22px var(--mono);color:var(--green);letter-spacing:-1px}.offer-compare small{display:block;font:9px var(--sans);color:#919985;margin-top:4px}.offer-card .evidence{font-size:10px;color:var(--muted);padding-top:11px;border-top:1px solid var(--line-soft);margin-bottom:16px;line-height:1.9}.evidence a{text-decoration:underline;text-underline-offset:3px}.subnav{display:flex;gap:4px;margin:-7px 0 24px;border-bottom:1px solid var(--line);padding-bottom:10px;flex-wrap:wrap}.subnav .tab.active{background:transparent;border-color:transparent;color:var(--ink);box-shadow:0 2px var(--coral)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid.three{grid-template-columns:repeat(3,1fr)}.field{display:flex;flex-direction:column;gap:5px;font-size:11px;color:#626c58}.field.full{grid-column:1/-1}.field input,.field select,.field textarea{padding:9px 10px;border:1px solid #d7ddce;border-radius:4px;background:#fffefb;color:var(--ink);width:100%;min-width:0;font-size:12px}.field textarea{resize:vertical;min-height:80px;line-height:1.6}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #c9c1f0;outline-offset:1px;border-color:#a69ccd}.field small{font-size:10px;color:#8d9580}.checkbox{display:flex;align-items:flex-start;gap:9px;font-size:11px;color:#646f59;cursor:pointer;line-height:1.65}.checkbox input{accent-color:var(--green);width:15px;height:15px;margin:2px 0;flex-shrink:0}.review-layout{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(410px,1.35fr) 218px;gap:16px;align-items:start}.review-source{position:sticky;top:17px}.source-preview{height:555px;overflow:auto;background:#e7e9e0;padding:17px}.source-preview iframe{width:100%;height:520px;border:0;background:white}.source-preview img{max-width:100%;height:auto;display:block;margin:auto;box-shadow:var(--shadow)}.source-preview pre{white-space:pre-wrap;word-break:break-word;font:11px/1.8 var(--mono);background:white;padding:20px;min-height:460px;margin:0}.source-sheet{padding:25px 19px 30px;background:white;box-shadow:0 1px 8px #17191814;min-height:420px;font-size:9px;color:#535d4d}.source-sheet .doc-brand{font:14px var(--serif);color:#283323;line-height:1.3;max-width:180px}.source-sheet .doc-tag{font:6px var(--mono);color:#9aa190;margin-top:6px;letter-spacing:1px}.source-sheet h2{font:24px var(--serif);margin:28px 0 13px;color:#33412d}.source-sheet .doc-meta{display:flex;justify-content:space-between;margin:4px 0;font:8px var(--mono)}.source-sheet table{margin-top:23px}.source-sheet th{background:#f6f7f1;font-size:6px;padding:7px 3px}.source-sheet td{font-size:8px;padding:10px 3px}.source-sheet .doc-total{border-top:1px solid #8c987e;display:flex;justify-content:space-between;margin-top:12px;padding:13px 0;font-size:12px;font-weight:600}.source-sheet .doc-watermark{color:#a7af9e;font:7px var(--mono);margin-top:34px;text-align:center;letter-spacing:1.2px}.source-meta{font-size:9px;color:#8a927e;padding:10px 15px;overflow-wrap:anywhere}.review-panel .panel-body{padding:16px}.line-card{border:1px solid var(--line);border-radius:6px;padding:13px;margin-bottom:12px;background:#fffefa;scroll-margin-top:20px;transition:box-shadow var(--fast)}.line-card.held{background:#f5f3ed;opacity:.9}.line-card:focus-within{box-shadow:0 0 0 2px #7669ed20}.line-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font:9px var(--mono);letter-spacing:1px;color:#899178}.line-head .actions{gap:2px}.line-head .icon-btn{width:26px;height:25px}.line-head .icon-btn .icon{width:13px;height:13px}.line-card .field{font-size:10px}.line-card .field input,.line-card .field select{font-size:11px;padding:8px}.line-fields{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:9px;margin:11px 0}.unit-math{background:#f2f5eb;border:1px solid #e4e9d9;border-radius:4px;display:flex;align-items:center;justify-content:space-between;padding:7px 9px;margin:10px 0;font-size:10px;color:#68745a}.unit-math b{font:11px var(--mono);color:#4c6540}.line-footer{display:flex;justify-content:space-between;gap:8px;align-items:center}.line-footer .checkbox{font-size:10px}.line-footer .subtle-link{font-size:9px}.review-aside{position:sticky;top:17px}.review-aside .panel-head{padding:14px}.review-aside .panel-body{padding:14px}.readiness-number{font:33px var(--serif);line-height:1;margin-bottom:8px}.readiness-label{font-size:11px;color:var(--muted)}.issue-list{list-style:none;padding:0;margin:16px 0 0}.issue-list li{padding:9px 0;border-top:1px solid var(--line-soft);font-size:10px;color:#837140;line-height:1.6}.issue-list button{font-size:10px;line-height:1.6;border:0;background:transparent;color:inherit;text-align:left;padding:0}.issue-list button:hover{text-decoration:underline}.progress-steps{list-style:none;padding:0;margin:0}.progress-steps li{display:flex;gap:9px;align-items:center;font-size:10px;color:#8c957f;margin:13px 0}.progress-steps li.done{color:var(--green)}.progress-steps .step{width:17px;height:17px;display:grid;place-items:center;border:1px solid #d4dcc8;border-radius:50%;font:8px var(--mono)}.progress-steps li.done .step{background:#e6efdd;border-color:#cadbb8}.review-savebar{position:sticky;bottom:12px;background:#fffefbef;border:1px solid #ced5c1;box-shadow:0 6px 25px #17191812;border-radius:6px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:15px;backdrop-filter:blur(8px);z-index:10}.save-state{font-size:10px;color:var(--muted)}.save-state.dirty{color:var(--amber)}.mobile-review-tabs{display:none;margin-bottom:14px}.audit-item{font-size:10px;line-height:1.6;padding:9px 0;border-bottom:1px solid var(--line-soft)}.audit-item b{font-weight:500;color:#67725a}.audit-item small{display:block;color:#98a08b;font:8px var(--mono);margin-top:3px}.split{display:flex;justify-content:space-between;align-items:center;gap:10px}.history-chart{width:100%;height:160px;color:var(--green);display:block}.history-chart polyline{stroke:currentColor;stroke-width:2;fill:none}.history-chart circle{fill:var(--paper);stroke:currentColor;stroke-width:2}.stat-inline{display:flex;gap:36px;flex-wrap:wrap;margin:8px 0 19px}.stat-inline b{display:block;font:28px var(--serif);margin-top:5px}.stat-inline small{font-size:10px;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:11px;background:var(--paper);color:var(--ink);padding:0;width:min(600px,calc(100% - 32px));max-height:90vh;box-shadow:0 30px 110px #17191838;overflow:auto}dialog[open]{animation:dialog-in var(--panel) ease-out}dialog::backdrop{background:#17191866;backdrop-filter:blur(3px)}.modal-head{padding:23px 25px 17px;display:flex;align-items:flex-start;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line-soft)}.modal-head h2{font:28px var(--serif);letter-spacing:-.7px;margin:6px 0 4px;font-weight:400}.modal-head p{font-size:12px;color:var(--muted);margin:0}.modal-body{padding:23px 25px}.modal-foot{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:16px 25px;border-top:1px solid var(--line-soft);background:#f8f8f1}.upload-types{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:17px}.upload-type{padding:13px 8px;border:1px solid var(--line);border-radius:5px;background:var(--paper);text-align:center;font-size:11px;color:var(--muted)}.upload-type .icon{display:block;margin:0 auto 7px;width:20px;height:20px}.upload-type.selected{border-color:#e1a891;background:var(--coral-soft);color:#9a4932}.drop-zone{border:1.5px dashed #bbc4ac;border-radius:7px;background:#f5f7ed;text-align:center;padding:27px 17px;margin-bottom:15px;display:block;cursor:pointer;position:relative}.drop-zone.drag-over{border-color:var(--coral);background:var(--coral-soft)}.drop-zone .icon{width:29px;height:29px;color:#8c9b7a;margin-bottom:8px}.drop-zone strong{display:block;font-size:13px;color:#586b48;font-weight:500}.drop-zone small{font-size:10px;color:#849377;display:block;margin-top:4px}.drop-zone input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}.upload-file{border:1px solid var(--line);padding:10px;border-radius:5px;font-size:11px;display:flex;align-items:center;gap:9px;margin:6px 0}.upload-file .file-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-progress{font-size:11px;margin:10px 0;color:var(--green)}.templates{display:flex;gap:14px;flex-wrap:wrap;margin:12px 0 19px;font-size:10px}.templates a{text-decoration:underline;color:#7e876f;text-underline-offset:3px}.modal-divider{border:0;border-top:1px solid var(--line);margin:20px 0}.inline-error{color:var(--red);background:var(--red-soft);padding:10px;border:1px solid #efd2ca;border-radius:4px;font-size:11px;margin-bottom:14px}.pip-dialog{inset:0 0 0 auto;margin:0;width:430px;height:100dvh;max-height:100dvh;border:0;border-left:1px solid #d5cfe5;border-radius:0;display:none;flex-direction:column;background:#faf9f6}.pip-dialog[open]{display:flex;animation:pip-in var(--panel) ease-out}.pip-head{padding:23px;border-bottom:1px solid #e4dfed;display:flex;align-items:center;gap:11px;background:#f1eef8}.pip-symbol{width:35px;height:35px;display:grid;place-items:center;background:#e4def9;color:var(--violet-ink);border-radius:7px}.pip-head h2{font:24px var(--serif);margin:0}.pip-head small{font:9px var(--mono);color:#9386ad;display:block;margin-top:4px}.pip-head .icon-btn{margin-left:auto}.pip-messages{padding:23px;overflow:auto;flex:1}.pip-welcome{font:26px/1.3 var(--serif);letter-spacing:-.5px;margin:9px 0 12px;color:#534969}.pip-intro{font-size:12px;color:#8a8195;line-height:1.75;margin:0 0 20px}.pip-chip{display:block;width:100%;text-align:left;border:1px solid #e0d9ed;background:#fffefd;border-radius:5px;padding:11px 12px;font-size:11px;color:#685a7c;margin:7px 0}.pip-chip:hover{background:#eee9f7}.pip-user{background:#ece7f6;border:1px solid #e0d5ed;border-radius:7px;padding:12px 14px;font-size:12px;color:#6d5d84;margin:19px 0 12px}.pip-answer{font-size:12px;line-height:1.85;color:#676b60;margin:0 0 20px}.pip-answer h3{font-size:13px;color:#3f4838;margin:12px 0 6px}.pip-answer p{margin:7px 0}.pip-sources{border-top:1px solid var(--line);padding-top:10px;margin-top:13px}.pip-sources a{display:block;font-size:10px;color:var(--violet-ink);padding:5px 0;text-decoration:underline;text-underline-offset:3px}.pip-engine{font:8px var(--mono);color:#92869f;letter-spacing:.5px;margin-top:10px}.pip-form{padding:17px 19px 12px;border-top:1px solid var(--line);background:var(--paper)}.pip-input-row{display:flex;gap:8px}.pip-input-row textarea{border:1px solid #dcd4e8;background:#fdfcf9;border-radius:5px;min-height:44px;height:44px;max-height:130px;resize:vertical;padding:10px;width:100%;font-size:12px}.pip-form small{display:block;font-size:9px;color:#9a91a3;margin-top:8px;text-align:center}.toasts{position:fixed;bottom:24px;right:24px;z-index:100;display:flex;flex-direction:column;gap:8px;max-width:400px;pointer-events:none}.toast{background:var(--rail);border:1px solid #333b2f;color:#f5f7ee;border-radius:7px;padding:13px 17px;font-size:12px;box-shadow:0 7px 30px #17191822;animation:dialog-in var(--panel);pointer-events:auto}.toast.error{background:#752f29;border-color:#8d453d}.toast small{display:block;margin-top:5px;color:#cad2bf}.boot{height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--muted)}.boot-mark{font:60px var(--serif);color:var(--rail)}.boot-mark span{color:var(--coral)}.boot p{font-size:13px}.boot small{font-size:10px}.loading{padding:80px;text-align:center;color:var(--muted);font-size:12px}.search-results{max-height:400px;overflow:auto}.search-result{padding:13px 0;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line-soft)}.search-result:hover{color:var(--violet-ink)}.search-result small{display:block;color:var(--muted);font-size:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.details{font-size:11px;line-height:1.8}.details summary{cursor:pointer;color:var(--muted)}.details pre{font-size:10px;white-space:pre-wrap;overflow-wrap:anywhere}.setting-row{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:19px 0;border-bottom:1px solid var(--line-soft)}.setting-row:first-child{padding-top:0}.setting-row:last-child{border:0;padding-bottom:0}.setting-row h3{font-size:12px;margin:0 0 5px;font-weight:550}.setting-row p{font-size:11px;color:var(--muted);margin:0;max-width:540px}.code{font:11px var(--mono);background:#eff1e7;border:1px solid #e1e6d6;padding:10px 12px;border-radius:4px;display:block;white-space:pre-wrap;word-break:break-word;margin:10px 0}.pagination{display:flex;align-items:center;justify-content:space-between;padding:12px 17px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.bad-row{background:#fff4ee}.hold-reason{margin-top:9px}.hidden{display:none!important}.full-width{width:100%}.row-gap{margin-bottom:13px}.badge-count{font:10px var(--mono);color:#878f79}.app-error{padding:25px;background:var(--paper);border:1px solid #e6c4b8;border-radius:7px}.app-error h2{font:28px var(--serif)}.app-error p{font-size:12px;color:var(--red)}@keyframes dialog-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes pip-in{from{opacity:.5;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}
@media(min-width:1650px){:root{--sidebar:246px}.sidebar{padding-left:21px;padding-right:21px}.canvas{padding:38px 43px}.review-layout{grid-template-columns:minmax(310px,1fr) minmax(480px,1.35fr) 245px}.hero-layout h1{font-size:51px}.hero-layout{margin-bottom:33px}.metric{padding:21px}.metric-value{font-size:33px}}
@media(max-width:1250px){:root{--sidebar:204px}.sidebar{padding-left:13px;padding-right:13px}.canvas{padding:25px 23px}.topbar{padding:0 24px}.review-layout{grid-template-columns:minmax(250px,.8fr) minmax(400px,1.3fr)}.review-aside{grid-column:2;position:static;display:grid;grid-template-columns:1fr 1fr;gap:14px}.review-aside .section-gap{margin:0}.hero-layout h1{font-size:39px}.grid-two{grid-template-columns:minmax(0,1.3fr) minmax(290px,1fr)}.cards-grid{grid-template-columns:repeat(2,1fr)}.metric{padding:14px}.metric-value{font-size:26px}td,th{padding-left:12px;padding-right:12px}.top-search span.label{display:none}}
@media(max-width:1000px){.grid-two,.grid-half{grid-template-columns:1fr}.hero-layout{grid-template-columns:1fr}.ai-callout{display:none}.metric-grid{grid-template-columns:repeat(2,1fr)}.review-layout{grid-template-columns:1fr}.review-source{position:static}.review-aside{grid-column:auto}.source-preview{height:420px}.source-preview iframe{height:390px}.mobile-review-tabs{display:flex}.review-layout[data-mobile-tab=review] .review-source{display:none}.review-layout[data-mobile-tab=source] .review-editor,.review-layout[data-mobile-tab=source] .review-aside{display:none}.top-actions{gap:7px}.search-input{min-width:180px}.page-heading h1{font-size:33px}.page-heading{gap:15px}}
@media(max-width:720px){:root{--sidebar:0px}.sidebar{width:235px;transform:translateX(-100%);transition:transform var(--panel);box-shadow:20px 0 80px #17191822}.app-layout.nav-open .sidebar{transform:translateX(0)}.mobile-toggle{display:inline-grid}.app-layout.nav-open::after{content:'';position:fixed;inset:0;background:#17191855;z-index:25}.topbar{height:58px;padding:0 14px}.breadcrumb{font-size:9px;gap:8px}.breadcrumb .brand-crumb{display:none}.top-actions{gap:3px}.top-search{gap:3px}.top-search .keycap{display:none}.topbar .icon-btn{width:34px}.canvas{padding:24px 16px 28px;min-height:calc(100vh - 58px)}.demo-notice{font-size:10px;align-items:flex-start;gap:7px;padding:9px;margin-bottom:21px}.demo-notice .tag{font-size:8px;padding-right:7px;white-space:nowrap;margin-top:2px}.demo-notice button{font-size:10px;white-space:nowrap}.hero-layout h1{font-size:39px}.hero-layout .eyebrow{font-size:9px}.hero-layout p{font-size:12px}.hero-caption{font-size:8px;margin-top:14px}.page-heading{display:block;margin-bottom:20px}.page-heading h1{font-size:32px}.page-heading .actions{padding-top:15px}.metric-grid{gap:9px;margin-bottom:19px}.metric{padding:13px 12px}.metric-value{font-size:26px;margin:10px 0 6px}.metric-label{font-size:10px!important}.metric-label .icon{display:none}.metric-foot{font-size:9px}.grid-two,.grid-half{gap:16px}.panel-head{padding:14px}.panel-body{padding:15px}.panel-head h2{font-size:12px}.panel-foot{padding:11px 14px}.cards-grid{grid-template-columns:1fr}.page-heading .actions .btn{min-height:40px}.toolbar{align-items:flex-start}.search-form{width:100%}.search-input{flex:1;min-width:0}.tabs{gap:1px}.tab{padding:8px;font-size:10px;min-height:36px}.filter-select{max-width:100%}.workspace-footer{font-size:8px;flex-direction:column;gap:7px}.btn{min-height:40px}.btn.small{min-height:34px}.review-aside{grid-template-columns:1fr}.review-savebar{bottom:8px;flex-wrap:wrap}.review-savebar .actions{margin-left:auto}.form-grid.three{grid-template-columns:1fr 1fr}.form-grid{gap:11px}.review-panel .panel-body{padding:13px}.source-sheet{max-width:365px;margin:auto}.review-source{width:100%}.modal-head,.modal-body{padding:20px}.modal-foot{padding:15px 20px}.pip-dialog{width:100%;max-width:100%}.toasts{right:14px;left:14px;bottom:17px;max-width:none}.stat-inline{gap:25px}.setting-row{display:block}.setting-row .btn,.setting-row .status{margin-top:12px}.top-currency{max-width:68px}.line-footer{align-items:flex-start}.line-footer .subtle-link{font-size:9px;max-width:95px}.upload-type{font-size:10px}.source-preview{padding:13px}.breadcrumb .sep:first-of-type{display:none}.metric-value span{font-size:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Notifications remain dismissible and do not cover the mobile review controls. */
.toast{display:flex;align-items:flex-start;gap:12px}.toast-close{flex-shrink:0;border:0;background:transparent;color:inherit;padding:0 3px;line-height:1.2;font-size:20px}.toast span{flex:1}@media(max-width:720px){.toasts{top:68px;bottom:auto}.toast-close{min-width:30px;min-height:30px}}

/* Public single-operator sign-in keeps the boot layout, with a compact form. */
.login-boot{align-items:center;text-align:center}.login-boot form{display:grid;gap:12px;width:min(330px,82vw);margin-top:22px;text-align:left}.login-boot form .field{margin:0}.login-boot .inline-error{margin:0}.login-boot small{display:block;margin-top:16px}
