:root{color-scheme:dark;--bg:#171916;--surface:#20231f;--raised:#2a2e27;--line:#363b32;--text:#f2f1e9;--muted:#a3a99b;--accent:#c8dfa3;--paper:#e3e8d9;--ink:#23291d;--red:#f0aaa0;--amber:#e9ca90;--radius:18px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variant-numeric:tabular-nums}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:14px;line-height:1.5}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}a{color:inherit}svg{width:21px;height:21px;stroke:currentColor;stroke-width:1.55;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button:disabled{opacity:.45;cursor:not-allowed}button:active:not(:disabled){transform:translateY(1px)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
h1,h2,h3,p{margin-top:0}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}h1{font-size:clamp(32px,5vw,48px);font-weight:500;line-height:1.05;letter-spacing:-.055em;margin-bottom:12px}h2{font-size:22px;font-weight:500;line-height:1.2;letter-spacing:-.035em}h3{font-size:15px;font-weight:500;margin-bottom:7px}.muted,.caption{color:var(--muted)}.caption{font-size:12px;line-height:1.6;margin-bottom:0}.eyebrow,.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;font-weight:400;letter-spacing:.075em;text-transform:uppercase}.eyebrow{color:var(--muted);margin-bottom:12px}.shell{max-width:1040px;margin:auto;padding:0 32px 105px}body[data-role=employee] .shell{max-width:504px;padding:0 28px 100px}.topbar{height:100px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none}.brand-mark{width:33px;height:33px;color:var(--accent)}.brand>span{display:flex;align-items:baseline;gap:9px;font-size:30px;letter-spacing:-1.8px;font-weight:650}.brand-divider{font-size:22px;font-weight:300;color:#717966}.brand-sub{font-size:10px;font-weight:400;letter-spacing:.01em;color:var(--muted)}.account{display:flex;align-items:center;gap:13px}.account>span:first-child{font-size:11px;color:var(--muted)}body[data-role=employee] .account>span:first-child{display:none}.avatar{width:34px;height:34px;border-radius:50%;border:1px solid #4b5540;color:var(--accent);display:grid;place-items:center;font-size:12px;background:#272e22}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:30px 0 34px}.page-heading .caption{max-width:540px}.refresh{width:40px;min-width:40px;height:40px;border-radius:50%;background:transparent;color:var(--muted);border:1px solid var(--line);display:grid;place-items:center;transition:background .18s,color .18s}.refresh:hover{background:var(--raised);color:var(--text)}.refresh svg{width:17px;height:17px}.heading-copy .eyebrow{margin-bottom:12px}
.home-intro{position:relative;padding:22px 0 24px;isolation:isolate;min-height:186px}.home-intro h1{font-size:64px;line-height:.96;letter-spacing:-4px;margin-bottom:0;position:relative;z-index:1;font-weight:450}.home-intro h1 span{color:var(--accent)}.home-intro .eyebrow{font-family:inherit;font-size:12px;letter-spacing:0;text-transform:none;margin-bottom:21px;color:#bfc5b5}.network-art{position:absolute;right:-19px;bottom:-6px;width:190px;height:190px;z-index:-1;stroke:#8a9f73;stroke-width:.65;opacity:.5;pointer-events:none}.intro-baseline{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:16px 0;margin-bottom:23px}.access-state{display:inline-flex;align-items:center;gap:8px;font-size:11px;color:var(--accent)}.dot{width:5px;height:5px;border-radius:50%;display:inline-block;background:currentColor;flex-shrink:0}.intro-baseline .mono{font-size:9px;color:var(--muted)}.hero-summary{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.hero-summary h2{font-size:12px;letter-spacing:0;margin:0;color:var(--muted)}.hero-summary>span{font-size:9px;color:var(--muted)}
.key-card{position:relative;background:var(--paper);color:var(--ink);border-radius:19px;overflow:hidden;isolation:isolate}.pass-top{display:flex;align-items:center;justify-content:space-between;padding:20px 22px 16px}.pass-top .mono{color:#535c48;font-size:9px;letter-spacing:.09em}.pass-brand{font-weight:650;font-size:16px;letter-spacing:-1px}.pass-body{padding:0 22px 22px}.pass-identity{display:flex;justify-content:space-between;align-items:center;padding:6px 0 18px;border-bottom:1px dashed #a7b09a;position:relative}.pass-identity h2{font-size:30px;font-weight:500;line-height:1.08;letter-spacing:-1px;margin:0 0 11px}.pass-identity .badge{padding:0;background:transparent;color:#52663e;font-size:10px}.pass-symbol{position:relative;width:59px;height:65px;transform:rotate(-12deg);margin-right:4px}.pass-symbol:before,.pass-symbol:after{content:'';position:absolute;width:26px;height:58px;border:1.5px solid #738061;border-radius:22px;left:8px;top:0;transform:rotate(32deg)}.pass-symbol:after{left:25px;top:7px}.pass-number{font:10px ui-monospace,monospace;position:absolute;right:0;bottom:-22px;background:var(--paper);padding-left:8px;color:#59634e;z-index:1}.pass-traffic{display:flex;justify-content:space-between;align-items:baseline;padding-top:20px;gap:8px}.pass-traffic .eyebrow{font-size:9px;letter-spacing:.025em;color:#59634e;margin:0}.traffic-amount{font-size:15px;font-weight:500;letter-spacing:-.3px}.traffic-amount small{font-size:11px;font-weight:400;color:#59634e;margin-left:3px}progress{appearance:none;display:block;width:100%;height:3px;border:0;border-radius:3px;overflow:hidden;background:#bfc9b0;margin:12px 0 10px}progress::-webkit-progress-bar{background:#c1cbb3}progress::-webkit-progress-value{background:#475b32;border-radius:3px}progress::-moz-progress-bar{background:#475b32}.pass-meta{display:flex;justify-content:space-between;gap:8px;font-size:10px;color:#59634e;line-height:1.6}.pass-actions{display:flex;gap:8px;margin-top:19px}.pass-actions .primary{background:#252d1e;color:#edf2e5;flex:1;justify-content:space-between;padding:12px 16px}.pass-actions .primary:hover{background:#3d4d2e}.pass-actions .secondary{width:45px;min-width:45px;min-height:45px;padding:0;display:grid;place-items:center;background:transparent;border-color:#b4bfa4;color:#3f4e32}.pass-actions .secondary:hover{background:#d3dcc6}.key-card.revoked{background:#d2d6cd}.key-card.pending{background:#e7dfca}.key-card .badge.amber{color:#745b2d}.key-card .badge.gray{color:#606858}.pass-history{padding:0 22px 18px}.pass-history .caption{color:#636c59}.pending-info{font-size:12px;color:#5b624e;margin:10px 0 0}.pass-no-key{padding:26px}.pass-no-key h2{font-size:31px}.pass-no-key p{font-size:12px;max-width:290px;color:#606951;margin-bottom:22px}
.quick-check{display:flex;align-items:center;width:100%;text-align:left;justify-content:space-between;background:transparent;color:var(--text);padding:22px 0 19px;border-bottom:1px solid var(--line);margin-top:5px;border-radius:0;transition:color .18s}.quick-check:hover{color:var(--accent)}.quick-check strong{font-size:16px;font-weight:450;letter-spacing:-.35px;display:block}.quick-check small{color:var(--muted);font-size:11px;display:block;margin-top:5px}.arrow-circle{width:40px;height:40px;border:1px solid #48523d;border-radius:50%;display:grid;place-items:center;color:var(--accent);flex-shrink:0;margin-left:14px}.arrow-circle svg{transform:rotate(-35deg);width:18px;height:18px}.help-row{display:flex;justify-content:space-between;align-items:center;padding:18px 0 4px;gap:12px}.help-row p{font-size:10px;color:var(--muted);margin:0}.help-row button{background:none;color:#d0d7c7;display:flex;align-items:center;gap:6px;font-size:11px;min-height:40px;padding:0}.help-row button:hover{color:var(--accent)}.help-row svg{width:14px;height:14px}.outline-mark{width:23px;height:23px;display:grid;place-items:center;border:1px solid #5f6956;border-radius:7px;color:var(--accent);margin-right:8px}.outline-mark svg{width:14px;height:14px}.outline-hint{display:flex;align-items:center}.section-label{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--muted);margin:25px 0 14px}.section-label span{font:9px ui-monospace,monospace;color:var(--muted)}.primary,.secondary,.danger,.text-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 17px;border-radius:10px;font-size:12px;font-weight:500;text-decoration:none;transition:background .18s,color .18s,border-color .18s,transform .12s}.primary{background:var(--accent);color:#252d1d}.primary:hover{background:#d7ebbd}.secondary{border:1px solid #434c3b;background:#242a20;color:var(--text)}.secondary:hover{background:#333c2b}.danger{color:var(--red);background:#392a25}.text-button{padding:6px 0;min-height:40px;background:none;color:var(--accent);justify-content:flex-start}.text-button:hover{color:#e4f2d0}.full{width:100%}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:21px}.actions>*{flex:1}.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:5px;font-size:10px;line-height:1.4;background:#303b25;color:var(--accent);white-space:nowrap}.badge.gray{background:#2e332b;color:#b2baa9}.badge.amber{background:#393427;color:var(--amber)}.badge.red{background:#3e2d28;color:var(--red)}.notice{display:flex;gap:10px;color:var(--muted);font-size:11px;line-height:1.65;border-left:1px solid #5b6c47;padding:2px 0 2px 13px;margin:20px 0 25px}.notice svg{width:16px;height:16px;margin-top:2px}.notice.amber{color:var(--amber);border-color:var(--amber)}.key-list{display:grid;grid-template-columns:1fr;gap:20px}.keys-summary{display:flex;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;margin-bottom:26px;gap:26px}.keys-summary div{flex:1}.keys-summary strong{font-size:27px;letter-spacing:-1px;font-weight:450}.keys-summary strong small{color:var(--muted);font-size:14px;letter-spacing:0}.keys-summary p{font-size:10px;color:var(--muted);margin:5px 0 0}.empty{border-top:1px solid var(--line);padding:34px 0}.empty>svg{width:28px;height:28px;color:var(--accent);margin-bottom:20px}.empty h2{font-size:27px}.empty p{font-size:13px;color:var(--muted);max-width:430px;margin-bottom:25px}.panel{padding:25px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.panel-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:24px}.panel-top h2,.panel-top h3{margin:0}.panel-top>svg{color:var(--muted)}.grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.diagnostic-list{border-top:1px solid var(--line)}.diagnostic-item{padding:26px 0;border-bottom:1px solid var(--line)}.diagnostic-title{display:flex;align-items:center;gap:12px}.diagnostic-title>svg{color:var(--accent);width:22px;height:22px}.diagnostic-title h2{font-size:21px;margin:0;flex:1}.diagnostic-title .mono{color:var(--muted);font-size:9px}.diagnostic-item .caption{font-size:12px;max-width:420px;margin-top:13px}.diagnostic-item .actions{margin-top:19px}.result{border-left:2px solid var(--accent);padding:3px 0 3px 15px;margin-top:22px;color:var(--accent)}.result strong{font-size:17px;font-weight:450;display:block;letter-spacing:-.4px}.result p{color:var(--muted);font-size:10px;margin:5px 0 0}.result.fail{border-color:var(--red);color:var(--red)}.error{color:var(--red);font-size:12px}.loading{display:flex;align-items:center;gap:12px;min-height:240px;justify-content:center;color:var(--muted);font-size:12px}.loading:before{content:'';width:15px;height:15px;border:1px solid #46523b;border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.fatal{margin:35px 0}.fatal>svg{color:var(--accent);margin-bottom:30px}.fatal h1{font-size:35px}.fatal p{color:var(--muted);font-size:13px}.fatal .primary{margin-top:13px}.access-wait{padding:27px 0 0}.access-wait h2{font-size:28px}.access-wait p{font-size:13px;color:var(--muted);margin-bottom:26px}.wait-index{display:block;font:12px ui-monospace,monospace;color:var(--accent);margin-bottom:20px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:36px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stats>div{padding:23px 25px 23px 0;position:relative}.stats>div+div{padding-left:26px;border-left:1px solid var(--line)}.stats p{font-size:11px;color:var(--muted);margin-bottom:12px}.stats strong{font-size:46px;font-weight:450;letter-spacing:-2px;line-height:1}.stats .stat-index{position:absolute;right:22px;bottom:25px;font:9px ui-monospace,monospace;color:#77816b}.admin-surface{background:none;border:0;border-radius:0;padding:0}.admin-overview{gap:40px}.admin-overview .panel-top{margin-bottom:23px}.admin-overview h2{font-size:20px}.split{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.split>span:first-child{color:var(--muted)}.split strong{font-size:11px;font-weight:450;text-align:right}.split .server-dot{color:var(--accent);font-size:9px;display:flex;align-items:center;gap:6px}.server-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px;border-top:1px solid var(--line)}.server-item{border-bottom:1px solid var(--line);padding:25px 0}.server-index{font:10px ui-monospace,monospace;color:#879778;margin-bottom:28px;display:flex;justify-content:space-between}.server-item h2{font-size:23px;max-width:350px;min-height:56px;margin-bottom:15px}.server-item .split{border:0;padding:6px 0}.server-sub{font:10px ui-monospace,monospace;color:var(--muted)}.server-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:15px;gap:12px}.server-bottom .text-button{font-size:11px}.server-bottom .text-button svg{width:15px;height:15px}.user-list{border-top:1px solid var(--line)}.user-row{padding:22px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:15px}.user-row :is(h2,h3){display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 6px;font-size:16px}.user-row p{font-size:11px;color:var(--muted);margin:4px 0}.user-row>.secondary{align-self:start;font-size:11px;min-height:39px;padding:8px 13px}.user-keys{grid-column:1/-1;margin-top:2px;padding-left:16px;border-left:1px solid #48553c}.user-key{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;flex-wrap:wrap}.user-key>span{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.user-key .caption{font-size:10px}.user-key .actions{margin:0;gap:17px}.user-key .text-button{min-height:36px;font-size:11px;white-space:nowrap}.audit-list{border-top:1px solid var(--line)}.audit-entry{display:grid;grid-template-columns:150px 1fr;gap:25px;padding:20px 0;border-bottom:1px solid var(--line)}.audit-entry time{font:10px ui-monospace,monospace;line-height:1.6;color:var(--muted)}.audit-entry p{font-size:13px;margin-bottom:4px}.audit-entry .caption{font-size:10px;overflow-wrap:anywhere}.request-empty{padding:26px 0}.request-empty p{font-size:12px;color:var(--muted)}
#nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,504px);display:flex;justify-content:space-around;gap:6px;padding:10px 22px calc(12px + env(safe-area-inset-bottom));background:#171916f2;backdrop-filter:blur(18px);border-top:1px solid var(--line);z-index:5}#nav button{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;min-height:48px;min-width:70px;padding:6px 12px;border-radius:8px;color:#929b88;background:transparent;font-size:10px;transition:color .18s,background .18s}#nav button svg{width:21px;height:21px}#nav button[aria-current=page]{color:var(--accent)}#nav button[aria-current=page]:before{content:'';position:absolute;width:14px;height:2px;border-radius:2px;background:var(--accent);top:-11px}#nav button:hover{background:#252c20}body[data-role=admin] #nav{width:min(100% - 40px,530px);bottom:18px;border:1px solid var(--line);border-radius:15px;padding:9px 16px}body[data-role=admin] #nav button{flex-direction:row;gap:9px;font-size:11px;min-width:85px}body[data-role=admin] #nav button[aria-current=page]:before{display:none}body[data-role=admin] #nav button[aria-current=page]{background:#303b25}
footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:29px 0 0;font:8px ui-monospace,monospace;letter-spacing:.06em;color:#858e7c}.footer-dot{font-family:inherit;font-size:9px;letter-spacing:0}body[data-role=employee] footer{margin-top:9px}.toast{position:fixed;bottom:105px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);padding:13px 17px;color:var(--text);background:#30392a;border:1px solid #58684a;border-radius:12px;box-shadow:0 8px 30px #0005;z-index:20;font-size:12px}.toast.error{color:#ffd3cc;border-color:#8b6254;background:#433229}#demo-bar{display:flex;align-items:center;justify-content:center;gap:20px;background:#22271e;color:#b4bda9;font-size:9px;padding:7px 14px;min-height:35px;border-bottom:1px solid #343d2c}#demo-bar>span{display:flex;gap:6px;align-items:center}#demo-bar i{width:4px;height:4px;border-radius:50%;background:var(--accent)}#demo-bar select{font-size:10px;background:transparent;color:#dbe6cf;border:0;border-bottom:1px solid #68765a;border-radius:0;padding:4px 14px 4px 0;max-width:150px;min-height:26px}#demo-bar option{background:var(--bg)}
dialog{background:#242921;color:var(--text);border:1px solid #454f3c;border-radius:21px;padding:28px;width:min(450px,calc(100% - 28px));max-height:88dvh;overflow:auto;box-shadow:0 25px 100px #0006}dialog::backdrop{background:#080b08b8;backdrop-filter:blur(5px)}dialog h2{font-size:28px;letter-spacing:-1px;margin-bottom:14px}dialog p{font-size:12px;color:#afb9a4;line-height:1.65}dialog label{display:block;font-size:11px;color:#bbc5af;margin:20px 0 8px}dialog input,dialog select{display:block;width:100%;border:1px solid #546247;background:#1a2016;color:var(--text);padding:12px;border-radius:8px;min-height:44px;font-size:13px}dialog .dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:25px}dialog .error{margin:13px 0 0;color:var(--red)}dialog .secret{font:11px/1.6 ui-monospace,monospace;word-break:break-all;user-select:all;background:#171d13;border:1px dashed #62734e;padding:17px;border-radius:8px}dialog ol{padding-left:22px;font-size:13px;color:#c4cdb9}dialog li{padding:8px 0 8px 6px}.sheet-handle{display:none}body[data-role=employee] #main:focus{outline:none}#main{min-width:0}#main:focus-visible{outline:1px solid var(--accent);outline-offset:8px}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes enter{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}#main>section,#main>.key-list{animation:enter .25s ease-out}
@media(max-width:700px){.shell{padding:0 22px 115px}.topbar{height:82px}.brand>span{font-size:29px}.account>span:first-child{display:none}.page-heading{margin:24px 0 28px}h1{font-size:36px}.grid{grid-template-columns:1fr;gap:29px}.stats{margin-bottom:30px}.stats>div{padding:19px 12px 21px 0}.stats>div+div{padding-left:15px}.stats strong{font-size:34px}.stats p{font-size:9px;min-height:27px;margin-bottom:13px}.stats .stat-index{display:none}.server-list{grid-template-columns:1fr}.server-item h2{min-height:0;font-size:25px}.server-index{margin-bottom:21px}.server-item{padding:23px 0}.server-bottom .text-button{min-height:44px}.user-row{gap:12px}.user-row :is(h2,h3){font-size:15px}.user-row>.secondary{padding:8px 10px;min-height:40px}.user-keys{padding-left:11px}.audit-entry{grid-template-columns:1fr;gap:9px}.audit-entry time{font-size:9px}.panel{padding:21px}body[data-role=admin] #nav{bottom:0;width:100%;border:0;border-top:1px solid var(--line);border-radius:0;padding:9px 12px calc(10px + env(safe-area-inset-bottom))}body[data-role=admin] #nav button{flex-direction:column;gap:5px;font-size:9px;min-width:58px;min-height:48px}body[data-role=admin] #nav button[aria-current=page]{background:transparent}body[data-role=admin] #nav button[aria-current=page]:before{display:block;top:-10px}.footer-dot{display:none}.home-intro{padding-top:12px;min-height:174px}body[data-role=employee] .topbar{height:79px}body[data-role=employee] .shell{padding:0 24px 100px}.help-row{padding-top:14px}.pass-top{padding:18px 20px 15px}.pass-body{padding:0 20px 20px}.pass-actions{margin-top:17px}.intro-baseline{margin-bottom:22px;padding:15px 0}.home-intro h1{font-size:61px}.network-art{right:-16px;bottom:-4px;width:178px;height:178px}dialog{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:100%;max-height:90dvh;border-radius:23px 23px 0 0;border-bottom:0;padding:16px 25px calc(25px + env(safe-area-inset-bottom))}.sheet-handle{display:block;width:30px;height:3px;background:#66735b;border-radius:3px;margin:0 auto 24px}dialog .dialog-actions>*{flex:1}dialog .dialog-actions{margin-top:25px}}
@media(max-width:360px){body[data-role=employee] .shell{padding-left:19px;padding-right:19px}.brand-sub{font-size:9px}.brand>span{gap:7px}.home-intro h1{font-size:55px}.network-art{width:157px;height:157px;right:-10px}.pass-meta{font-size:9px}.help-row{gap:8px}.help-row p{font-size:9px}.help-row button{font-size:10px}.pass-top{padding-left:18px;padding-right:18px}.pass-body{padding-left:18px;padding-right:18px}.pass-identity h2{font-size:29px}.intro-baseline .mono{font-size:8px}.server-item h2{font-size:23px}.user-row{grid-template-columns:1fr}.user-row>.secondary{justify-self:start}.user-keys{grid-column:auto}.stats strong{font-size:30px}h1{font-size:32px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
html{scrollbar-width:thin;scrollbar-color:#546448 transparent}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{background:#546448;border-radius:5px}::-webkit-scrollbar-track{background:transparent}.traffic-unlimited{height:25px}.check-select-label{display:block;font-size:11px;margin:17px 0 7px;color:var(--muted)}#probe-key{padding:11px;background:var(--surface);color:var(--text);border:1px solid #526044;border-radius:8px;width:100%;font-size:12px}.key-card>.pass-body>.text-button{color:#455b2e;font-size:11px;min-height:38px;padding-top:14px}.key-card>.pass-body>.text-button svg{width:15px;height:15px}

.workspace-switch{display:flex;gap:4px;width:max-content;max-width:100%;padding:4px;border:1px solid var(--line);border-radius:12px;margin:5px 0 24px}.workspace-switch[hidden]{display:none}.workspace-switch button{background:transparent;color:var(--muted);min-height:42px;padding:9px 20px;border-radius:8px;font-size:12px}.workspace-switch button[aria-pressed=true]{background:#303b25;color:var(--accent)}

.alerts-settings,.alerts-status{padding:25px 0;border-top:1px solid var(--line);margin-bottom:26px}.alerts-facts{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:25px 0}.alerts-facts span{display:block;font-size:11px;color:var(--muted);margin-bottom:7px}.alerts-facts strong{font-size:17px;font-weight:450}.alerts-settings .caption{margin-top:24px}.alert-history{border-top:1px solid var(--line)}.alert-entry{padding:22px 0;border-bottom:1px solid var(--line)}.alert-entry p{white-space:pre-line;overflow-wrap:anywhere;font-size:12px;color:var(--muted);margin:14px 0 0}.alert-entry time{font-size:10px;margin-left:14px;color:var(--muted)}body[data-role=admin] #nav{width:min(100% - 40px,630px)}body[data-role=admin] #nav button{min-width:0;flex:1;padding:6px 8px}@media(max-width:700px){body[data-role=admin] #nav{width:100%;gap:2px;padding-left:8px;padding-right:8px}.alerts-facts{gap:22px 14px}.alerts-facts strong{font-size:14px}.alerts-server-status .split{align-items:flex-start}.alerts-server-status .split>span{max-width:50%}.alerts-server-status .split strong{max-width:50%;line-height:1.5}.alerts-settings .actions>.secondary,.alerts-settings .actions>.primary{flex:1;min-width:125px}}

.reserve-panel{padding:24px 0;margin:26px 0 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.reserve-panel h2{font-size:24px}.reserve-panel p:not(.eyebrow){font-size:12px;color:var(--muted);line-height:1.65}.reserve-panel .secondary{margin-top:8px}.request-queue{margin-bottom:32px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.request-row{padding:20px 0;border-bottom:1px solid var(--line)}.request-row:last-child{border-bottom:0}.request-row h3{font-size:15px;overflow-wrap:anywhere;margin:0 0 10px}.request-row p{font-size:12px;color:var(--muted);white-space:pre-line;overflow-wrap:anywhere}.request-row .actions{gap:8px;margin-top:16px}.request-row .actions button{font-size:11px}.audit-person{display:block;line-height:1.8}.audit-reference{display:block;font:9px/1.6 ui-monospace,monospace;color:var(--muted);margin-top:7px;overflow-wrap:anywhere}dialog textarea{display:block;width:100%;border:1px solid #546247;background:#1a2016;color:var(--text);padding:12px;border-radius:8px;min-height:100px;resize:vertical;font:13px/1.6 system-ui}#ping-kind{padding:11px;background:var(--surface);color:var(--text);border:1px solid #526044;border-radius:8px;width:100%;font-size:12px}

.reserve-key .pass-identity h2{font-size:28px}@media(max-width:360px){.reserve-key .pass-identity h2{font-size:25px}}

.audit-entry .audit-person{font-size:12px;color:var(--text);opacity:.85}

/* Clear actions, neutral focus, and a drawer that behaves like a drawer. */
.page-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px}.heading-copy{min-width:0}.refresh{display:inline-flex;gap:7px;width:auto;min-width:112px;min-height:42px;height:auto;padding:10px 13px;border-radius:10px;font-size:11px;white-space:nowrap;margin-bottom:2px}.refresh svg{width:16px;height:16px}.refresh:disabled svg{animation:spin 1s linear infinite}#main:focus,#dialog-title:focus{outline:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #b8c0ae;outline-offset:3px}dialog :is(input,textarea,.select-trigger):focus{outline:none;border-color:#8d9782;box-shadow:0 0 0 3px #e8eddd12}dialog :is(input,textarea,.select-trigger):focus-visible{outline:2px solid #b8c0ae;outline-offset:3px}dialog{overscroll-behavior:contain;transition:transform .18s ease-out}dialog.is-dragging{transition:none;user-select:none}.sheet-toolbar{position:sticky;top:-16px;z-index:8;display:flex;align-items:center;justify-content:center;height:34px;margin:-8px 0 12px;background:#242921;touch-action:none}.sheet-handle{display:grid;place-items:center;width:84px;height:32px;padding:0;margin:0;border:0;background:transparent;cursor:grab;touch-action:none}.sheet-handle span{display:block;width:32px;height:3px;border-radius:3px;background:#929b88}.sheet-close{position:absolute;right:-5px;top:0;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#343a30;color:#d6ddcc;font-size:24px;line-height:1}.sheet-close:hover{background:#444d3e}.result .result-metric{font-size:13px;color:var(--text);margin-top:9px}.custom-select{position:relative;min-width:0;width:100%}.select-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;padding:12px 14px;border:1px solid #50594a;border-radius:10px;background:#1e241b;color:var(--text);text-align:left;font-size:13px}.select-trigger>span:first-child{min-width:0;overflow-wrap:anywhere}.select-chevron{width:7px;height:7px;border-right:1.5px solid #aeb6a4;border-bottom:1.5px solid #aeb6a4;transform:rotate(45deg);margin:0 2px 4px 8px;flex-shrink:0;transition:transform .15s}.custom-select.is-open{z-index:12}.custom-select.is-open .select-chevron{transform:rotate(225deg);margin-bottom:-3px}.select-options{position:absolute;z-index:20;top:calc(100% + 7px);left:0;right:0;padding:5px;max-height:240px;overflow-y:auto;overscroll-behavior:contain;border:1px solid #5a6452;border-radius:12px;background:#292f25;box-shadow:0 18px 45px #0006}.opens-up .select-options{top:auto;bottom:calc(100% + 7px)}.select-option{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:44px;text-align:left;padding:11px 12px;background:transparent;color:#e0e5d8;border-radius:8px;font-size:13px;line-height:1.4}.select-option[aria-selected=true]{background:#3a4333;color:#f4f7ed}.select-option[aria-selected=true]:after{content:'✓';color:#d3dcc9}.select-option.is-active,.select-option:hover{background:#434c3b}.select-option:disabled{opacity:.4}#main .custom-select{margin-top:12px}@media(min-width:701px){.sheet-handle{visibility:hidden}}@media(max-width:700px){.page-heading{grid-template-columns:1fr;align-items:start;gap:16px}.refresh{justify-self:start;min-width:0;margin:0;min-height:42px;padding:10px 13px}.sheet-toolbar{top:-16px;margin-top:-8px;margin-bottom:14px}.select-trigger{font-size:14px;min-height:48px}.select-option{min-height:46px;font-size:14px}}

/* Optical and geometric alignment are independent of the platform font. */
.sheet-close{right:0;top:0;width:40px;height:40px;min-width:40px;min-height:40px;padding:0;border:0;line-height:0;display:grid;place-items:center}.sheet-close svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.sheet-toolbar{height:40px}.entry-section{margin:28px 0 38px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.entry-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}.entry-row:last-child{border-bottom:0}.entry-row p{margin:5px 0;overflow-wrap:anywhere}.entry-row>div{min-width:0}.probe-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.probe-facts>div{padding:14px;border:1px solid var(--line);border-radius:10px}.probe-facts strong{display:block;font-size:24px;margin:8px 0}.probe-facts small{display:block;color:var(--muted);line-height:1.6}.probe-facts span{font-size:12px;color:var(--muted)}@media(max-width:400px){.entry-row{align-items:flex-start;flex-direction:column}.entry-row>button{align-self:flex-start}}

/* Access follows the workflow: admission, decisions, issued keys, and waiting users. */
.access-sections{display:grid;gap:16px;margin:4px 0 26px}.access-block{border:1px solid var(--line);border-radius:16px;background:#1c1f1a;overflow:hidden}.access-block>summary{display:grid;grid-template-columns:minmax(0,1fr) auto 12px;align-items:center;gap:10px 16px;padding:22px 24px;cursor:pointer;list-style:none;user-select:none}.access-block>summary::-webkit-details-marker{display:none}.access-block>summary::marker{content:''}.access-block>summary:hover{background:#23271f}.access-block>summary:focus-visible{outline:2px solid #b8c0ae;outline-offset:-4px;border-radius:15px}.access-block>summary h2{margin:0;font-size:21px;line-height:1.25;letter-spacing:-.5px;text-wrap:initial}.access-count{font:13px ui-monospace,monospace;color:#dce4d2;background:#30372a;border:1px solid #414a39;border-radius:7px;min-width:30px;text-align:center;padding:4px 7px}.access-chevron{height:7px;width:7px;border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);transform:rotate(45deg);margin-top:-4px;transition:transform .15s}.access-block[open]>summary .access-chevron{transform:rotate(225deg);margin-top:4px}.access-description{grid-column:1/-1;color:var(--muted);font-size:12px;line-height:1.6;max-width:600px}.access-block-body{padding:0 24px 22px}.access-block[open]>summary{padding-bottom:18px}.access-block-body>.user-list{border-top:1px solid var(--line)}.access-block-body .user-row:last-child,.access-block-body .request-row:last-child{border-bottom:0;padding-bottom:0}.access-block-body .user-row{min-width:0;grid-template-columns:minmax(0,1fr) auto}.access-block-body .user-row>div{min-width:0;overflow-wrap:anywhere}.access-block-body .entry-add-action{margin-top:0;margin-bottom:12px}.access-block-body .entry-row:first-child{border-top:1px solid var(--line)}.access-block-body .entry-row:last-child{padding-bottom:0}.access-empty{margin:0;padding:14px 0 2px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}@media(max-width:700px){.access-sections{gap:12px}.access-block>summary{padding:19px 18px;gap:9px 12px}.access-block>summary h2{font-size:20px}.access-block-body{padding:0 18px 20px}.access-description{font-size:12px}.access-block-body .user-row{grid-template-columns:1fr}.access-block-body .user-row>.secondary{justify-self:start}.access-block-body .user-keys{grid-column:auto}.access-block-body .request-row .actions{flex-wrap:wrap}}

.entry-keys{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.entry-keys>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:4px 0}.entry-keys .caption{font-size:11px}.entry-keys .badge{font-size:10px}.entry-keys button{min-height:36px;font-size:12px}
