:root{--nav:#092f34;--teal:#0b696c;--gold:#d1a04b;--bg:#f3f7f6;--panel:#fff;--text:#193a3e;--muted:#729093;--border:#dfebea;--red:#b64448;--green:#1c8364}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 Inter,'Segoe UI',Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}h1,h2,h3,p{margin:0}h1{font-size:28px;letter-spacing:-.8px}h2{font-size:18px;letter-spacing:-.35px}h3{font-size:15px}small,.muted{color:var(--muted)}.loading{padding:70px;text-align:center}.shell{display:flex;min-height:100vh}.sidebar{width:250px;background:var(--nav);color:#c2d9d8;padding:22px 15px;display:flex;flex-direction:column;flex-shrink:0;position:sticky;top:0;height:100vh}.brand{display:flex;gap:10px;align-items:center;color:white;font-size:22px;font-weight:850;letter-spacing:-1px;padding:5px 10px 30px}.mark{background:linear-gradient(145deg,#e6bd65,#bb8530);color:#133739;border-radius:12px;padding:7px 12px;font-size:19px}.brand small{font-size:10px;letter-spacing:1.8px;color:#9ebbb9;display:block;font-weight:500}.nav{width:100%;border:0;background:transparent;color:#c0d7d6;text-align:left;border-radius:11px;padding:12px 13px;margin:2px 0;font-weight:650}.nav.active,.nav:hover{background:#ffffff1a;color:white}.sidefoot{margin-top:auto;padding:14px;border:1px solid #ffffff20;border-radius:12px;font-size:12px}.sidefoot strong{display:block;color:white}.work{width:100%;max-width:1600px;margin:auto;padding:29px clamp(16px,3.5vw,55px) 55px;min-width:0}.topbar,.between,.toolbar,.actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.topbar{margin-bottom:25px}.eyebrow{font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:1.4px;color:var(--teal);margin-bottom:4px}.subtitle{color:var(--muted);font-size:13px}.btn{border:1px solid var(--border);border-radius:10px;background:white;color:var(--text);font-weight:700;padding:10px 15px;min-height:40px}.btn:hover{filter:brightness(.97)}.btn.primary{background:var(--teal);color:white;border-color:var(--teal)}.btn.gold{background:var(--gold);border-color:var(--gold)}.btn.danger{color:var(--red)}.btn.sm{padding:6px 9px;min-height:30px;font-size:12px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat,.panel,.card{background:var(--panel);border:1px solid var(--border);border-radius:15px;padding:20px}.stat strong{display:block;font-size:32px;letter-spacing:-1px;margin:8px 0 2px}.stat .symbol{font-size:23px}.stat small{font-size:12px}.twocol{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}.panel{margin-bottom:16px}.panelhead{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:15px}.taskrow{display:flex;align-items:center;gap:12px;padding:14px 0;border-top:1px solid #edf2f1}.taskrow:first-of-type{border-top:0}.taskrow>div:nth-child(2){flex:1;min-width:0}.link{border:0;background:none;padding:0;text-align:left;font-weight:750;color:var(--text)}.link:hover{text-decoration:underline}.meta{display:flex;gap:7px;align-items:center;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-top:5px}.pill{border-radius:6px;background:#e8f2f1;color:#267277;padding:3px 8px;font-size:11px;font-weight:750;white-space:nowrap}.pill.high,.pill.urgent{background:#fff0d9;color:#9e6616}.pill.urgent{background:#ffe5e5;color:#ac343c}.pill.overdue{background:#ffe7e7;color:#ae3a42}.pill.done{background:#e3f7ec;color:#277a57}.pill.review{background:#efe8ff;color:#70549b}.pill.doing{background:#e5f0ff;color:#4268a7}.pill.todo{background:#edf3f3;color:#53787b}.tablewrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:700px}.table th{color:#789294;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.5px;padding:11px;border-bottom:1px solid var(--border)}.table td{padding:13px 11px;border-bottom:1px solid #edf2f1;font-size:12px}.formfield{display:flex;flex-direction:column;gap:5px}.formfield label{font-size:12px;font-weight:750;color:#476c6d}.field{background:white;border:1px solid #d1e1df;color:var(--text);border-radius:9px;padding:10px 12px;min-width:0;width:100%}.field:focus{outline:2px solid #99c8c5}.filterbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.filterbar .field{width:auto;max-width:220px}.filterbar input{flex:1;max-width:none!important;min-width:200px}.kanban{display:grid;grid-template-columns:repeat(4,minmax(210px,1fr));gap:13px;overflow:auto}.lane{background:#eaf2f1;padding:13px;border-radius:14px;min-height:340px}.laneheader{font-weight:800;display:flex;justify-content:space-between;margin:0 0 15px}.kanbanitem{background:white;border:1px solid var(--border);border-radius:11px;padding:13px;margin-bottom:10px}.kanbanitem .link{display:block;margin:6px 0 12px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.staffrow{padding:12px 0;border-top:1px solid #edf2f1}.notification{padding:13px 0;border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:15px}.notification.unread{background:#f2faf9}.empty{text-align:center;padding:38px 10px;color:var(--muted)}.modalback{position:fixed;inset:0;background:#09272db8;display:flex;justify-content:center;align-items:center;padding:16px;z-index:50}.modal{background:white;padding:25px;border-radius:17px;width:min(650px,100%);max-height:94vh;overflow:auto;box-shadow:0 20px 80px #0004}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.wide{grid-column:1/-1}.formgrid textarea{min-height:80px;resize:vertical}.modalbuttons{margin-top:20px;display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap}.authwrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 20% 10%,#146d70,var(--nav) 65%)}.authcard{width:min(420px,100%);background:white;border-radius:19px;padding:30px;box-shadow:0 20px 70px #0003}.authcard .formfield{margin-top:15px}.authcard .btn{width:100%;margin-top:19px}.authcard p{color:var(--muted);margin-top:8px}.error{color:var(--red);font-size:12px;min-height:18px}#toast{position:fixed;right:18px;bottom:20px;z-index:100}.toast{background:var(--nav);color:white;border-radius:10px;padding:13px 18px;margin-top:8px;box-shadow:0 7px 22px #0002}.notifcount{background:var(--gold);color:#132e30;border-radius:12px;padding:1px 7px;font-weight:800}.note{font-size:12px;color:var(--muted);padding:13px 0}.audit{padding:10px 0;border-top:1px solid var(--border);font-size:12px}.mobiletoggle{display:none}@media(max-width:1040px){.stats{grid-template-columns:repeat(2,1fr)}.twocol{grid-template-columns:1fr}.grid3{grid-template-columns:repeat(2,1fr)}.sidebar{width:215px}.work{padding:26px 20px}}@media(max-width:720px){.shell{display:block}.sidebar{position:fixed;z-index:40;transform:translateX(-110%);transition:transform .15s;width:255px}.sidebar.show{transform:none}.mobiletoggle{display:inline-flex}.work{padding:18px 13px}.topbar{align-items:flex-start}.topbar h1{font-size:24px}.stats{gap:8px}.stat{padding:15px}.stat strong{font-size:25px}.grid3{grid-template-columns:1fr}.kanban{grid-template-columns:repeat(4,245px)}.formgrid{grid-template-columns:1fr}.wide{grid-column:auto}.filterbar .field{max-width:100%}}

/* v3: touch-friendly mobile navigation and accessible organizational mindmap */
.bottomnav{display:none}.nav-shade{display:none}.mindmap-panel{overflow:hidden}.mindmap-viewport{overflow:auto;overscroll-behavior:contain;max-height:calc(100vh - 255px);min-height:420px;border:1px solid var(--border);border-radius:14px;background:radial-gradient(#d9e8e6 1px,transparent 1px);background-size:20px 20px;padding:28px;touch-action:pan-x pan-y}.mindmap-canvas{min-width:max-content;transform-origin:top left;padding:20px}.mindmap-root{display:flex;align-items:center;gap:30px}.mindmap-root>ul{margin:0;padding:0;list-style:none}.mindmap-root ul{list-style:none;margin:0 0 0 26px;padding:0 0 0 28px;border-left:2px solid #b4d3d0}.mindmap-root li{position:relative;margin:11px 0}.mindmap-root li:before{content:"";position:absolute;left:-28px;top:24px;width:27px;border-top:2px solid #b4d3d0}.tree-node{display:inline-flex;align-items:center;gap:10px;min-height:47px;padding:9px 13px;background:white;border:1px solid #d7e8e6;border-radius:11px;box-shadow:0 3px 10px #092f3410;max-width:420px}.tree-node small{font-size:11px;color:var(--muted);white-space:nowrap}.tree-node strong{white-space:nowrap}.tree-company{background:var(--nav);color:white;border:0;flex-direction:column;gap:1px;padding:19px 22px}.tree-company small{color:#b9d7d5}.tree-dept{border-left:5px solid #b88d3c}.tree-project{border-left:5px solid var(--teal)}.tree-task{width:320px;max-width:320px;border-left:5px solid #8dabad;text-align:left}.tree-task.doing{border-left-color:#4889d3}.tree-task.review{border-left-color:#9772d6}.tree-task.done{border-left-color:#2b956e}.tree-task.late{box-shadow:0 0 0 2px #f2abab}.tree-task:hover{background:#f1f9f8}.tree-label{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:650}.tree-dot{width:7px;height:7px;border-radius:100%;background:#a1b5b7;flex-shrink:0}.tree-toggle{width:28px;height:28px;min-width:28px;border-radius:7px;background:#eef5f4;border:0;font-weight:900;color:var(--teal)}.tree-empty{display:inline-block;color:var(--muted);padding:8px}.map-key{display:flex;flex-wrap:wrap;gap:12px;font-size:11px;color:var(--muted);margin-bottom:13px}#mapScale{font-size:12px;font-weight:700;color:var(--teal)}
@media(max-width:720px){.work{padding:16px 12px 100px}.bottomnav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:35;height:calc(62px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:white;border-top:1px solid var(--border);box-shadow:0 -4px 19px #092f3410}.bottom-link{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;border:0;background:transparent;color:#678385;padding:5px 0}.bottom-link span{font-size:21px;line-height:24px}.bottom-link small{font-size:10px;color:inherit}.bottom-link.active{color:var(--teal);font-weight:800}.nav-shade.visible{display:block;position:fixed;inset:0;background:#001b2070;z-index:39}.topbar .actions{width:100%;gap:7px}.topbar .actions .btn{flex:1;min-width:0}.topbar .actions #mobileMenu{display:none}.topbar{gap:12px}.mindmap-viewport{min-height:400px;max-height:62vh;padding:12px}.mindmap-panel{padding:12px}.mindmap-panel .panelhead{align-items:flex-start;flex-direction:column}.mindmap-root{gap:20px}.modalback{align-items:flex-end;padding:0}.modal{border-radius:18px 18px 0 0;max-height:94dvh;padding:20px 15px calc(20px + env(safe-area-inset-bottom))}.btn,.field{min-height:44px}.btn.sm{min-height:36px}.taskrow{align-items:flex-start}.taskrow>.pill{max-width:105px;overflow:hidden;text-overflow:ellipsis}}
