:root{font-family:Segoe UI,Arial,sans-serif;color:#163e34;background:#f1f5f1}*{box-sizing:border-box}body{margin:0}header{padding:22px 5%;background:#123e35;color:white;display:flex;justify-content:space-between;gap:20px;align-items:center}h1{margin:0;font-size:25px}header small{color:#c5d8cb}main{max-width:1300px;margin:25px auto;padding:0 20px}section,.card{background:white;border:1px solid #dbe5dd;padding:22px;border-radius:13px;margin-bottom:18px}nav,.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}nav{margin:20px 0}button{padding:10px 15px;border:1px solid #c4d8ca;border-radius:8px;background:white;color:#204c3d;cursor:pointer;font:inherit}button.primary,button.active{background:#17634e;color:white;border-color:#17634e}button:disabled{opacity:.5;cursor:wait}label{display:block;font-size:14px;margin:15px 0 6px}input,select,textarea{padding:11px;border:1px solid #b9cdbf;border-radius:7px;width:100%;font:inherit;background:white}textarea{min-height:80px}h2{font-size:22px;margin:0 0 15px}h3{font-size:17px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.card strong{display:block;font-size:30px;margin-top:10px}.muted,footer{font-size:14px;color:#667e70}.notice{background:#eaf1eb;padding:15px;border-radius:8px;line-height:1.6}.warning{background:#fff0ce;color:#775307}.bad{background:#fbe0da;color:#932c1b}.badge{display:inline-block;padding:5px 9px;border-radius:20px;background:#e3efe5;font-size:13px}.badge.warning{background:#fff0ce}.badge.bad{background:#fbe0da}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid #e2ebe3;vertical-align:top}th{color:#597465}.scroll{overflow:auto}code{font-size:12px;word-break:break-all}.manual{background:#fffaf0}#message{display:none;position:fixed;right:20px;bottom:20px;background:#173e34;color:white;padding:18px;max-width:90%;border-radius:10px;z-index:20}#workbar{background:#dfebe1;padding:16px;border-radius:10px}#workbar:empty{display:none}#workbar select{width:auto;min-width:200px}footer{max-width:1300px;margin:25px auto;padding:0 20px}.login{max-width:470px;margin:60px auto}.membership{padding:10px;background:#f2f5f1;border-radius:8px;margin:10px 0}.membership select{margin-top:5px}.toolbar{justify-content:space-between}.userlist button{margin:4px}details{border:1px dashed #b6cdbc;border-radius:8px;padding:16px}summary{cursor:pointer;font-weight:bold}#session button{margin-left:8px}form p button{margin-right:6px}@media(max-width:800px){.grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}header{padding:18px;align-items:start;flex-direction:column}main{padding:0 12px}section{padding:15px}#workbar select{max-width:100%;width:100%}}

input[type=checkbox]{width:auto;margin-right:8px}details+details{margin-top:10px}

/* Grouped navigation: native disclosure controls remain keyboard accessible. */
#nav{align-items:flex-start;gap:10px;position:relative;z-index:10}
#nav .navgroup{position:relative;padding:0;margin:0;border:0;border-radius:9px;--nav-ink:#24513c;--nav-bg:#eaf5ec}
#nav .nav-red{--nav-ink:#922d32;--nav-bg:#fcebec}
#nav .nav-green{--nav-ink:#23643b;--nav-bg:#e8f5e9}
#nav .nav-purple{--nav-ink:#59318b;--nav-bg:#f1ebfa}
#nav .nav-yellow{--nav-ink:#70520b;--nav-bg:#fff5cd}
#nav .nav-black{--nav-ink:#263238;--nav-bg:#edf0f2}
#nav .navgroup summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;padding:12px 15px;border:1px solid var(--nav-ink);border-left:5px solid var(--nav-ink);border-radius:9px;color:var(--nav-ink);background:var(--nav-bg);font-size:15px;font-weight:600;min-height:46px}
#nav summary::-webkit-details-marker{display:none}
#nav .nav-selected summary{box-shadow:inset 0 -3px 0 var(--nav-ink)}
#nav .navgroup[open] summary{outline:2px solid var(--nav-ink);outline-offset:2px}
#nav .nav-chevron{font-size:14px;transition:transform .12s}
#nav .navgroup[open] .nav-chevron{transform:rotate(180deg)}
#nav .nav-dropdown{position:absolute;top:calc(100% + 8px);left:0;min-width:240px;max-width:calc(100vw - 24px);padding:6px;background:white;border:1px solid #bccbc0;border-top:4px solid var(--nav-ink);border-radius:9px;box-shadow:0 10px 25px #173e3426;z-index:20}
#nav .nav-dropdown button{display:block;width:100%;text-align:left;border:0;border-radius:5px;padding:11px 12px;margin:0;background:white;color:#163e34;white-space:nowrap}
#nav .nav-dropdown button:hover{background:var(--nav-bg);color:var(--nav-ink)}
#nav .nav-dropdown button.active{background:var(--nav-ink);color:white;font-weight:600}
#nav summary:focus-visible,#nav button:focus-visible{outline:3px solid #126ac2;outline-offset:3px}
#nav .nav-current{flex-basis:100%;margin:3px 0 0;font-size:14px;color:#526a5d}
@media(max-width:600px){#nav .navgroup{width:100%}#nav .nav-dropdown{position:static;min-width:0;max-width:none;box-shadow:none;margin-top:6px}#nav .nav-dropdown button{white-space:normal}}

#workbar .workidentity{margin-left:auto;line-height:1.5}#workbar .worktechnical{margin:3px 0 5px}@media(max-width:600px){#workbar .workidentity{margin-left:0;width:100%}}

#expiry-dialog {
  width: min(760px, calc(100% - 2rem));
  max-height: 85vh;
  padding: 1.25rem;
  border: 2px solid #a52924;
  border-radius: 12px;
  background: #fff;
  color: #231615;
}
#expiry-dialog::backdrop { background: #190b0bb3; }
#expiry-title { color: #a52924; margin-top: 0; }
#expiry-dialog .scroll { max-height: 45vh; overflow: auto; margin-bottom: 1rem; }
