:root{
  --bg:#f5f5f7;
  --surface:rgba(255,255,255,.88);
  --surface-solid:#fff;
  --surface-2:#f8f8fa;
  --ink:#1d1d1f;
  --ink-soft:#3a3a3c;
  --muted:#737377;
  --muted-2:#98989d;
  --line:rgba(60,60,67,.12);
  --line-strong:rgba(60,60,67,.18);
  --blue:#007aff;
  --blue-soft:#e9f2ff;
  --green:#248a3d;
  --green-soft:#eaf7ee;
  --amber:#a05a00;
  --amber-soft:#fff3df;
  --red:#d70015;
  --red-soft:#ffebed;
  --sidebar:#ececf0;
  --shadow:0 1px 2px rgba(0,0,0,.04),0 10px 34px rgba(0,0,0,.055);
  --shadow-small:0 1px 2px rgba(0,0,0,.035),0 5px 18px rgba(0,0,0,.045);
  --radius:22px;
  --radius-sm:14px;
}

*{box-sizing:border-box}
html{background:var(--bg)}
body{margin:0;color:var(--ink);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",Arial,sans-serif;font-size:14px;line-height:1.4;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button,a,select{-webkit-tap-highlight-color:transparent}
svg{display:block}

.app-shell{min-height:100vh;display:grid;grid-template-columns:258px minmax(0,1fr)}
.sidebar{height:100vh;position:sticky;top:0;padding:18px 14px 14px;border-right:1px solid var(--line);background:rgba(239,239,243,.82);backdrop-filter:blur(30px) saturate(140%);display:flex;flex-direction:column;z-index:20}
.brand{display:flex;align-items:center;gap:11px;padding:6px 8px 24px}
.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#111 0%,#303036 100%);color:#fff;display:grid;place-items:center;box-shadow:0 4px 10px rgba(0,0,0,.14)}
.brand-mark svg{width:23px;height:23px}
.brand strong{display:block;font-size:15px;letter-spacing:-.01em}
.brand span{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.nav{display:flex;flex-direction:column;gap:3px}
.nav-item{min-height:42px;border-radius:12px;padding:0 12px;display:flex;align-items:center;gap:11px;color:#525257;font-weight:560;transition:background .18s ease,color .18s ease,transform .18s ease}
.nav-item svg{width:19px;height:19px;fill:currentColor;opacity:.78}
.nav-item:hover:not(.disabled){background:rgba(255,255,255,.65);color:var(--ink)}
.nav-item.active{background:rgba(255,255,255,.96);color:var(--ink);box-shadow:var(--shadow-small)}
.nav-item.active svg{color:var(--blue);opacity:1}
.nav-item.disabled{opacity:.36;cursor:not-allowed}
.sidebar-spacer{flex:1}
.sidebar-context{margin:0 5px 12px;padding:12px;border:1px solid rgba(255,255,255,.72);background:rgba(255,255,255,.48);border-radius:14px;display:flex;align-items:center;gap:9px}
.context-dot{width:8px;height:8px;border-radius:50%;background:#30d158;box-shadow:0 0 0 4px rgba(48,209,88,.12)}
.sidebar-context strong,.sidebar-context span{display:block}
.sidebar-context strong{font-size:11px;font-weight:650}.sidebar-context span{font-size:10px;color:var(--muted);margin-top:2px}
.profile-row{border-top:1px solid var(--line);padding:14px 7px 3px;display:flex;align-items:center;gap:10px}
.avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(145deg,#d9e8ff,#f3f7ff);display:grid;place-items:center;font-size:10px;font-weight:750;color:#275f9f}
.profile-copy{min-width:0;flex:1}.profile-copy strong,.profile-copy span{display:block}.profile-copy strong{font-size:11px}.profile-copy span{font-size:10px;color:var(--muted);margin-top:2px}

.main{min-width:0}
.topbar{height:66px;position:sticky;top:0;z-index:15;border-bottom:1px solid var(--line);background:rgba(245,245,247,.78);backdrop-filter:blur(28px) saturate(150%);display:flex;align-items:center;justify-content:space-between;padding:0 32px}
.topbar-left,.top-actions{display:flex;align-items:center;gap:10px}.breadcrumb{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;font-weight:550}.breadcrumb-current{color:var(--ink)}.crumb-chevron{width:13px;height:13px;color:var(--muted-2)}
.icon-button{width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:#515156;display:grid;place-items:center;cursor:pointer}.icon-button:hover{background:rgba(0,0,0,.05)}.icon-button svg{width:18px;height:18px;fill:currentColor}.mobile-menu{display:none}
.primary-button,.secondary-button,.filter-button{border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 15px;border-radius:12px;font-weight:650;font-size:12px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.primary-button{background:var(--blue);color:#fff;box-shadow:0 3px 10px rgba(0,122,255,.2)}.primary-button:hover{background:#0874e4;transform:translateY(-1px)}.primary-button svg{width:16px;height:16px}
.primary-button.large,.secondary-button.large{min-height:42px;padding:0 17px;font-size:13px}
.secondary-button{background:rgba(255,255,255,.78);border:1px solid var(--line);color:var(--ink-soft);box-shadow:0 1px 1px rgba(0,0,0,.02)}.secondary-button:hover{background:#fff}
.filter-button{background:#27272a;color:#fff;min-height:40px}
.surface-icon{background:rgba(255,255,255,.8);border:1px solid var(--line)}

.content{max-width:1500px;margin:0 auto;padding:42px 38px 64px}
.hero-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px}.compact-hero{margin-bottom:20px}.hero-row h1,.form-hero h1,.process-titlebar h1{margin:4px 0 5px;font-size:clamp(30px,3.1vw,43px);line-height:1.06;letter-spacing:-.045em;font-weight:720}.compact-hero h1{font-size:38px}.eyebrow,.section-kicker{display:block;text-transform:uppercase;letter-spacing:.085em;font-size:10px;font-weight:730;color:var(--muted)}.lead{margin:0;color:var(--muted);font-size:15px;letter-spacing:-.01em}

.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:22px}.metric-card{background:var(--surface);border:1px solid rgba(255,255,255,.8);border-radius:20px;padding:18px 18px;display:flex;gap:14px;align-items:center;box-shadow:var(--shadow-small);backdrop-filter:blur(10px)}.metric-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;flex:0 0 auto}.metric-icon svg{width:20px;height:20px;fill:currentColor}.soft-blue{background:var(--blue-soft);color:#1476dd}.soft-red{background:var(--red-soft);color:#d62839}.soft-amber{background:var(--amber-soft);color:#b26a00}.soft-green{background:var(--green-soft);color:#298843}.metric-card>div:last-child{min-width:0}.metric-card span,.metric-card small{display:block}.metric-card span{font-size:11px;color:var(--muted)}.metric-card strong{display:block;font-size:25px;letter-spacing:-.04em;margin:2px 0 0}.metric-card small{font-size:10px;color:var(--muted-2);margin-top:2px}

.surface{background:var(--surface);border:1px solid rgba(255,255,255,.92);border-radius:var(--radius);box-shadow:var(--shadow-small);backdrop-filter:blur(10px)}.surface-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:22px 22px 16px}.surface-head h2{font-size:18px;letter-spacing:-.02em;margin:3px 0 0}.surface-head p{margin:3px 0 0;color:var(--muted);font-size:12px}.quiet-link{color:var(--blue);font-size:11px;font-weight:650;white-space:nowrap;margin-top:2px}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(285px,.75fr);gap:16px}.surface-main{overflow:hidden}.process-feed{padding:0 8px 8px}.process-feed-row{display:grid;grid-template-columns:42px minmax(0,1fr) 92px 20px;gap:13px;align-items:center;padding:12px 13px;border-radius:15px;transition:background .15s ease}.process-feed-row:hover{background:rgba(118,118,128,.07)}.method-avatar{width:40px;height:40px;border-radius:12px;background:#efeff4;display:grid;place-items:center;font-size:10px;font-weight:760;color:#4b4b52}.method-cp{background:#eaf3ff;color:#2a6fb6}.method-lc{background:#edf7ef;color:#367a45}.method-si{background:#fff2e5;color:#a35b15}.method-cs{background:#f2edff;color:#6e54a3}.feed-copy{min-width:0}.feed-copy strong,.feed-copy span,.feed-copy small{display:block}.feed-title-line{display:flex;align-items:center;gap:7px}.feed-copy strong{font-size:12px}.feed-copy>span{font-size:11px;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.feed-copy small{font-size:10px;color:var(--muted-2);margin-top:4px}.feed-progress{text-align:right}.feed-progress strong{font-size:11px}.mini-progress{height:4px;background:#ececf0;border-radius:999px;overflow:hidden;margin-top:5px}.mini-progress span,.mini-progress i{display:block;height:100%;border-radius:inherit;background:#38383a}.chevron{width:16px;height:16px;color:#aaaab0}.next-card{min-height:100%}.timeline-item{display:flex;gap:12px;align-items:center;margin:0 14px;padding:13px 8px;border-top:1px solid var(--line)}.timeline-date{width:41px;height:44px;border-radius:12px;background:#f0f0f3;display:grid;place-items:center;align-content:center}.timeline-date strong,.timeline-date span{display:block;text-align:center}.timeline-date strong{font-size:16px;line-height:1}.timeline-date span{font-size:8px;color:var(--muted);margin-top:3px}.timeline-item>div:last-child strong,.timeline-item>div:last-child span{display:block}.timeline-item>div:last-child strong{font-size:11px}.timeline-item>div:last-child span{font-size:10px;color:var(--muted);margin-top:3px}.empty-compact{padding:42px 28px 48px;text-align:center}.empty-orb{width:48px;height:48px;border-radius:50%;background:#f0f0f3;display:grid;place-items:center;margin:0 auto 12px}.empty-orb svg{width:20px;height:20px;fill:#77777b}.empty-compact strong,.empty-compact span{display:block}.empty-compact strong{font-size:12px}.empty-compact span{font-size:10px;color:var(--muted);margin-top:5px}

.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%}.dot-green{background:#30b45a}.dot-yellow{background:#f0a92f}.dot-red{background:#e34753}.dot-done{background:#9c9ca3}

.filter-bar{display:grid;grid-template-columns:minmax(250px,1fr) 190px 170px 190px auto;gap:8px;margin-bottom:14px}.filter-bar input,.filter-bar select,.field-control{width:100%;border:1px solid var(--line);background:rgba(255,255,255,.82);min-height:40px;border-radius:12px;color:var(--ink);outline:none;padding:0 12px;transition:border .16s ease,box-shadow .16s ease,background .16s ease}.filter-bar select{padding-right:28px}.filter-bar input:focus,.filter-bar select:focus,.field-control:focus{border-color:rgba(0,122,255,.45);box-shadow:0 0 0 4px rgba(0,122,255,.08);background:#fff}.search-field{position:relative}.search-field svg{position:absolute;width:16px;height:16px;left:13px;top:12px;color:#838388;z-index:1}.search-field input{padding-left:38px}.table-surface{overflow:hidden}.table-wrap{overflow:auto}.data-table,.evaluation-table{width:100%;border-collapse:collapse}.data-table th,.data-table td,.evaluation-table th,.evaluation-table td{padding:15px 17px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.data-table th,.evaluation-table th{text-transform:none;font-size:10px;font-weight:650;color:var(--muted);background:rgba(248,248,250,.62)}.data-table tbody tr{transition:background .13s ease}.data-table tbody tr:hover{background:rgba(118,118,128,.045)}.data-table tbody tr:last-child td,.evaluation-table tbody tr:last-child td{border-bottom:0}.process-cell{min-width:300px}.process-cell strong,.process-cell span{display:block}.process-cell strong{font-size:12px}.process-cell span{font-size:10px;color:var(--muted);margin-top:4px;max-width:510px}.company-label{font-size:11px;color:var(--ink-soft)}.method-pill,.state-pill{display:inline-flex;align-items:center;min-height:25px;border-radius:999px;padding:0 9px;font-size:10px;font-weight:650;white-space:nowrap}.method-pill{background:#ededf2;color:#44444a}.state-pill{background:#f0f0f3;color:#55555a}.state-awarded{background:var(--green-soft);color:var(--green)}.state-submitted{background:var(--blue-soft);color:#2468ae}.state-evaluation,.state-preparation,.state-quoting{background:#f2f2f5}.attention-label{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--ink-soft);white-space:nowrap}.progress-cell{min-width:100px}.progress-cell>span{font-size:10px;font-weight:650}.row-open{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:#9a9aa0}.row-open:hover{background:#f0f0f3;color:#555}.row-open svg{width:15px;height:15px}

.process-titlebar{display:flex;justify-content:space-between;gap:28px;align-items:flex-start;margin-bottom:20px}.process-title-main{max-width:980px}.process-titlebar h1{font-size:36px;margin:10px 0 7px}.process-titlebar p{margin:0;color:var(--muted);font-size:12px}.title-meta{display:flex;align-items:center;gap:8px}.process-actions{display:flex;align-items:center;gap:8px;padding-top:7px}.process-summary-strip{display:grid;grid-template-columns:.9fr 1.8fr 1fr .9fr;background:rgba(255,255,255,.58);border:1px solid var(--line);border-radius:18px;margin-bottom:16px;overflow:hidden}.process-summary-strip>div{padding:15px 17px;border-right:1px solid var(--line)}.process-summary-strip>div:last-child{border-right:0}.process-summary-strip span,.process-summary-strip strong{display:block}.process-summary-strip span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.055em}.process-summary-strip strong{font-size:11px;margin-top:5px;font-weight:650}
.segmented-tabs{display:flex;gap:4px;padding:4px;background:#ebebef;border-radius:13px;width:max-content;max-width:100%;overflow-x:auto;margin-bottom:18px}.segmented-tabs a{padding:7px 11px;border-radius:9px;color:#65656a;font-size:10px;font-weight:600;white-space:nowrap;display:flex;align-items:center;gap:5px}.segmented-tabs a span{display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:99px;background:rgba(0,0,0,.055);font-size:8px}.segmented-tabs a.active{background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.08)}
.detail-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(285px,.72fr);gap:16px}.detail-primary,.detail-aside{display:flex;flex-direction:column;gap:16px}.overview-card{padding-bottom:2px}.large-percent{font-size:23px;letter-spacing:-.04em}.hero-progress{height:8px;background:#efeff2;margin:0 22px;border-radius:99px;overflow:hidden}.hero-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#111,#3a3a3d)}.overview-metrics{display:grid;grid-template-columns:repeat(4,1fr);margin-top:21px;border-top:1px solid var(--line)}.overview-metrics div{padding:15px 18px;border-right:1px solid var(--line)}.overview-metrics div:last-child{border-right:0}.overview-metrics span,.overview-metrics strong{display:block}.overview-metrics span{font-size:9px;color:var(--muted)}.overview-metrics strong{font-size:11px;margin-top:4px}.requirement-list{padding:0 10px 10px}.requirement-row{display:grid;grid-template-columns:31px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 11px;border-radius:13px}.requirement-row:hover{background:rgba(118,118,128,.045)}.check-circle{width:29px;height:29px;border-radius:50%;background:#eeeef2;display:grid;place-items:center;color:#777;font-weight:750}.check-circle svg{width:17px;height:17px}.check-circle>span{width:7px;height:7px;background:#aaa;border-radius:50%}.check-complete{background:var(--green-soft);color:var(--green)}.check-attention{background:var(--amber-soft);color:var(--amber)}.requirement-copy{min-width:0}.requirement-copy strong,.requirement-copy span{display:block}.requirement-copy strong{font-size:11px}.requirement-copy span{font-size:10px;color:var(--muted);margin-top:3px}.requirement-state{font-size:9px}.req-complete{background:var(--green-soft);color:var(--green)}.req-attention{background:var(--amber-soft);color:var(--amber)}.quote-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;padding:0 14px 16px}.quote-card{border:1px solid var(--line);border-radius:15px;padding:13px;display:flex;gap:10px;align-items:center;background:rgba(255,255,255,.5)}.supplier-avatar{width:35px;height:35px;border-radius:11px;background:#ededf2;display:grid;place-items:center;font-size:11px;font-weight:750;flex:0 0 auto}.quote-card span,.quote-card strong,.quote-card small{display:block}.quote-card span{font-size:9px;color:var(--muted)}.quote-card strong{font-size:12px;margin-top:2px}.quote-card small{font-size:9px;color:var(--muted);margin-top:3px}.info-card{padding:18px}.info-card .surface-head{padding:0}.info-card dl{margin:10px 0 0}.info-card dl div{display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-bottom:1px solid var(--line)}.info-card dl div:last-child{border-bottom:0}.info-card dt{font-size:10px;color:var(--muted)}.info-card dd{margin:0;font-size:10px;text-align:right;max-width:58%;overflow-wrap:anywhere}.body-copy{font-size:11px;color:var(--ink-soft);line-height:1.6;margin:10px 0 0}.activity-list{margin-top:8px}.activity-item{display:grid;grid-template-columns:8px 1fr;gap:9px;padding:9px 0}.activity-pulse{width:7px;height:7px;border-radius:50%;background:#8e8e93;margin-top:4px}.activity-item strong,.activity-item span,.activity-item small{display:block}.activity-item strong{font-size:10px}.activity-item span{font-size:9px;color:var(--muted);margin-top:2px}.activity-item small{font-size:8px;color:var(--muted-2);margin-top:3px}

.content-section{padding-bottom:12px;min-height:370px}.content-section>.surface-head{padding-bottom:21px}.full-list{padding:0 13px 8px}.completion-ring{width:66px;height:66px;border:6px solid #ececf0;border-top-color:#34c759;border-radius:50%;display:grid;place-items:center;align-content:center}.completion-ring strong,.completion-ring span{display:block;text-align:center}.completion-ring strong{font-size:13px}.completion-ring span{font-size:7px;color:var(--muted)}.calendar-list{padding:0 14px 10px}.calendar-row{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 9px;border-top:1px solid var(--line)}.date-block{width:46px;height:48px;border-radius:13px;background:#efeff3;display:grid;place-items:center;align-content:center}.date-block strong{font-size:18px;line-height:1}.date-block span{font-size:8px;color:var(--muted);margin-top:3px}.calendar-copy strong,.calendar-copy span,.calendar-copy small{display:block}.calendar-copy strong{font-size:11px}.calendar-copy span{font-size:9px;color:var(--muted);margin-top:3px}.calendar-copy small{font-size:9px;color:var(--ink-soft);margin-top:4px}.supplier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:0 18px 18px}.supplier-card{border:1px solid var(--line);background:rgba(255,255,255,.45);border-radius:16px;padding:15px;display:flex;gap:11px;align-items:center}.large-avatar{width:42px;height:42px;border-radius:13px}.supplier-card strong,.supplier-card span,.supplier-card small{display:block}.supplier-card strong{font-size:11px}.supplier-card span{font-size:9px;color:var(--muted);margin-top:3px}.supplier-card small{font-size:9px;color:var(--muted-2);margin-top:2px}.span-all{grid-column:1/-1}.quote-comparison{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;padding:0 18px 18px}.comparison-card{position:relative;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.5);padding:17px}.comparison-card.best-quote{border-color:rgba(36,138,61,.32);box-shadow:inset 0 0 0 1px rgba(36,138,61,.08)}.best-label{position:absolute;right:12px;top:12px;background:var(--green-soft);color:var(--green);font-size:8px;font-weight:700;padding:5px 7px;border-radius:999px}.comparison-card h3{font-size:12px;margin:10px 0 1px}.quote-number{font-size:9px;color:var(--muted)}.quote-total{display:block;font-size:21px;letter-spacing:-.04em;margin:17px 0}.comparison-card dl{margin:0}.comparison-card dl div{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid var(--line)}.comparison-card dt,.comparison-card dd{font-size:9px}.comparison-card dt{color:var(--muted)}.comparison-card dd{margin:0;text-align:right}.evaluation-table-wrap{overflow:auto;padding:0 8px 8px}.evaluation-table td{font-size:10px}.score-chip{font-weight:700}.pass-label,.fail-label{font-size:9px;font-weight:700;padding:5px 8px;border-radius:999px}.pass-label{background:var(--green-soft);color:var(--green)}.fail-label{background:var(--red-soft);color:var(--red)}.document-list{padding:0 16px 12px}.document-row{display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center;padding:12px 5px;border-top:1px solid var(--line)}.document-icon{width:40px;height:40px;border-radius:10px;background:var(--red-soft);color:#ba2634;display:grid;place-items:center;font-size:8px;font-weight:800}.document-row strong,.document-row span{display:block}.document-row strong{font-size:10px}.document-row span{font-size:9px;color:var(--muted);margin-top:3px}.document-row small{font-size:9px;color:var(--muted)}.activity-timeline{padding:2px 22px 20px}.activity-timeline-row{display:grid;grid-template-columns:18px 1fr;gap:10px;position:relative}.activity-timeline-row:not(:last-child):before{content:"";position:absolute;left:6px;top:16px;bottom:-3px;width:1px;background:var(--line-strong)}.timeline-dot{width:13px;height:13px;border:3px solid #fff;border-radius:50%;background:#888;box-shadow:0 0 0 1px var(--line);z-index:1;margin-top:3px}.timeline-copy{padding-bottom:20px}.timeline-copy strong{font-size:11px}.timeline-copy p{font-size:10px;color:var(--ink-soft);margin:4px 0}.timeline-copy span{font-size:9px;color:var(--muted-2)}

.form-hero{max-width:790px;margin-bottom:22px}.form-hero h1{font-size:39px}.back-link{display:none;align-items:center;gap:4px;color:var(--blue);font-size:11px;font-weight:650;margin-bottom:18px}.back-link svg{width:15px;height:15px}.create-layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:16px;align-items:start}.form-column{display:flex;flex-direction:column;gap:14px}.form-section{padding:22px}.form-section-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:21px}.step-number{width:31px;height:31px;border-radius:10px;background:#f0f0f3;display:grid;place-items:center;font-size:9px;font-weight:750;color:var(--muted)}.form-section-head h2,.method-preview h3{font-size:17px;margin:1px 0 2px;letter-spacing:-.02em}.form-section-head p{font-size:10px;color:var(--muted);margin:0}.form-grid{display:grid;gap:15px}.form-grid.two{grid-template-columns:1fr 1fr}.field-group.full{grid-column:1/-1}.field-group label{display:block;font-size:10px;font-weight:650;margin:0 0 6px;color:#4e4e53}.field-control{min-height:42px;background:#fbfbfc}.field-group textarea.field-control{padding-top:10px;resize:vertical;line-height:1.45}.field-group ul.errorlist{list-style:none;margin:5px 0 0;padding:0;color:var(--red);font-size:9px}.money-input{position:relative}.money-input>span{position:absolute;left:12px;top:12px;color:var(--muted);z-index:1}.money-input input{padding-left:28px}.form-actions{display:flex;justify-content:flex-end;gap:8px;padding:4px 0}.create-aside{position:sticky;top:84px;display:flex;flex-direction:column;gap:11px}.method-preview{padding:22px}.preview-orb{width:50px;height:50px;border-radius:16px;background:linear-gradient(145deg,#e8f2ff,#f3f7ff);display:grid;place-items:center;color:#3378bf;margin-bottom:22px}.preview-orb svg{width:23px;height:23px;fill:currentColor}.method-preview h3{margin-top:5px}.method-preview p{font-size:11px;line-height:1.55;color:var(--muted);margin:7px 0 18px}.preview-list{border-top:1px solid var(--line);padding-top:10px}.preview-list span{display:flex;align-items:center;gap:7px;font-size:10px;padding:6px 0}.preview-list i{font-style:normal;width:17px;height:17px;border-radius:50%;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-size:8px;font-weight:800}.aside-note{display:flex;gap:9px;padding:13px 14px}.aside-note svg{width:17px;height:17px;fill:#8a8a8f;flex:0 0 auto}.aside-note p{margin:0;font-size:9px;line-height:1.5;color:var(--muted)}.form-error{background:var(--red-soft);color:var(--red);padding:12px;border-radius:12px;font-size:10px}

.empty-state{padding:42px 20px;text-align:center}.empty-state strong,.empty-state span{display:block}.empty-state strong{font-size:12px}.empty-state span{font-size:10px;color:var(--muted);margin-top:5px}.muted{color:var(--muted)}
.toast-stack{position:fixed;right:24px;top:79px;z-index:50;display:flex;flex-direction:column;gap:8px}.toast{background:rgba(32,32,34,.92);backdrop-filter:blur(16px);color:#fff;border-radius:12px;padding:10px 13px;box-shadow:var(--shadow);font-size:10px;max-width:340px}.toast.success:before{content:"✓";margin-right:7px;color:#55d879}

.app-dialog{width:min(470px,calc(100vw - 32px));border:0;border-radius:22px;padding:0;background:rgba(255,255,255,.96);box-shadow:0 24px 80px rgba(0,0,0,.22);color:var(--ink);backdrop-filter:blur(20px)}.app-dialog::backdrop{background:rgba(0,0,0,.24);backdrop-filter:blur(2px)}.app-dialog form{padding:22px}.dialog-head{display:flex;justify-content:space-between;gap:14px}.dialog-head h2{margin:4px 0 2px;font-size:20px}.dialog-head p{margin:0;font-size:10px;color:var(--muted)}.dialog-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.dialog-fields .field-group:last-child{grid-column:1/-1}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:16px;border-top:1px solid var(--line)}

@media(max-width:1180px){
  .app-shell{grid-template-columns:220px minmax(0,1fr)}
  .content{padding:34px 26px 55px}
  .metric-grid{grid-template-columns:repeat(2,1fr)}
  .filter-bar{grid-template-columns:minmax(230px,1fr) 170px 145px auto}.filter-bar select[name="status"]{display:none}
  .quote-cards,.supplier-grid,.quote-comparison{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .app-shell{display:block}
  .sidebar{position:fixed;left:-270px;width:258px;transition:left .22s ease;box-shadow:20px 0 60px rgba(0,0,0,.12)}.sidebar.is-open{left:0}
  .mobile-menu{display:grid}.topbar{padding:0 18px}.content{padding:28px 18px 48px}
  .dashboard-grid,.detail-layout,.create-layout{grid-template-columns:1fr}.create-aside{position:static}.method-preview{display:none}
  .process-summary-strip{grid-template-columns:repeat(2,1fr)}.process-summary-strip>div:nth-child(2){border-right:0}.process-summary-strip>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .overview-metrics{grid-template-columns:repeat(2,1fr)}.overview-metrics div:nth-child(2){border-right:0}.overview-metrics div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .filter-bar{grid-template-columns:1fr 1fr auto}.search-field{grid-column:1/-1}.filter-bar select[name="method"]{display:none}
  .back-link{display:flex}
}
@media(max-width:640px){
  .desktop-only{display:none}.topbar{height:58px}.content{padding-top:22px}
  .hero-row,.process-titlebar{align-items:flex-start;flex-direction:column}.hero-row>.secondary-button{display:none}.compact-hero>.primary-button{display:none}
  .hero-row h1,.form-hero h1,.process-titlebar h1{font-size:31px}.lead{font-size:13px}
  .metric-grid{grid-template-columns:1fr 1fr;gap:9px}.metric-card{padding:14px;gap:10px}.metric-icon{width:36px;height:36px}.metric-card strong{font-size:21px}.metric-card small{display:none}
  .process-feed-row{grid-template-columns:38px minmax(0,1fr) 16px}.feed-progress{display:none}.method-avatar{width:36px;height:36px}
  .filter-bar{grid-template-columns:1fr auto}.filter-bar select[name="company"]{display:none}
  .table-wrap{overflow-x:auto}.data-table{min-width:820px}
  .process-titlebar h1{font-size:28px}.process-actions{width:100%}.process-actions .secondary-button{flex:1}.process-summary-strip{grid-template-columns:1fr}.process-summary-strip>div{border-right:0;border-bottom:1px solid var(--line)}.process-summary-strip>div:last-child{border-bottom:0}.process-summary-strip>div:nth-child(2){border-right:0}
  .segmented-tabs{width:100%;border-radius:12px}
  .overview-metrics{grid-template-columns:1fr 1fr}.quote-cards,.supplier-grid,.quote-comparison{grid-template-columns:1fr}.form-grid.two{grid-template-columns:1fr}.field-group.full{grid-column:auto}.form-section{padding:18px}.create-aside{display:none}.form-actions{position:sticky;bottom:10px;background:rgba(245,245,247,.88);backdrop-filter:blur(15px);padding:9px;border-radius:14px;z-index:5}.form-actions>*{flex:1}
  .dialog-fields{grid-template-columns:1fr}.dialog-fields .field-group:last-child{grid-column:auto}
  .toast-stack{right:12px;left:12px;top:68px}.toast{max-width:none}
}

.quote-item-fields {display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:16px;padding:20px 0;border-bottom:1px solid #e5e5ea;align-items:start}
.quote-item-fields label {display:block;margin-bottom:8px;font-size:13px;color:#65656b}
.quote-item-fields .errorlist,.errorlist {color:#b42318;font-size:13px}
.quote-item-fields input[type=checkbox] {width:auto}
@media(max-width:800px){.quote-item-fields{grid-template-columns:1fr 1fr}.quote-item-fields p:first-child{grid-column:1/-1}}

.month-scroll{overflow-x:auto}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));min-width:910px;gap:1px;background:#e7e7ec}.month-heading{padding:12px;background:#f5f5f7;text-align:center}.month-day{min-height:120px;padding:8px;background:white}.month-outside{background:#f5f5f7}.month-event{display:block;margin-top:7px;padding:7px;border-radius:8px;background:#f0f0f3;font-size:11px;overflow-wrap:anywhere}.month-event span,.month-event small{display:block;margin-top:3px}.event-deadline{background:#e8f0ff;color:#174b91}
