:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f6f8ff;color:#07154f;--ink: #07154f;--muted: #5f6b88;--line: #dfe5f7;--panel: #ffffff;--panel-soft: #f8faff;--green: #1663ff;--green-strong: #07154f;--gold: #7c4dff;--red: #a43636;--blue: #10b9e8;--shadow: 0 14px 40px rgba(7, 21, 79, .1)}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.loading-screen,.login-screen{align-items:center;display:flex;min-height:100vh;justify-content:center;padding:24px}.login-screen{background:linear-gradient(135deg,#f8fbff,#edf3ff)}.login-panel{background:#fffffff5;border:1px solid rgba(223,229,247,.95);border-radius:8px;box-shadow:var(--shadow);max-width:440px;padding:28px;width:100%}.brand-lockup{display:block;margin-bottom:26px}.brand-lockup h1,.module-header h1,.panel-header h2,.contract-detail-head h2{letter-spacing:0;margin:0}.brand-lockup p,.module-header p,.contract-detail-head p{color:var(--muted);margin:4px 0 0}.brand-logo{display:block;height:auto;max-width:100%}.version-badge{background:#1f63cf;border-radius:999px;color:#fff;display:inline-flex;font-size:13px;font-weight:900;margin-top:18px;padding:8px 16px}.login-legal-links{border-top:1px solid var(--line);margin-top:18px;padding-top:14px;text-align:center}.login-legal-links a{color:var(--green);font-size:13px;font-weight:800}.legal-copy{display:grid;gap:12px;line-height:1.6;max-width:920px}.legal-copy p{margin:0}.app-shell{display:grid;grid-template-columns:286px minmax(0,1fr);min-height:100vh}.sidebar{background:#07154f;color:#f5faf7;display:flex;flex-direction:column;padding:18px}.sidebar-brand{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:24px}.sidebar-logo{background:#fff;border-radius:8px;height:auto;max-width:158px;padding:6px}.sidebar-brand small{background:#1f63cf;border-radius:999px;color:#fff;font-size:12px;font-weight:900;padding:7px 10px;white-space:nowrap}.sidebar-nav{display:grid;gap:8px}.sidebar-nav a,.icon-text-button,.tenant-chip,.platform-admin-link{align-items:center;border-radius:8px;display:flex;gap:10px}.sidebar-nav a{color:#dfe7ff;padding:11px 12px}.sidebar-nav a.active,.sidebar-nav a:hover{background:#1663ff52;color:#fff}.sidebar-footer{display:grid;gap:10px;margin-top:auto}.tenant-chip{background:#ffffff14;color:#dfe7ff;font-size:13px;padding:10px}.platform-admin-link{border:1px solid rgba(16,185,232,.36);color:#dfe7ff;font-size:13px;justify-content:center;padding:10px}.platform-admin-link.active,.platform-admin-link:hover{background:#10b9e829;color:#fff}.icon-text-button{background:transparent;border:1px solid rgba(255,255,255,.18);color:#fff;justify-content:center;padding:10px}.work-surface{min-width:0}.topbar{align-items:center;background:#ffffffd1;border-bottom:1px solid var(--line);display:flex;justify-content:flex-end;min-height:56px;padding:0 24px;position:sticky;top:0;z-index:5}.topbar div{display:grid;gap:2px;text-align:right}.topbar span{color:var(--muted);font-size:12px}.page-stack{display:grid;gap:18px;padding:24px}.module-header,.panel-header,.contract-detail-head,.action-row{align-items:center;display:flex;justify-content:space-between;gap:14px}.module-header{background:transparent}.eyebrow{color:var(--green);font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px #16211d0d;min-width:0;padding:16px}.panel-header{margin-bottom:14px}.panel-header h2{align-items:center;display:flex;font-size:18px;gap:8px}.panel-header span,.muted{color:var(--muted);font-size:13px}.form-field{display:grid;gap:6px}.form-field span{color:var(--muted);font-size:12px;font-weight:700}.form-field input,.form-field select,.form-field textarea,.search-control,.file-drop{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:40px;outline:none}.form-field input,.form-field select{padding:0 10px}.form-field textarea{min-height:84px;padding:10px;resize:vertical}.login-form,.admin-form,.review-text-form{display:grid;gap:12px}.primary-button,.secondary-button,.danger-button{align-items:center;border:0;border-radius:8px;display:inline-flex;font-weight:800;gap:8px;justify-content:center;min-height:40px;padding:0 14px}.primary-button{background:var(--green);color:#fff}.primary-button:hover{background:var(--green-strong)}.secondary-button{background:#eef4ff;color:var(--green-strong)}.danger-button{background:#f8e9e7;color:var(--red)}.message-banner{border-radius:8px;font-weight:700;padding:12px 14px}.message-error{background:#fbebeb;color:var(--red)}.message-success{background:#e9f7ff;color:var(--green-strong)}.tabs-bar{background:var(--panel);border:1px solid var(--line);border-radius:8px;display:flex;gap:6px;overflow-x:auto;padding:6px}.tabs-bar button{background:transparent;border:0;border-radius:8px;color:var(--muted);flex:0 0 auto;font-weight:800;min-height:36px;padding:0 12px}.tabs-bar button.is-active{background:#eaf1ff;color:var(--ink)}.contracts-grid{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(240px,320px) minmax(0,1fr) minmax(280px,360px)}.contract-list-panel,.side-column{position:sticky;top:76px}.side-column{display:grid;gap:16px}.search-control{align-items:center;display:flex;gap:8px;padding:0 10px}.search-control input{border:0;min-width:0;outline:0;width:100%}.contract-list{display:grid;gap:8px;margin-top:12px;max-height:calc(100vh - 230px);overflow:auto}.contract-list-item{background:var(--panel-soft);border:1px solid transparent;border-radius:8px;color:var(--ink);display:grid;gap:4px;padding:12px;text-align:left}.contract-list-item.is-active{background:#eef4ff;border-color:#9fb9ff}.contract-list-item span,.record-number{color:var(--green);font-size:12px;font-weight:900}.contract-list-item small{color:var(--muted)}.contract-form{display:grid;gap:12px;grid-template-columns:1fr 1fr}.wide-field{grid-column:1 / -1}.file-drop{align-items:center;cursor:pointer;display:flex;gap:10px;min-height:44px;padding:0 12px}.file-drop input{display:none}.meta-grid{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin:16px 0}.meta-grid div,.compact-row{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;padding:10px}.meta-grid span{color:var(--muted);display:block;font-size:12px;margin-bottom:4px}.status-pill{border-radius:999px;font-size:12px;font-weight:900;padding:6px 10px}.status-live{background:#e9f7ff;color:var(--green-strong)}.status-muted{background:#edf0ef;color:var(--muted)}.contract-notes{color:var(--muted)}.subsection{border-top:1px solid var(--line);display:grid;gap:8px;margin-top:16px;padding-top:14px}.subsection h3{margin:0}.compact-row{align-items:center;display:flex;gap:12px;justify-content:space-between}.button-row{color:var(--ink);width:100%}.empty-state{align-items:center;color:var(--muted);display:flex;gap:10px;justify-content:center;min-height:180px}.review-source-grid{align-items:end;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.review-text-form{margin-top:12px}.review-text-form textarea{min-height:120px}.review-workspace{display:grid;gap:8px;overflow-x:auto}.review-grid{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(220px,1fr));min-width:920px}.review-start-grid{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) 340px}.review-grid-head{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.review-grid-head div,.review-cell{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:12px}.review-cell>span{color:var(--green);display:block;font-size:12px;font-weight:900;margin-bottom:8px}.review-cell p{line-height:1.5;margin:0;white-space:pre-wrap}.review-cell textarea,.final-highlight-editor{border:0;min-height:100%;outline:0;resize:vertical;width:100%}.final-highlight-editor{border-radius:6px;cursor:text;line-height:1.5;min-height:130px;padding:2px;white-space:pre-wrap}.final-highlight-editor:focus{box-shadow:0 0 0 2px #1663ff2e}.new-text-highlight{background:#fff3a6;border-radius:3px;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 2px}.ri-cell{border-left:4px solid var(--gold)}.severity-high .ri-cell{border-left-color:var(--red)}.severity-medium .ri-cell{border-left-color:var(--blue)}.admin-grid{align-items:start;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(280px,1fr))}.admin-list-panel{grid-column:1 / -1}.saved-review-list{display:grid;gap:8px;max-height:320px;overflow:auto}.saved-review-item{background:var(--panel-soft);border:1px solid transparent;border-radius:8px;color:var(--ink);display:grid;gap:5px;padding:11px;text-align:left;width:100%}.saved-review-item.is-active{background:#eef4ff;border-color:#9fb9ff}.saved-review-item span,.saved-review-item small{color:var(--muted);font-size:12px}.saved-review-item small{align-items:center;display:flex;gap:5px}.review-title-editor{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;display:grid;gap:6px;padding:12px}.review-title-editor span{color:var(--muted);font-size:12px;font-weight:800}.review-title-editor input{border:0;color:var(--ink);font-size:22px;font-weight:900;outline:0}.generation-grid{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(280px,420px) minmax(0,1fr)}.generation-form{display:grid;gap:12px}.generation-preview textarea{border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:430px;padding:14px;resize:vertical;width:100%}@media(max-width:1180px){.contracts-grid{grid-template-columns:minmax(240px,320px) minmax(0,1fr)}.side-column{grid-column:1 / -1;position:static}}@media(max-width:820px){.app-shell{grid-template-columns:1fr}.sidebar{position:static}.sidebar-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.contracts-grid,.generation-grid,.admin-grid,.meta-grid,.review-start-grid,.review-source-grid{grid-template-columns:1fr}.contract-list-panel{position:static}}
