:root{--bg:#f4f7fb;--fg:#17263f;--card:#fff;--accent:#3566df;--line:#dce4f0;--muted:#63748b;--danger:#c43245}*{box-sizing:border-box}body{font:15px/1.45 system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--fg);margin:0}.shell{max-width:940px;margin:auto;padding:18px 16px 92px}header,.row,.tabs,.metrics,.actions{display:flex;gap:10px;align-items:center;justify-content:space-between}header{margin-bottom:20px}.logo{font-size:22px;font-weight:800}.small,.muted{font-size:12px;color:var(--muted)}.pill{font-size:12px;padding:4px 9px;background:#e9efff;color:#234eae;border-radius:20px;white-space:nowrap}.warning{background:#fff3d6;color:#8c5c00}.success{background:#ddf7e9;color:#116e45}h2{font-size:22px;margin:18px 0 12px}h3{font-size:16px;margin:5px 0 12px}.card{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:16px;margin-bottom:12px;box-shadow:0 1px 4px #203f6010}.click{cursor:pointer}.click:hover{border-color:var(--accent)}.metrics{gap:8px}.metric{flex:1;min-width:0}.metric strong{font-size:24px;display:block}button{font:inherit;border:1px solid var(--line);border-radius:10px;padding:10px 14px;background:#fff;color:var(--fg);cursor:pointer}button.primary{background:var(--accent);color:white;border-color:var(--accent)}button:disabled{opacity:.55;cursor:not-allowed}input,select,textarea{font:inherit;border:1px solid var(--line);border-radius:9px;padding:10px;width:100%;background:white;color:var(--fg)}textarea{min-height:76px;resize:vertical}label{display:block;color:var(--muted);font-size:12px;margin:8px 0 5px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.field{min-width:0}.tabs{overflow:auto;justify-content:flex-start;margin:12px 0}.tabs button{white-space:nowrap}.tabs .active{background:#e9efff;color:var(--accent);border-color:var(--accent)}.bottom{position:fixed;bottom:0;left:0;right:0;background:var(--card);border-top:1px solid var(--line);padding:10px max(12px,env(safe-area-inset-right));display:flex;justify-content:center;gap:16px;z-index:3}.item-title{font-weight:700;font-size:16px}.line{padding:10px 0;border-bottom:1px solid var(--line)}.line:last-child{border:0}.error{background:#ffebeb;color:var(--danger);padding:12px;border-radius:10px;margin:10px 0}.notice{background:#eaf3ff;border-radius:10px;padding:10px;color:#23519a;margin:10px 0}.gap{height:10px} @media(max-width:520px){.grid{grid-template-columns:1fr 1fr}.shell{padding:12px 12px 95px}.logo{font-size:19px}.card{padding:13px}.metrics .card{padding:10px}.metric strong{font-size:21px}}

.quote-version{padding:12px 0;border-bottom:1px solid var(--line)}.quote-version summary{display:flex;gap:12px;justify-content:space-between;cursor:pointer;flex-wrap:wrap}.quote-version[open] summary{margin-bottom:12px}.board-grid{display:grid;grid-template-columns:repeat(4,minmax(190px,1fr));gap:12px;overflow-x:auto}.board-column{background:#eaf0f9;border-radius:12px;padding:10px;min-height:190px}.board-column .card{padding:11px}.board-column h3{margin:5px 0 14px}.bottom{flex-wrap:wrap;gap:8px}.bottom button{padding:8px 10px}@media(max-width:660px){.board-grid{display:flex;flex-direction:column}.board-column{min-height:0}}

/* Supply Desk v0.4.2: Kanban drag and drop */
.task-card[draggable="true"]{cursor:grab;user-select:none;touch-action:auto}
.task-card[draggable="true"]:active{cursor:grabbing}
.task-card.dragging{opacity:.45;border-style:dashed}
.board-column.drop-target{outline:2px dashed var(--accent);outline-offset:-4px;background:#dce8ff}
.task-card:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
