@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap");
:root{--ink:#1d2528;--muted:#637074;--blue:#6f9900;--blue-dark:#587b00;--blue-soft:#f2fbdc;--line:#dfe4e2;--soft:#f7f8f4;--green:#16824a;--red:#dc4a3d}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f6f8fc;color:var(--ink);font-family:"DM Sans",system-ui,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3{font-family:"Manrope",sans-serif;letter-spacing:-.035em;margin:0;line-height:1.15}p{color:var(--muted)}
.dashboard-shell{min-height:100vh;display:grid;grid-template-columns:244px 1fr}.dashboard-sidebar{position:sticky;top:0;height:100vh;padding:26px 17px 18px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column}.dashboard-brand{padding:2px 10px 22px}.dashboard-brand img{width:142px}.nav-label{margin:10px 10px 7px;color:#94a3b8;text-transform:uppercase;letter-spacing:.12em;font-size:9px;font-weight:800}.dashboard-nav{display:grid;gap:3px}.dashboard-nav a,.dashboard-logout{min-height:41px;padding:0 11px;border:0;border-radius:9px;background:transparent;display:flex;align-items:center;justify-content:space-between;color:#475569;font-size:13px;font-weight:600;text-align:left}.dashboard-nav a:before{content:"";width:6px;height:6px;border:1.5px solid #94a3b8;border-radius:2px;margin-right:11px}.dashboard-nav a span{margin-right:auto}.dashboard-nav a b{color:#94a3b8;font-size:10px}.dashboard-nav a:hover,.dashboard-nav a[aria-current="page"]{color:var(--blue);background:var(--blue-soft)}.dashboard-nav a[aria-current="page"]:before{background:var(--blue);border-color:var(--blue)}.dashboard-logout{width:100%;justify-content:flex-start}.dashboard-logout:before{content:"↪";margin-right:11px;color:#94a3b8}
.sidebar-plan{margin-top:auto;padding:14px;border-radius:12px;background:#0f172a;color:#fff;display:flex;flex-direction:column}.sidebar-plan span{color:#c9ec79;text-transform:uppercase;letter-spacing:.1em;font-size:9px;font-weight:800}.sidebar-plan strong{margin-top:5px;font-size:13px}.sidebar-plan small{color:#94a3b8;font-size:9px}.sidebar-user{display:grid;grid-template-columns:34px 1fr;gap:9px;align-items:center;padding:17px 8px 2px;min-width:0}.avatar{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#b8e34e,#9ad900);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}.sidebar-user div{display:flex;flex-direction:column;min-width:0}.sidebar-user strong{font-size:11px}.sidebar-user small{font-size:9px;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-main{min-width:0;padding:32px 38px 60px}.demo-banner{display:none;margin:-8px 0 22px;padding:9px 14px;border-radius:9px;background:#fffbeb;border:1px solid #fde68a;color:#92400e;font-size:11px;font-weight:700}.demo-banner:not(:empty){display:block}.dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:28px}.eyebrow{display:block;color:var(--blue);text-transform:uppercase;letter-spacing:.13em;font-size:9px;font-weight:800;margin-bottom:7px}.dashboard-header h1{font-size:30px}.dashboard-header p{margin:5px 0 0;font-size:13px}.header-actions{display:flex;gap:9px}.dashboard-button{min-height:39px;border-radius:9px;padding:0 14px;font-size:11px;font-weight:700;border:1px solid transparent}.dashboard-button.primary{background:var(--blue);color:#fff}.dashboard-button.primary:hover{background:var(--blue-dark)}.dashboard-button.secondary{background:#fff;color:#334155;border-color:var(--line)}.dashboard-button.full{width:100%}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:17px}.metric-card{padding:19px;border:1px solid var(--line);border-radius:14px;background:#fff;display:flex;flex-direction:column}.metric-card>span{font-size:10px;color:#64748b;font-weight:700}.metric-card>strong{font:800 27px "Manrope";letter-spacing:-.05em;margin:4px 0}.metric-card small{color:#94a3b8;font-size:9px}.metric-card small b{color:var(--green)}
.panel{background:#fff;border:1px solid var(--line);border-radius:15px;padding:21px;box-shadow:0 5px 18px rgba(15,23,42,.025)}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:19px}.panel-heading h2{font-size:18px}.panel-heading p{font-size:11px;margin:5px 0 0}.local-badge{padding:6px 9px;border-radius:99px;background:#f0fdf4;color:#15803d;font-size:8px;font-weight:800;white-space:nowrap}
.workspace-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(270px,.75fr);gap:17px}.matcher-panel{padding:24px}.review-label{display:block;font-size:10px;font-weight:800;margin-bottom:7px}.matcher-panel textarea{width:100%;resize:vertical;border:1px solid #cbd5e1;border-radius:11px;padding:13px;font-size:12px;line-height:1.55;color:#334155}.matcher-panel textarea:focus{outline:3px solid #e7f5c4;border-color:var(--blue)}.matcher-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 20px}.matcher-actions>span{color:#94a3b8;font-size:9px}.result-heading{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:18px 0 8px}.result-heading strong{font-size:11px}.result-heading small{color:#94a3b8;font-size:9px}
.result-card{display:grid;grid-template-columns:52px 1fr auto;gap:13px;align-items:start;padding:14px;border:1px solid var(--line);border-radius:11px;margin-top:8px;transition:.2s}.result-card:hover{border-color:#d7efa2;box-shadow:0 8px 24px rgba(37,99,235,.07)}.result-card.subdued{opacity:.78}.score{height:48px;border-radius:9px;background:var(--blue-soft);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--blue)}.score strong{font-size:12px}.score span{font-size:7px}.result-card h3{font-size:12px}.result-card p{margin:4px 0 8px;font-size:10px;line-height:1.45}.result-card footer{display:flex;gap:5px;flex-wrap:wrap}.result-card footer span{padding:3px 6px;background:#f1f5f9;color:#64748b;border-radius:5px;font-size:7px}.result-card>button{border:1px solid #d7efa2;background:#fff;color:var(--blue);border-radius:7px;padding:6px 9px;font-size:9px;font-weight:800}.results.refreshed .result-card{animation:pulse .6s ease}@keyframes pulse{50%{transform:translateY(-2px);border-color:#b8e34e}}
.side-stack{display:grid;gap:17px;align-content:start}.activity-panel ol{list-style:none;padding:0;margin:0;display:grid;gap:18px}.activity-panel li{display:grid;grid-template-columns:10px 1fr;gap:10px}.activity-panel i{width:8px;height:8px;border-radius:50%;margin-top:5px}.copy-dot{background:#9ad900}.template-dot{background:#8b5cf6}.category-dot{background:#f97316}.activity-panel li div{display:flex;flex-direction:column}.activity-panel strong{font-size:10px}.activity-panel small{font-size:8px;color:#94a3b8}.text-button{border:0;background:transparent;color:var(--blue);font-size:9px;font-weight:800;padding:15px 0 0}.quick-panel{background:linear-gradient(150deg,#f2fbdc,#fff)}.quick-panel h2{font-size:18px}.quick-panel p{font-size:10px}.quick-panel code{color:var(--blue);font-size:9px}
.lower-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(250px,.75fr);gap:17px;margin-top:17px}.table-tools{display:flex;gap:7px}.table-tools input{width:150px;border:1px solid var(--line);border-radius:8px;padding:7px 9px;font-size:9px}.table-tools button,.icon-button{border:0;border-radius:8px;background:var(--blue);color:#fff;font-size:9px;font-weight:800;padding:7px 10px}.template-table{display:grid}.table-row{display:grid;grid-template-columns:1.6fr .8fr .75fr .55fr .5fr;gap:10px;align-items:center;padding:11px 4px;border-top:1px solid #f1f5f9;font-size:9px;color:#64748b}.table-row>span:first-child{display:flex;flex-direction:column}.table-row b{font-size:10px;color:#334155}.table-row small{color:#94a3b8}.table-head{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;font-size:7px}.sentiment{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:5px}.sentiment.positive{background:#22c55e}.sentiment.negative{background:#ef4444}.sentiment.neutral{background:#f59e0b}.status{justify-self:start;padding:4px 7px;border-radius:99px;font-weight:700}.status.active{background:#f0fdf4;color:#15803d}.status.archived{background:#f1f5f9;color:#64748b}
.category-list{display:grid;gap:8px}.category-list>span{display:grid;grid-template-columns:9px 1fr auto;align-items:center;gap:9px;padding:10px;border:1px solid #f1f5f9;border-radius:9px;font-size:10px;font-weight:600}.category-list i{width:7px;height:7px;border-radius:2px;background:var(--c)}.category-list b{color:#94a3b8}
.history-panel{margin-top:17px}.history-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.history-cards article{padding:14px;border:1px solid #f1f5f9;border-radius:10px}.history-cards header,.history-cards footer{display:flex;justify-content:space-between;align-items:center}.history-cards header span{color:var(--blue);font-size:8px;font-weight:800}.history-cards time{color:#94a3b8;font-size:7px}.history-cards p{font-size:9px}.history-cards strong{font-size:9px}.history-cards button{border:0;background:transparent;color:var(--blue);font-size:8px;font-weight:800}
.dashboard-toast{position:fixed;right:25px;bottom:25px;transform:translateY(20px);opacity:0;padding:12px 16px;border-radius:10px;background:#0f172a;color:#fff;font-size:10px;font-weight:700;box-shadow:0 15px 35px rgba(15,23,42,.25);transition:.22s;pointer-events:none}.dashboard-toast.show{transform:none;opacity:1}
@media(max-width:1150px){.metric-grid{grid-template-columns:repeat(2,1fr)}.workspace-grid,.lower-grid{grid-template-columns:1fr}.side-stack{grid-template-columns:1fr 1fr}}
@media(max-width:780px){.dashboard-shell{display:block}.dashboard-sidebar{position:static;height:auto;padding:16px}.dashboard-brand{padding:0 5px 13px}.dashboard-brand img{width:130px}.nav-label,.sidebar-plan{display:none}.dashboard-nav{display:flex;overflow-x:auto;padding-bottom:4px}.dashboard-nav a,.dashboard-logout{white-space:nowrap;min-height:35px}.dashboard-nav a:before,.dashboard-logout:before{display:none}.sidebar-user{display:none}.dashboard-main{padding:22px 15px 45px}.dashboard-header{align-items:flex-start;flex-direction:column}.metric-grid{grid-template-columns:1fr 1fr}.side-stack{grid-template-columns:1fr}.history-cards{grid-template-columns:1fr}.table-row{grid-template-columns:1.5fr .8fr .7fr}.table-row>span:nth-child(4),.table-row>span:nth-child(5){display:none}}
@media(max-width:520px){.metric-grid{grid-template-columns:1fr}.header-actions{width:100%}.header-actions button{flex:1}.panel{padding:16px}.matcher-actions{align-items:flex-start;flex-direction:column}.matcher-actions button{width:100%}.result-card{grid-template-columns:45px 1fr}.result-card>button{grid-column:2;justify-self:start}.table-tools input{display:none}}

/* ScopeLog request and approval workspace */
.dashboard-button.primary{background:#1d2528}.dashboard-button.primary:hover{background:#0d1214}.sidebar-plan{background:#1d2528}.sidebar-plan span{color:#c9ec79}.avatar{background:linear-gradient(135deg,#6f9900,#1d2528)}
.scope-board{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:17px;align-items:start}.scope-column{padding:13px;border:1px solid var(--line);border-radius:15px;background:#eef1ee;display:grid;gap:9px}.scope-column>header{display:flex;align-items:center;justify-content:space-between;padding:1px 3px 5px}.scope-column>header span{font-size:10px;font-weight:800}.scope-column>header b{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:#fff;color:#64748b;font-size:9px}.scope-ticket{width:100%;padding:13px;border:1px solid var(--line);border-radius:11px;background:#fff;text-align:left;color:var(--ink);box-shadow:0 4px 12px rgba(29,37,40,.035)}.scope-ticket:hover{border-color:#b8cf7f;transform:translateY(-1px)}.scope-ticket.selected{border:2px solid #91bd26}.scope-ticket.high{border-left:4px solid #f3aa22}.scope-ticket.shipped{border-left:4px solid #6f9900}.scope-ticket>small{font-size:8px;color:#7b8789;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.scope-ticket>strong{display:block;font-size:11px;margin:6px 0 2px}.scope-ticket>p{font-size:9px;margin:0 0 10px}.scope-ticket footer{display:flex;justify-content:space-between;gap:8px;color:#7b8789;font-size:8px}.estimate-chip,.proof-chip{margin:9px 0;padding:6px 8px;border-radius:7px;background:#fff7e7;color:#8d5b00;font-size:8px;font-weight:800}.proof-chip{background:#edf9df;color:#457100}.progress-line{height:5px;margin:10px 0;background:#e7ece9;border-radius:99px;overflow:hidden}.progress-line i{display:block;height:100%;background:#6f9900;border-radius:inherit}.scope-more{border:0;background:transparent;color:#637074;padding:6px;font-size:9px;font-weight:700}.details-grid{margin-bottom:17px}.approval-badge{padding:6px 9px;border-radius:99px;background:#fff7e7;color:#8d5b00;font-size:8px;font-weight:800;white-space:nowrap}.request-details{display:grid;grid-template-columns:220px 1fr;gap:20px}.scope-shot{min-height:210px;padding:13px;border-radius:12px;background:linear-gradient(140deg,rgba(29,37,40,.1),rgba(154,217,0,.18)),linear-gradient(135deg,#dfe5e1,#c5d1cb);display:flex;flex-direction:column;justify-content:space-between}.scope-shot span{align-self:flex-start;padding:5px 7px;border-radius:6px;background:#1d2528;color:#fff;font-size:8px}.scope-shot b{align-self:center;padding:7px 10px;border:2px dashed #f3aa22;color:#1d2528;font-size:10px}.detail-copy h3{font-size:11px;margin-bottom:4px}.detail-copy p{font-size:10px;margin:0 0 14px}.estimate-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.estimate-row span{padding:9px;border-radius:8px;background:#f7f8f4;display:flex;flex-direction:column}.estimate-row small{font-size:8px;color:#7b8789}.estimate-row b{font-size:10px}.panel-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
@media(max-width:1180px){.scope-board{grid-template-columns:repeat(2,1fr)}}@media(max-width:780px){.scope-board{grid-template-columns:1fr}.request-details{grid-template-columns:1fr}.scope-shot{min-height:150px}}
