:root{--brand:#006efe;--brand-bright:#3d92ff;--brand-soft:#006efe1a;--bg:#02050b;--bg-raised:#080d16;--bg-card:#0b1220;--border:#182234;--text:#e8edf5;--text-dim:#8e9bb0;--text-faint:#5b6779;--ok:#2fd08a;--pending:#f0a83c;--critical:#ff6b6b;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Inter, system-ui, sans-serif;--mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;--radius:10px}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font:14px/1.45 var(--sans);margin:0}a{color:var(--brand-bright);text-decoration:none}a:hover{text-decoration:underline}h1{margin:2px 0 0;font-size:20px;font-weight:600}h2{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin:28px 0 8px;font-size:13px}.dim{color:var(--text-dim)}.small{font-size:12px}.mono{font-family:var(--mono)}.warn{color:var(--pending)}button,input,select{font:inherit;color:inherit}button{background:var(--bg-card);border:1px solid var(--border);cursor:pointer;border-radius:8px;padding:6px 12px}button:hover{border-color:var(--text-faint)}button.primary{background:var(--brand);border-color:var(--brand);color:#fff}button.quiet{color:var(--text-dim);background:0 0;border-color:#0000}input[type=search],.new-project>input{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;min-width:200px;padding:6px 10px}:focus-visible{outline:2px solid var(--brand-bright);outline-offset:1px}.shell{flex-direction:column;height:100%;display:flex}.topbar{border-bottom:1px solid var(--border);background:var(--bg-raised);flex:none;align-items:center;gap:20px;height:48px;padding:0 20px;display:flex}.topbar a{color:var(--text-dim)}.topbar a[aria-current=page]{color:var(--text)}.topbar .brand{color:var(--text);letter-spacing:.01em;font-weight:600}.topbar .brand span{color:var(--brand-bright);font-weight:500}.topbar .spacer{flex:1}.page{flex-direction:column;flex:1;width:100%;max-width:1000px;min-height:0;margin:0 auto;padding:20px 24px 0;display:flex}.page-wide{max-width:none;overflow-y:auto}.page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px;display:flex}.toolbar{align-items:center;gap:10px;display:flex}.segmented{border:1px solid var(--border);border-radius:8px;display:flex;overflow:hidden}.segmented button{color:var(--text-dim);background:0 0;border:0;border-radius:0}.segmented button[aria-selected=true]{background:var(--brand-soft);color:var(--text)}table.list{border-collapse:collapse;width:100%}table.list.fixed{table-layout:fixed}table.list.fixed td{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}table.list th{text-align:left;color:var(--text-dim);border-bottom:1px solid var(--border);padding:8px 10px;font-size:12px;font-weight:500}table.list td{border-bottom:1px solid var(--border);vertical-align:top;padding:9px 10px}table.list td.due{width:80px;color:var(--text-dim);white-space:nowrap}.bucket-overdue td.due{color:var(--critical)}.count{color:var(--text-faint);margin-left:4px;font-weight:400}.pill{background:var(--bg-card);border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:12px}.pill-blocked{color:var(--critical);border-color:#ff6b6b55}.pill-in-progress{color:var(--brand-bright);border-color:#3d92ff55}.new-project{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);gap:10px;margin-bottom:20px;padding:16px;display:grid}.template{border:1px solid var(--border);cursor:pointer;border-radius:8px;grid-template-columns:auto 1fr;column-gap:10px;padding:10px 12px;display:grid}.template span{grid-column:2;font-size:13px}.template-on{border-color:var(--brand);background:var(--brand-soft)}.form-actions{gap:8px;display:flex}.sheet{flex-direction:column;flex:1;min-height:0;display:flex}.sheet-actions{gap:8px;margin-bottom:8px;display:flex}.sheet-grid{border:1px solid var(--border);border-radius:8px;flex:1;min-height:240px;overflow:hidden}revo-grid{--revo-grid-background:var(--bg);font-family:var(--sans)}.cell-mono{font-family:var(--mono);font-size:12.5px}.status-bar{color:var(--text-dim);flex:none;align-items:center;gap:16px;padding:8px 2px 10px;font-size:12px;display:flex}.status-message{color:var(--text);flex:1}.kanban{flex:1;gap:12px;min-height:0;padding-bottom:8px;display:flex;overflow-x:auto}.lane{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;flex:0 0 240px;gap:8px;padding:10px;display:flex;overflow-y:auto}.lane-over{border-color:var(--brand);background:var(--brand-soft)}.lane header{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;padding:2px 2px 4px;font-size:12px;font-weight:600;display:flex}.card{background:var(--bg-card);border:1px solid var(--border);cursor:grab;border-radius:8px;gap:6px;padding:9px 10px;display:grid}.card-title{font-size:13px}.card-meta{color:var(--text-dim);gap:10px;font-size:12px;display:flex}.card-move{border:1px solid var(--border);color:var(--text-dim);background:0 0;border-radius:6px;padding:2px 4px;font-size:12px}.sign-in{max-width:420px;padding-top:12vh}.sign-in form{gap:12px;display:grid}.sign-in input{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:9px 12px}.brand-accent{color:var(--brand-bright);font-weight:500}.error{color:var(--critical)}.save-state{color:var(--text-faint);font-size:12px}.save-error{color:var(--critical)}.import{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);gap:12px;margin-bottom:20px;padding:16px;display:grid}.import h2{margin:0}.import-options{flex-wrap:wrap;gap:16px;display:flex}.import-options label{color:var(--text-dim);gap:4px;font-size:12px;display:grid}.import input,.import select{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:6px 10px}.import-map td{vertical-align:middle}button.small{padding:2px 0;font-size:12px}.cell-invalid{text-underline-offset:3px;-webkit-text-decoration:underline wavy #f0a83c88;text-decoration:underline wavy #f0a83c88;color:var(--pending)!important}.vendor-layout{grid-template-columns:240px minmax(0,760px);align-items:start;gap:24px;display:grid}.vendor-list{gap:2px;display:grid}.vendor-list a{color:var(--text);border-radius:8px;justify-content:space-between;gap:8px;padding:8px 10px;display:flex}.vendor-list a:hover{background:var(--bg-card);text-decoration:none}.vendor-list a[aria-current=page]{background:var(--brand-soft)}.vendor-detail{justify-items:start;gap:10px;display:grid}.vendor-detail h2{margin-top:18px}.vendor-detail .fields{grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px 16px;width:100%;display:grid}.vendor-detail label{color:var(--text-dim);gap:4px;font-size:12px;display:grid}.vendor-detail input,.vendor-detail select,.vendor-detail textarea{background:var(--bg-card);border:1px solid var(--border);color:var(--text);border-radius:8px;width:100%;padding:6px 10px;font-size:14px}.vendor-detail table.contacts td{padding:4px 6px}.vendor-detail table.contacts input{background:0 0;border-color:#0000}.vendor-detail table.contacts input:hover,.vendor-detail table.contacts input:focus{border-color:var(--border);background:var(--bg-card)}.note-form{justify-items:start;gap:8px;width:100%;display:grid}.log,.used-in{width:100%;margin:0;padding:0;list-style:none}.log li{border-bottom:1px solid var(--border);padding:8px 0}.log p{white-space:pre-wrap;margin:2px 0 0}.used-in li{padding:4px 0}button.danger{color:var(--critical);margin-top:18px}.share-panel{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);flex:none;justify-items:start;gap:10px;margin-bottom:14px;padding:14px 16px;display:grid}.share-panel h2{margin:0}.share-panel p{max-width:760px;margin:0}.fresh-link{flex-wrap:wrap;gap:8px;width:100%;display:flex}.fresh-link input{flex:360px;max-width:560px}.share-panel .page-head{align-items:center;width:100%;margin-bottom:0}.fresh-link input{background:var(--bg-card);border:1px solid var(--border);font-family:var(--mono);border-radius:8px;padding:6px 10px;font-size:12.5px}.fresh-link p{flex-basis:100%}.share-links{gap:4px;margin:0;padding:0;list-style:none;display:grid}.share-links li{align-items:center;gap:12px;font-size:13px;display:flex}.shared{max-width:860px;padding-bottom:40px;overflow-y:auto}.lane-counts{flex-wrap:wrap;gap:8px;margin:16px 0 4px;display:flex}.lane-counts div{background:var(--bg-raised);border:1px solid var(--border);border-radius:8px;min-width:92px;padding:8px 12px;display:grid}.lane-counts strong{font-size:20px;font-weight:600}.lane-counts span{color:var(--text-dim);font-size:12px}.lane-counts .dim strong{color:var(--text-faint)}.shared-footer{margin-top:40px}.columns-panel{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);flex:none;max-height:42vh;margin-bottom:14px;padding:14px 16px;overflow-y:auto}.columns-panel h2{margin:0}.columns-panel .page-head{align-items:center;margin-bottom:6px}.columns-panel td{vertical-align:top;padding:6px 8px}.columns-panel input,.columns-panel select{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:4px 8px}.columns-panel input[type=number]{width:70px;margin-left:6px}.row-actions{white-space:nowrap;text-align:right}.danger-text{color:var(--critical)}.lanes{gap:4px;display:grid}.lane-edit{align-items:center;gap:4px;display:flex}.lane-edit>.dim{margin-left:8px}.inline-setting{color:var(--text-dim);font-size:12px}.add-column{gap:8px;margin-top:12px;display:flex}.code-input{font-family:var(--mono);letter-spacing:6px;max-width:200px;font-size:22px}.link-button{color:var(--brand-bright);font-size:inherit;cursor:pointer;background:0 0;border:0;padding:0}.empty-start h2{margin-top:8px}.start-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.start-options button{text-align:left;border-radius:var(--radius);gap:6px;padding:16px;display:grid}.start-options button:hover{border-color:var(--brand)}
