:root{--navy:#002040;--navy-soft:#0a3159;--orange:#f09020;--ink:#16202c;--muted:#6b7a8c;--line:#dfe5ec;--bg:#f4f6f9;--panel:#fff;--client:#1f7a5a;--radius:10px}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);margin:0;padding:0;font:15px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif}button,input,select,textarea{font:inherit;color:inherit}.boot{color:var(--muted);padding:3rem}.app{flex-direction:column;min-height:100vh;display:flex}.topbar{background:var(--navy);color:#fff;align-items:center;gap:2rem;height:60px;padding:0 1.5rem;display:flex}.brand{flex-direction:column;line-height:1.2;display:flex}.brand strong{letter-spacing:.2px;font-size:1rem}.brand-sub{color:#9db4cd;letter-spacing:.6px;text-transform:uppercase;font-size:.72rem}.nav{flex:1;gap:.25rem;display:flex}.nav-item{cursor:pointer;color:#b9cbdd;border-radius:var(--radius);background:0 0;border:0;padding:.5rem .9rem}.nav-item:hover{background:var(--navy-soft);color:#fff}.nav-item.active{background:var(--navy-soft);color:#fff;box-shadow:inset 0 -2px 0 var(--orange)}.who{align-items:center;gap:.75rem;font-size:.88rem;display:flex}.who .link{color:#b9cbdd}.who .link:hover{color:#fff}.org-tag{letter-spacing:.6px;text-transform:uppercase;border-radius:999px;padding:.2rem .5rem;font-size:.68rem;font-weight:700}.org-hunter{background:var(--orange);color:#3a2200}.org-client{color:#123a6b;background:#d8e6ff}.main{flex:1;width:100%;max-width:1500px;margin:0 auto;padding:1.5rem}.banner{color:#6b4b10;background:#fff6e6;border-bottom:1px solid #f0d9ae;padding:.75rem 1.5rem}.banner.error{color:#8a1f1f;background:#fdecec;border-color:#f3c2c2}.login-shell{background:linear-gradient(160deg, var(--navy), #00101f);place-items:center;min-height:100vh;padding:1.5rem;display:grid}.login-card{background:#fff;border-radius:14px;flex-direction:column;gap:.9rem;width:100%;max-width:380px;padding:2rem;display:flex;box-shadow:0 18px 50px #00000059}.login-card h1{color:var(--navy);margin:0;font-size:1.35rem}.login-sub{color:var(--muted);letter-spacing:.6px;text-transform:uppercase;margin:-.6rem 0 .4rem;font-size:.8rem}.login-error{color:#b3261e;margin:0;font-size:.88rem}.ok{color:var(--client);margin:0;font-size:.88rem}label{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.82rem;display:flex}input,select,textarea{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;width:100%;padding:.55rem .65rem}input:focus,select:focus,textarea:focus{outline:2px solid var(--orange);outline-offset:-1px}textarea{resize:vertical}button{background:var(--navy);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:.55rem 1rem}button:hover{background:var(--navy-soft)}button:disabled{opacity:.6;cursor:default}button.link,.link{color:var(--navy);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}button.link:hover{color:var(--orange);background:0 0}.muted{color:var(--muted)}.num{text-align:right;font-variant-numeric:tabular-nums}.grow{flex:1}.tiles{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.25rem;display:grid}.tile{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:.2rem;padding:1.1rem 1.25rem;display:flex}.tile-value{color:var(--navy);font-size:2rem;font-weight:700;line-height:1}.tile-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:.78rem}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:1.25rem;padding:1.25rem}.panel h2{color:var(--navy);margin:0 0 .9rem;font-size:1rem}.panel.internal{border-color:var(--orange);background:#fffaf2}.internal-tag{letter-spacing:.4px;text-transform:uppercase;color:#8a5200;background:#ffe6c2;border-radius:999px;margin-left:.5rem;padding:.15rem .45rem;font-size:.68rem;font-weight:700}.toolbar{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1rem;display:flex}.toolbar h2{color:var(--navy);margin:0;font-size:1.15rem}.search{flex:1;min-width:220px}.toolbar select{width:auto}.grid{border-collapse:collapse;width:100%}.grid th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);border-bottom:1px solid var(--line);padding:.5rem .6rem;font-size:.72rem}.grid td{border-bottom:1px solid #eef2f6;padding:.6rem}.grid tr:last-child td{border-bottom:0}.rows{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.clickable{cursor:pointer}.clickable:hover td{background:#f7fafd}.pill{color:#35485c;background:#eef2f6;border-radius:999px;padding:.18rem .55rem;font-size:.72rem}.pill-open{color:#1b4f8a;background:#e7f0fb}.pill-client{color:#14624a;background:#e3f5ec}.pill-closed{color:#5b6875;background:#eceff2}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem;margin-bottom:.9rem;display:grid}.form label{margin-bottom:.8rem}.actions{align-items:center;gap:1rem;margin-top:.4rem;display:flex}.checkbox{color:var(--ink);flex-direction:row;align-items:center;gap:.45rem;font-size:.85rem}.checkbox input{width:auto}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.9rem;display:grid}.field{flex-direction:column;gap:.3rem;display:flex}.field-label{text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-size:.72rem}.roles-line{margin:1rem 0 0;font-size:.9rem}.feed{flex-direction:column;gap:.7rem;margin:0;padding:0;font-size:.9rem;list-style:none;display:flex}.feed li{border-bottom:1px solid #eef2f6;padding-bottom:.7rem}.feed li:last-child{border-bottom:0;padding-bottom:0}.feed p{margin:.35rem 0 0}.internal-comment{border-left:3px solid var(--orange);background:#fffaf2;padding-left:.7rem}.docs{margin:0 0 .9rem;padding:0;font-size:.9rem;list-style:none}.docs li{padding:.35rem 0}.empty{text-align:center;color:var(--muted);padding:2.5rem 1rem}.empty h3{color:var(--ink);margin:0 0 .4rem;font-size:1rem}@media (max-width:720px){.topbar{flex-wrap:wrap;gap:.75rem;height:auto;padding:.75rem 1rem}.main{padding:1rem}}.link.danger{color:#b3261e}.link.danger:hover{color:#8a1f1f}.req{max-width:380px;font-size:.82rem}.banner.shared{color:#14624a;background:#e9f6ef;border-color:#bfe3d0}.struck{opacity:.75;text-decoration:line-through}.order{white-space:nowrap}.order .link{padding:0 .15rem;font-size:1.05rem;text-decoration:none}.order .link:disabled{opacity:.25;cursor:default}.universe-head{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.75rem;display:flex}.universe-head .search{flex:1;min-width:240px}.universe-head select{width:auto}.hint{color:var(--muted);margin:0 0 1rem;font-size:.84rem}.seg{background:#e8edf3;border-radius:9px;gap:2px;padding:2px;display:inline-flex}.seg-item{color:#47586b;white-space:nowrap;background:0 0;border-radius:7px;padding:.38rem .7rem;font-size:.84rem;line-height:1.2}.seg-item:hover{color:var(--navy);background:#dde4ec}.seg-item.on{color:var(--navy);background:#fff;font-weight:600;box-shadow:0 1px 2px #00204024}.seg-count{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:.35rem;font-size:.74rem}.seg-item.on .seg-count{color:var(--orange)}button.primary{background:var(--navy)}button.ghost{color:var(--navy);border:1px solid var(--line);background:0 0}button.ghost:hover{background:#eef2f6}.selection-bar{z-index:5;background:var(--navy);color:#fff;border-radius:10px;flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1rem;padding:.55rem .9rem;display:flex;position:sticky;top:.5rem;box-shadow:0 8px 22px #00204038}.selection-bar .ghost{color:#cfdcea;border-color:#2b4d73}.selection-bar .ghost:hover{background:var(--navy-soft)}.selection-bar .primary{background:var(--orange);color:#3a2200;font-weight:600}.selection-bar .primary:hover{background:#ffa63c}.board{align-items:flex-start;gap:.6rem;padding-bottom:1rem;display:flex;overflow-x:auto}.column{background:#eaeef3;border:1px solid #0000;border-radius:12px;flex-direction:column;flex:210px;min-width:206px;max-width:320px;max-height:74vh;transition:flex-basis .12s,min-width .12s;display:flex}.column.slim{flex:0 0 42px;min-width:42px;height:230px}.column.slim .column-head{flex-direction:column-reverse;align-items:center;gap:.4rem;padding:.6rem .2rem}.column.slim .column-title{writing-mode:vertical-rl;text-orientation:mixed}.column.slim .column-group{display:none}.column.slim .column-head h3{color:#6b7a8c;white-space:nowrap;text-overflow:ellipsis;max-height:178px;font-size:.78rem;font-weight:500;overflow:hidden}.column.slim .column-body{display:none}.board.dragging .column{outline-offset:-3px;outline:1px dashed #c2cedb}.column.over{border-color:var(--orange);background:#fdf3e4}.column-head{justify-content:space-between;align-items:flex-start;gap:.5rem;padding:.7rem .8rem .5rem;display:flex}.column-head h3{color:var(--navy);margin:0;font-size:.88rem}.column-group{letter-spacing:.7px;text-transform:uppercase;color:var(--muted);font-size:.64rem}.column-count{color:#47586b;font-variant-numeric:tabular-nums;background:#dbe2ea;border-radius:999px;padding:.1rem .45rem;font-size:.74rem}.column-body{flex-direction:column;gap:.5rem;padding:0 .55rem .55rem;display:flex;overflow-y:auto}.column-empty{text-align:center;color:#94a4b5;border:1px dashed #c8d2dd;border-radius:9px;margin:0;padding:.9rem .6rem;font-size:.78rem}.column.bucket-closed{background:#edeff1}.column.bucket-client{background:#e8f1ec}.card{border:1px solid var(--line);cursor:grab;background:#fff;border-left:3px solid #c3ced9;border-radius:9px;padding:.5rem .6rem;box-shadow:0 1px 2px #0020400f}.card:hover{box-shadow:0 4px 14px #00204021}.card:active{cursor:grabbing}.card.is-shared{border-left-color:var(--client)}.card-top{align-items:flex-start;gap:.35rem;display:flex}.card-name{color:var(--navy);text-align:left;background:0 0;flex:1;padding:0;font-size:.9rem;font-weight:600;line-height:1.3}.card-name:hover{color:var(--orange);background:0 0;text-decoration:underline}.card-where{color:#47586b;margin:.1rem 0 .35rem;font-size:.78rem;line-height:1.3}.card-roles{margin-bottom:.3rem}.card-roles:empty{display:none}.card-foot{border-top:1px solid #f0f3f7;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.3rem .35rem;padding-top:.35rem;display:flex}.card-foot .cell{max-width:118px}.share{color:#5a6b7d;border:1px solid var(--line);white-space:nowrap;background:#f0f3f7;border-radius:999px;align-items:center;gap:.35rem;padding:.2rem .5rem .2rem .4rem;font-size:.74rem;font-weight:600;display:inline-flex}.share:hover{color:var(--navy);background:#e5eaf1}.share-dot{background:#97a5b4;border-radius:50%;width:7px;height:7px}.share.on{color:#14624a;background:#e3f5ec;border-color:#bfe3d0}.share.on:hover{background:#d3eee1}.share.on .share-dot{background:var(--client);box-shadow:0 0 0 3px #1f7a5a29}select.cell{cursor:pointer;background-color:#0000;border-color:#0000;border-radius:6px;width:auto;max-width:150px;padding:.2rem 1.2rem .2rem .4rem;font-size:.8rem}select.cell:hover{border-color:var(--line);background-color:#fff}.picker{display:inline-block;position:relative}.picker-button{color:inherit;text-align:left;background:0 0;border-radius:6px;flex-wrap:wrap;gap:.25rem;padding:.18rem .3rem;font-size:.8rem;display:flex}.picker-button:hover{background:#eef2f6}.picker-menu{z-index:20;border:1px solid var(--line);background:#fff;border-radius:9px;min-width:190px;padding:.3rem;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 12px 30px #00204033}.picker-row{color:var(--ink);cursor:pointer;border-radius:6px;flex-direction:row;align-items:center;gap:.5rem;padding:.35rem .45rem;font-size:.84rem;display:flex}.picker-row:hover{background:#f2f5f9}.picker-row input{width:auto}.chip{color:#2b4664;white-space:nowrap;background:#e7edf4;border:1px solid #0000;border-radius:999px;padding:.1rem .45rem;font-size:.72rem;display:inline-block}button.chip{cursor:pointer}button.chip:hover{background:#dae3ee}button.chip.on{background:var(--navy);color:#fff}.role-row{flex-wrap:wrap;align-items:center;gap:.4rem;margin:.2rem 0 .6rem;display:flex}.table-wrap{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);max-height:74vh;overflow:auto}.grid.sticky thead th{z-index:2;background:#f7f9fb;position:sticky;top:0}.grid.rows tbody tr:hover{background:#f7f9fb}.grid.rows tbody tr.picked{background:#fff6e6}.cell-link{color:var(--navy);text-align:left;background:0 0;padding:0;font-weight:600}.cell-link:hover{color:var(--orange);background:0 0;text-decoration:underline}.tick{text-align:center;width:2.2rem}.tick input{cursor:pointer;width:auto;margin:0}.tile-accent{border-color:var(--orange);background:#fffaf2}.tile-accent .tile-value{color:#8a5200}button.tile{text-align:left;font:inherit;cursor:pointer;width:100%}button.tile:hover{border-color:var(--navy)}.li{letter-spacing:-.02em;color:#fff;background:#0a66c2;border-radius:3px;flex:none;place-items:center;width:17px;height:17px;font-size:.64rem;font-weight:800;line-height:1;text-decoration:none;display:inline-grid}a.li:hover{background:#004182}.li.off{color:#a7b3c0;cursor:default;background:#e3e8ee}.name-cell{align-items:center;gap:.4rem;display:flex}button.danger:not(.link){color:#fff;background:#b3261e}button.danger:not(.link):hover{background:#8a1f1f}.selection-bar .danger{background:#d43b31}.selection-bar .danger:hover{background:#b3261e}.row-actions{white-space:nowrap;justify-content:flex-end;align-items:center;gap:.9rem;font-size:.84rem;display:flex}
