:root{--ink:#172235;--muted:#667085;--line:#dce2ea;--surface:#fff;--canvas:#f3f5f8;--brand:#1458d4;--brand-dark:#0d3f9d;--accent:#e7efff;--danger:#b42318;--danger-bg:#fff1f0;--success:#067647;--success-bg:#ecfdf3;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--canvas)}
*{box-sizing:border-box}body{margin:0;background:var(--canvas);line-height:1.5}button,input,select,textarea{font:inherit}a{color:inherit}.admin-header{display:flex;min-height:68px;padding:0 max(22px,calc((100% - 1440px)/2));align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff}.admin-brand{display:flex;gap:10px;align-items:center;text-decoration:none;font-weight:850}.admin-brand span,.login-mark{display:grid;place-items:center;color:#fff;background:var(--brand);font-weight:900}.admin-brand span{width:36px;height:36px;border-radius:10px}.admin-header nav{display:flex;gap:18px;align-items:center}.admin-header nav>a,.link-button{border:0;color:var(--brand-dark);background:transparent;text-decoration:none;font-weight:750;cursor:pointer}.admin-header form{margin:0}.user-chip{padding:7px 11px;border-radius:99px;background:#f1f4f8;color:var(--muted);font-size:.82rem}.admin-shell{width:min(1440px,calc(100% - 32px));margin:0 auto;padding:34px 0 70px}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.page-heading h1{margin:0;font-size:clamp(1.8rem,4vw,2.5rem)}.eyebrow{margin:0 0 5px;color:var(--brand);font-size:.72rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.muted{margin:5px 0 0;color:var(--muted)}.back-link{display:inline-block;margin-bottom:18px;color:var(--brand-dark);font-weight:750;text-decoration:none}.case-heading{align-items:center}.panel,.table-card,.filter-bar{border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 8px 28px rgb(23 34 53/4%)}.filter-bar{display:flex;gap:14px;align-items:end;margin-bottom:18px;padding:18px}.filter-bar label{display:grid;flex:1;gap:5px}.filter-bar label:first-child{flex:2}.filter-bar span,.stack-form label>span{font-size:.82rem;font-weight:750}.filter-bar input,.filter-bar select,.stack-form input,.stack-form select,.stack-form textarea{width:100%;border:1px solid #c6cfda;border-radius:9px;padding:10px 12px;color:var(--ink);background:#fff}.filter-bar input:focus,.filter-bar select:focus,.stack-form input:focus,.stack-form select:focus,.stack-form textarea:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 3px rgb(20 88 212/13%)}.button{display:inline-flex;min-height:42px;padding:9px 15px;align-items:center;justify-content:center;border-radius:9px;text-decoration:none;font-weight:800;cursor:pointer}.button.primary{border:1px solid var(--brand);color:#fff;background:var(--brand)}.button.secondary{border:1px solid #bcc8d9;color:var(--brand-dark);background:#fff}.button.disabled{opacity:.45;cursor:default}.responsive-table{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:15px 18px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}th{color:var(--muted);font-size:.73rem;letter-spacing:.05em;text-transform:uppercase}tbody tr:hover{background:#fafcff}td small,td strong{display:block}td small{margin-top:3px;color:var(--muted)}.row-link{color:var(--brand);font-weight:800;text-decoration:none;white-space:nowrap}.empty{padding:42px;text-align:center;color:var(--muted)}.pagination{display:flex;padding:14px 18px;align-items:center;justify-content:space-between}.pagination>div{display:flex;gap:8px}.badge{display:inline-flex;width:fit-content;padding:5px 9px;border-radius:99px;color:#344054;background:#eef2f6;font-size:.75rem;font-weight:800}.badge.large{padding:8px 13px;font-size:.86rem}.status-received,.status-file_check{color:#175cd3;background:#eff8ff}.status-ai_analyzing,.status-analysis_pending{color:#5925dc;background:#f4f3ff}.status-review_required,.status-needs_more_information,.status-needs_more_images{color:#b54708;background:#fffaeb}.status-ready_for_pricing,.status-approved,.status-delivered{color:#067647;background:#ecfdf3}.status-ai_failed,.status-file_rejected,.status-pricing_error,.status-cancelled{color:#b42318;background:#fef3f2}.detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,.8fr);gap:20px}.main-column,.side-column{display:grid;align-content:start;gap:20px}.panel{padding:24px}.panel h2{margin:0 0 18px;font-size:1.2rem}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.panel-heading h2{margin:0}.panel-heading p{margin:3px 0 0;color:var(--muted)}.panel-heading>span{color:var(--muted);font-size:.8rem}.panel-heading.split{gap:16px;align-items:center}.data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0}.data-grid div{min-width:0}.data-grid dt{color:var(--muted);font-size:.75rem;font-weight:750;text-transform:uppercase}.data-grid dd{margin:4px 0 0;overflow-wrap:anywhere;font-weight:650}.description{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.description h3{margin:0 0 7px;font-size:.9rem}.description p{margin:0;white-space:pre-line}.wheel-admin-list,.analysis-list{display:grid;gap:16px}.wheel-admin-card,.analysis-card{padding:18px;border:1px solid var(--line);border-radius:12px;background:#fbfcfe}.wheel-summary{display:flex;gap:14px;align-items:center;justify-content:space-between}.wheel-summary>div{display:flex;gap:10px;align-items:center}.wheel-summary>span{color:var(--muted);font-size:.86rem}.number{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;color:var(--brand);background:var(--accent);font-weight:850}.wheel-admin-card>p{margin:12px 0;color:var(--muted)}.image-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.image-grid a{display:block;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:#fff;text-decoration:none}.image-grid img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}.image-grid span{display:block;overflow:hidden;padding:7px;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem}.document-list{display:grid;gap:8px}.document-list a{display:flex;gap:10px;padding:10px;border:1px solid var(--line);border-radius:9px;text-decoration:none}.document-list a>span{color:var(--brand);font-weight:900}.document-list strong,.document-list small{display:block;overflow-wrap:anywhere}.document-list small{color:var(--muted)}.stack-form{display:grid;gap:15px}.stack-form label{display:grid;gap:6px}.stack-form textarea{resize:vertical}.stack-form.compact{gap:11px}.check{display:flex!important;grid-template-columns:auto 1fr!important;gap:9px!important;align-items:start}.check input{width:18px!important;height:18px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.notice{margin-bottom:18px;padding:13px 16px;border:1px solid;border-radius:10px}.notice ul{margin:6px 0 0;padding-left:20px}.notice.success{border-color:#abefc6;color:var(--success);background:var(--success-bg)}.notice.error{border-color:#fecdca;color:var(--danger);background:var(--danger-bg)}.timeline{display:grid;gap:0;margin-top:18px}.timeline article{position:relative;padding:0 0 18px 18px;border-left:2px solid var(--line)}.timeline article:before{position:absolute;top:5px;left:-5px;width:8px;height:8px;border-radius:50%;background:var(--brand);content:""}.timeline strong,.timeline time{display:block}.timeline time{color:var(--muted);font-size:.72rem}.timeline p{margin:6px 0 0;white-space:pre-line}.status-timeline strong{font-size:.8rem}.empty-inline{margin:10px 0;color:var(--muted);font-style:italic}.analysis-card header{display:flex;gap:12px;align-items:center;justify-content:space-between}.analysis-card header>div{display:flex;gap:9px;align-items:center}.analysis-card header small{color:var(--muted)}.ai-raw{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:16px}.ai-raw div{padding:10px;border-radius:8px;background:#fff}.ai-raw span,.ai-raw strong{display:block}.ai-raw span{color:var(--muted);font-size:.72rem}.ai-notes{white-space:pre-line}.review-box{margin-top:15px;border-top:1px solid var(--line);padding-top:13px}.review-box summary{color:var(--brand-dark);font-weight:800;cursor:pointer}.review-box form{margin-top:14px}.inline-action{margin:0 0 14px}.sticky-panel{position:sticky;top:16px}.login-page{display:grid;min-height:100vh;padding:20px;place-items:center;background:radial-gradient(circle at top,#e8effc,var(--canvas) 45%)}.login-card{width:min(440px,100%);padding:38px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 22px 60px rgb(23 34 53/12%)}.login-card h1{margin:0;font-size:1.75rem}.login-mark{width:52px;height:52px;margin-bottom:22px;border-radius:14px}.login-card .stack-form{margin-top:24px}
@media(max-width:980px){.detail-grid{grid-template-columns:1fr}.sticky-panel{position:static}.data-grid{grid-template-columns:repeat(2,1fr)}.image-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.admin-header{padding:10px 14px;align-items:flex-start}.admin-header nav{gap:9px;align-items:flex-end;flex-direction:column}.admin-header nav>a,.user-chip{display:none}.admin-shell{width:min(100% - 20px,1440px);padding-top:22px}.filter-bar,.panel-heading.split,.wheel-summary,.analysis-card header,.pagination{align-items:stretch;flex-direction:column}.filter-bar label{width:100%}.data-grid,.two-fields,.ai-raw{grid-template-columns:1fr}.image-grid{grid-template-columns:repeat(2,1fr)}.panel{padding:18px}.table-card{border-radius:12px}th,td{padding:12px}.case-heading{align-items:flex-start;gap:10px;flex-direction:column}.login-card{padding:26px}}
.three-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.notice.warning{border-color:#fedf89;color:#93370d;background:#fffaeb}.badge.warning{color:#b54708;background:#fffaeb}.price-book-active{color:#067647;background:#ecfdf3}.price-book-draft{color:#175cd3;background:#eff8ff}.price-book-archived{color:#475467;background:#f2f4f7}.pricing-admin-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:20px;margin-bottom:20px}.pricing-help ol{display:grid;gap:12px;margin:0;padding-left:22px}.version-tag{color:var(--brand);font-size:.55em}.price-book-actions{display:flex;gap:14px;align-items:center;margin:-8px 0 20px}.price-book-actions form{margin:0}.rules-heading{display:flex;margin:28px 0 14px;align-items:end;justify-content:space-between}.rules-heading h2{margin:0}.rule-list{display:grid;gap:14px}.rule-card header{display:flex;gap:14px;align-items:center;justify-content:space-between}.rule-card header>div{display:flex;gap:9px;align-items:center}.rule-card code{padding:3px 7px;border-radius:6px;color:var(--brand-dark);background:var(--accent);font-size:.76rem}.rule-summary{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:14px}.rule-summary>div{display:grid;align-content:start;gap:5px;padding:13px;border-radius:9px;background:#f8fafc}.rule-summary span{color:var(--muted);font-size:.73rem;font-weight:800;text-transform:uppercase}.rule-summary small{display:block}.rule-editor{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.rule-editor summary,.pricing-input summary,.calculation-history summary{color:var(--brand-dark);font-weight:800;cursor:pointer}.rule-editor .rule-form,.pricing-input form{margin-top:16px}.danger-action{margin:12px 0 0;text-align:right}.link-button.danger{color:var(--danger)}.new-rule-panel{margin-top:18px}.rule-input-group{display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:10px}.rule-input-group h3{margin:0 0 3px;font-size:.92rem}.rule-input-group h3 small{margin-left:5px;color:var(--muted);font-weight:500}.condition-row{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:8px}.action-row{display:grid;grid-template-columns:1.35fr .7fr .7fr 1.2fr;gap:8px}.condition-row input,.condition-row select,.action-row input,.action-row select{min-width:0;width:100%;border:1px solid #c6cfda;border-radius:8px;padding:9px;background:#fff}.calculation-result{overflow:hidden;margin-bottom:18px;border:1px solid #abefc6;border-radius:12px;background:#fcfffd}.calculation-result.failed{border-color:#fecdca;background:#fffafa}.calculation-result>header{display:flex;gap:12px;padding:14px 16px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.calculation-result>header strong,.calculation-result>header small{display:block}.calculation-result>header small,.calculation-result>header>span{color:var(--muted);font-size:.75rem}.calculation-result .notice{margin:15px}.calculation-lines table{font-size:.86rem}.calculation-lines th,.calculation-lines td{padding:10px 13px}.number-cell{text-align:right;white-space:nowrap}.number-cell.negative{color:var(--danger)}.calculation-totals{display:flex;justify-content:flex-end;border-top:1px solid var(--line)}.calculation-totals div{min-width:140px;padding:13px 16px;border-left:1px solid var(--line)}.calculation-totals span,.calculation-totals strong{display:block}.calculation-totals span{color:var(--muted);font-size:.72rem}.calculation-totals .gross{color:#fff;background:var(--brand)}.calculation-flags{display:flex;gap:8px;padding:12px 16px}.pricing-input{padding-top:4px}.pricing-wheel-input{display:grid;gap:11px;margin:0;padding:15px;border:1px solid var(--line);border-radius:11px}.pricing-wheel-input legend{padding:0 7px;color:var(--brand-dark);font-weight:850}.manual-adjustment{padding:14px;border-radius:10px;background:#fffaeb}.calculation-history{margin-top:17px;padding-top:15px;border-top:1px solid var(--line)}.button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:980px){.pricing-admin-grid{grid-template-columns:1fr}.rule-summary{grid-template-columns:1fr}.condition-row,.action-row{grid-template-columns:1fr 1fr}.three-fields{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.admin-header nav>a{display:block}.admin-header .user-chip{display:none}.three-fields,.condition-row,.action-row{grid-template-columns:1fr}.price-book-actions,.rule-card header,.calculation-result>header,.calculation-totals{align-items:stretch;flex-direction:column}.calculation-totals div{border-top:1px solid var(--line);border-left:0}.rule-input-group h3 small{display:block;margin-left:0}}
