:root { --page:#f3effa; --surface:#fff; --soft:#f8f7fb; --ink:#121021; --muted:#6e6a8b; --border:#d4c5e6; --brand:#5935e9; --brand-soft:#e9e5f9; --navy:#0e092d; --success:#08775b; --warning:#a75b00; --danger:#c83118; font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--ink); background:var(--page); }
*{box-sizing:border-box} body{margin:0;min-width:760px;background:var(--page)} button,select{font:inherit;color:inherit} button{cursor:pointer} button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid rgba(89,53,233,.35);outline-offset:2px}.visually-hidden{position:absolute;clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;white-space:nowrap;width:1px}
.review-toolbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 24px;border-bottom:1px solid var(--border);background:rgba(255,255,255,.96);backdrop-filter:blur(16px)}.review-brand{display:grid;gap:3px}.review-brand span{color:var(--brand);font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.review-brand strong{font-size:15px}.review-controls{display:flex;align-items:end;gap:9px}.review-controls label{display:grid;gap:4px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.review-controls select,.button{min-height:34px;border:1px solid var(--border);border-radius:999px;background:var(--surface);padding:0 12px;font-size:11px;font-weight:700}.notes-toggle{display:flex!important;grid-auto-flow:column;align-items:center;min-height:34px;border:1px solid var(--border);border-radius:999px;padding:0 11px}.notes-toggle input{accent-color:var(--brand)}.button.quiet{background:var(--surface)}.button.primary{border-color:var(--navy);background:var(--navy);color:white}.button.destructive{border-color:var(--danger);background:var(--danger);color:#fff}.button.link{min-height:24px;border:0;background:transparent;padding:0;color:var(--brand);font-weight:700}.button.destructive.link{background:transparent;color:var(--danger)}.button.icon{width:34px;padding:0;border:0;background:transparent;font-size:15px}.state-pills{display:flex;gap:8px;overflow-x:auto;padding:12px 24px 0}.state-pill{white-space:nowrap;border:1px solid var(--border);border-radius:999px;background:var(--surface);padding:8px 11px;font-size:11px;font-weight:700}.state-pill.active{border-color:var(--navy);background:var(--navy);color:#fff}
.prototype-layout{display:grid;grid-template-columns:minmax(700px,1fr) 350px;gap:18px;align-items:start;padding:18px 24px 48px}.odia-app{min-height:780px;overflow:hidden;border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:0 10px 30px rgba(31,21,65,.10)}.app-header{display:flex;align-items:center;gap:18px;height:56px;padding:0 20px;border-bottom:1px solid var(--border)}.brand-mark{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;background:var(--navy);color:white;font-family:Georgia,serif;font-size:18px;font-weight:bold}.app-search{width:min(420px,50%);border-radius:999px;background:var(--soft);padding:9px 13px;color:var(--muted);font-size:12px}.app-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.app-actions button{border:0;background:transparent;font-size:18px}.avatar{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--brand-soft);font-size:9px;font-weight:800}.journey-header{padding:18px 22px 14px}.journey-header p{margin:0 0 5px;color:var(--muted);font-size:11px}.journey-header h1{display:inline;margin:0;font-size:22px;letter-spacing:-.025em}.journey-header div span{margin-left:9px;color:var(--muted);font-size:12px}.journey-tabs{display:flex;gap:20px;padding:0 22px;border-bottom:1px solid var(--border)}.journey-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;padding:10px 0;color:var(--muted);font-size:11px;font-weight:700}.journey-tabs button.active{border-color:var(--brand);color:var(--ink)}.screen-root{padding:18px;background:var(--soft);min-height:650px}
.financials{display:grid;gap:15px}.financials-top{display:flex;align-items:end;justify-content:space-between;gap:18px}.back-link{border:0;background:none;padding:0;color:var(--muted);font-size:11px}.financials-top h2{margin:5px 0 2px;font-size:17px}.financials-top p{margin:0;color:var(--muted);font-size:11px}.cost-summary{display:flex;gap:8px}.cost-summary span{display:grid;gap:3px;min-width:130px;border-radius:12px;background:var(--brand-soft);padding:9px 11px;color:var(--muted);font-size:10px}.cost-summary strong{color:var(--ink);font-size:14px}.workspace{display:grid;grid-template-columns:minmax(360px,1fr) minmax(300px,390px);gap:14px;align-items:start}.services-panel,.invoice-rail{background:var(--surface)}.services-panel{min-height:490px}.services-panel header,.rail-heading{display:flex;align-items:start;justify-content:space-between;gap:12px;padding:4px 0 14px}.services-panel h2,.rail-heading h2{margin:0;font-size:14px}.services-panel p,.rail-heading p{margin:4px 0 0;color:var(--muted);font-size:11px}.service-count,.rail-heading h2 span{border-radius:999px;background:var(--brand-soft);padding:3px 7px;color:var(--muted);font-size:10px;font-weight:700}.service-head,.service-row{display:grid;grid-template-columns:minmax(145px,1fr)70px 74px 72px;align-items:center;gap:9px}.service-head{border-bottom:1px solid var(--border);padding:8px 10px;color:var(--muted);font-size:10px;font-weight:800}.service-head span:not(:first-child){text-align:right}.service-row{min-height:66px;border-bottom:1px solid rgba(212,197,230,.7);padding:8px 10px;font-size:11px}.service-row.target{background:#f3f0ff}.service-row span:first-child{display:grid;gap:3px;min-width:0}.service-row small{color:var(--muted)}.service-row>span:not(:first-child){text-align:right}.status{justify-self:end;border-radius:999px;padding:4px 6px;font-size:9px;font-weight:700}.status.neutral{background:var(--soft);color:var(--muted)}.selection-bar{display:flex;align-items:center;gap:8px;margin:0 0 9px;border-radius:10px;background:var(--brand-soft);padding:9px 10px;font-size:10px}.selection-bar span{color:var(--brand);font-weight:800}.selection-bar .button{margin-left:auto}.inline-help{padding:11px 10px!important;color:var(--muted);font-size:11px}
.invoice-rail{min-height:490px;padding:0 14px 14px}.list-rail{padding-top:4px}.invoice-list{border-top:1px solid var(--border)}.invoice-row{display:grid;grid-template-columns:26px minmax(0,1fr)102px;align-items:center;width:100%;gap:8px;border:0;border-bottom:1px solid var(--border);background:transparent;padding:12px 2px;text-align:left}.invoice-row:hover,.invoice-row.selected{background:var(--soft)}.file-icon{display:grid;place-items:center;width:23px;height:25px;border-radius:7px;background:var(--brand-soft);color:var(--brand);font-size:13px}.invoice-row-copy,.invoice-total{display:grid;gap:3px;min-width:0}.invoice-row-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.invoice-row-copy small,.reference{overflow:hidden;color:var(--muted);font-size:9px;white-space:nowrap}.invoice-total{text-align:right}.invoice-total strong{font-size:11px}.rail-detail-header{display:flex;align-items:start;justify-content:space-between;padding:8px 0 12px}.rail-detail-header h2{margin:5px 0 3px;font-size:14px}.rail-detail-header p{margin:0;color:var(--muted);font-size:10px}.detail-actions{display:flex}.document-toolbar{display:grid;grid-template-columns:25px minmax(0,1fr)auto;align-items:center;gap:8px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:9px 0}.document-toolbar span:nth-child(2){display:grid;gap:2px;min-width:0}.document-toolbar strong{font-size:11px}.document-toolbar small{overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:9px;white-space:nowrap}.warning-dot{width:9px;height:9px;border-radius:50%;background:var(--warning)}.pdf-preview{display:grid;gap:7px;padding:11px 0}.pdf-sheet{display:grid;min-height:178px;align-content:center;justify-items:center;gap:12px;background:#f5f3f0;color:#625e58;font-size:8px;letter-spacing:.1em}.pdf-sheet b{font-size:20px;letter-spacing:.08em}.pdf-sheet i,.pdf-sheet em{font-style:normal;font-size:9px;letter-spacing:0}.pdf-sheet div{width:65%;border-top:1px solid #c6c0b7}.pdf-preview a,.pdf-error a{color:var(--brand);font-size:10px;font-weight:700;text-decoration:none}.pdf-collapsed{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border);color:var(--muted);font-size:10px}.pdf-error{display:grid;grid-template-columns:25px 1fr;gap:9px;padding:15px 0;border-bottom:1px solid var(--border)}.error-mark,.danger-icon{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#fbe0dc;color:var(--danger);font-weight:900}.pdf-error strong{font-size:11px}.pdf-error p{margin:3px 0 8px;color:var(--muted);font-size:10px;line-height:1.4}.pdf-error-actions{display:flex;gap:10px;align-items:center}.lines-panel{padding-top:13px}.lines-panel header{display:flex;align-items:start;justify-content:space-between;gap:10px;padding-bottom:7px}.lines-panel h3{margin:0;font-size:12px}.lines-panel p{margin:3px 0 0;color:var(--muted);font-size:10px}.lines{border-top:1px solid var(--border)}.line-row{display:grid;grid-template-columns:12px minmax(0,1fr)58px;align-items:start;width:100%;gap:6px;border:0;border-bottom:1px solid rgba(212,197,230,.7);background:transparent;padding:10px 0;text-align:left}.line-row:hover,.line-row.selected{background:var(--soft)}.line-state{width:7px;height:7px;margin-top:4px;border-radius:50%}.line-state.available{background:var(--success)}.line-state.matched{background:var(--brand)}.line-state.elsewhere{background:var(--warning)}.line-copy{display:grid;gap:3px;min-width:0}.line-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.line-copy small{color:var(--muted);font-size:9px}.line-amount{text-align:right;font-size:10px;font-weight:700}.success-notice,.shared-notice{padding:9px 11px;border-radius:10px;background:#e5f8ef;color:var(--success);font-size:11px;font-weight:700}.shared-notice{background:#fff3dc;color:#8a5200}.success-empty{display:grid;gap:6px;justify-items:start;padding:22px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.success-empty strong{font-size:12px}.success-empty p{margin:0;color:var(--muted);font-size:11px}.reviewing{display:flex;align-items:center;gap:10px;padding:15px 0;border-bottom:1px solid var(--border)}.reviewing div{display:grid;gap:4px}.reviewing strong{font-size:11px}.reviewing p{margin:0;color:var(--muted);font-size:10px}.reviewing .button{margin-left:auto}.spinner{width:18px;height:18px;border:2px solid var(--brand-soft);border-top-color:var(--brand);border-radius:50%}.nested-list{margin-top:11px}
.dialog-backdrop{position:fixed;inset:0;z-index:10;display:grid;place-items:center;background:rgba(14,9,45,.32);padding:20px}.delete-dialog{width:min(370px,90vw);display:grid;justify-items:start;gap:11px;border-radius:16px;background:#fff;padding:22px;box-shadow:0 20px 55px rgba(14,9,45,.25)}.delete-dialog h2{margin:0;font-size:18px}.delete-dialog p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.delete-dialog p strong{color:var(--ink)}.delete-dialog .shared-warning{border-radius:9px;background:#fff3dc;padding:8px;color:#8a5200}.delete-dialog>div:last-child{display:flex;justify-content:flex-end;gap:8px;width:100%;margin-top:3px}
.review-notes{position:sticky;top:92px;display:grid;gap:14px;max-height:calc(100vh - 112px);overflow:auto;border:1px solid var(--border);border-radius:18px;background:var(--surface);padding:18px;box-shadow:0 10px 30px rgba(31,21,65,.08)}.review-notes[hidden]{display:none}.note-heading{display:flex;justify-content:space-between;gap:8px}.note-heading span{border-radius:999px;padding:4px 7px;background:var(--brand-soft);color:var(--brand);font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.note-heading span+span{background:#e5f8ef;color:var(--success)}.review-notes h2{margin:0;font-size:19px}.review-notes section{border-top:1px solid var(--border);padding-top:11px}.review-notes h3{margin:0 0 5px;font-size:10px;letter-spacing:.06em;text-transform:uppercase}.review-notes p,.review-notes li{margin:0;color:var(--muted);font-size:11px;line-height:1.5}.review-notes ul{display:grid;gap:4px;margin:0;padding-left:16px}.review-notes .question{border:0;border-radius:11px;background:var(--navy);padding:12px}.review-notes .question h3,.review-notes .question p{color:#fff}
.pdf-error-actions{grid-column:1/-1;display:flex;gap:12px;align-items:center;margin-left:34px}.pdf-error-actions a,.pdf-error-actions .button{white-space:nowrap}
@media(max-width:1100px){.review-toolbar{align-items:flex-start;flex-direction:column}.prototype-layout{grid-template-columns:1fr}.review-notes{position:static;max-height:none}.workspace{grid-template-columns:minmax(320px,1fr) 360px}}@media(max-width:850px){body{min-width:0}.review-controls{flex-wrap:wrap}.journey-tabs{overflow:auto}.workspace{grid-template-columns:1fr}.invoice-rail{min-height:auto}.financials-top{align-items:start;flex-direction:column}.cost-summary{width:100%}.cost-summary span{flex:1}}
@media(prefers-reduced-motion:no-preference){button,.state-pill{transition:background-color 160ms ease,color 160ms ease,border-color 160ms ease}}
