:root{--ink:#272727;--muted:#646464;--paper:#fff;--ground:#f5f5f5;--line:#dedede;--notice:#f1eadc;--notice-ink:#65522e;--success:#e8eee9;--success-ink:#3f5c46;--error:#f5e6e3;--error-ink:#853c34;--font:Inter,"Microsoft YaHei","PingFang SC",system-ui,sans-serif}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--ground);font:15px/1.65 var(--font)}h1,h2,p{margin-top:0}h1{font-size:30px;line-height:1.35;letter-spacing:-.5px;margin-bottom:12px}h2{font-size:19px;line-height:1.45;margin-bottom:12px}a{color:inherit;text-underline-offset:4px}button,input{font:inherit;color:inherit;max-width:100%}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}a,button,input{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #51706b;outline-offset:3px}input{display:block;width:100%;background:var(--paper);border:1px solid #bfbfbf;border-radius:5px;min-height:48px;padding:10px 13px}input:disabled{background:#f1f1f1}input::placeholder{color:#777}label{display:block;font-weight:500;margin:20px 0 7px}fieldset{border:0;margin:0;padding:0;min-width:0}[hidden]{display:none!important}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;gap:8px;border:1px solid #cfcfcf;border-radius:5px;padding:9px 16px;background:#fff;font-size:14px;white-space:nowrap;text-decoration:none}.button:hover{background:#efefef}.button.primary{background:var(--ink);border-color:var(--ink);color:#fff}.button.primary:hover{background:#444}.button.full{width:100%}.text-button{border:0;background:none;padding:6px 0;min-height:36px;color:#565656;font-size:14px;text-decoration:underline;text-underline-offset:4px}.text-button:hover{color:#111}.muted{color:var(--muted)}.eyebrow{color:var(--muted);font-size:12px;margin-bottom:10px;letter-spacing:1px}.brand{display:flex;align-items:center;gap:13px;font-size:25px;line-height:1.3;font-weight:500;letter-spacing:3px}.brand small{display:block;letter-spacing:1px;font-size:10px;font-weight:400;margin-top:5px}.brand-mark{display:grid;grid-template-columns:9px 9px;gap:3px;flex:none}.brand-mark i{width:9px;height:9px;background:currentColor}.brand-mark i:nth-child(2){opacity:.45}.login-layout{display:grid;grid-template-columns:minmax(360px,.95fr) minmax(420px,1.05fr);min-height:100vh;min-height:100svh}.login-intro{background:#272727;color:#f5f5f5;padding:50px clamp(38px,6vw,94px);display:flex;flex-direction:column}.login-intro .brand small{color:#bababa}.intro-copy{margin-block:auto;padding-block:80px}.intro-kicker{font-size:14px;color:#bbb;margin-bottom:28px}.intro-copy h1{font-size:clamp(38px,4.3vw,66px);font-weight:500;line-height:1.4;letter-spacing:0;margin-bottom:28px}.intro-copy>p:last-child{font-size:16px;color:#c4c4c4;line-height:1.9;margin:0}.intro-foot{font-size:12px;color:#aaa;margin:0}.login-main{background:#fff;display:flex;align-items:center;justify-content:center;position:relative;padding:70px 45px 100px}.login-form-wrap{width:100%;max-width:380px}.login-form-wrap h2{font-size:29px;margin-bottom:10px}.login-form-wrap>.muted{margin-bottom:30px}.login-form-wrap .primary{margin-top:28px}.help-note{font-size:13px;color:var(--muted);margin:22px 0 0;line-height:1.8}.login-foot{position:absolute;bottom:27px;font-size:11px;color:#777;margin:0}.password-field{position:relative}.password-field input{padding-right:66px}.password-toggle{position:absolute;right:4px;top:4px;height:40px;min-width:54px;padding:6px;background:transparent;border:0;font-size:12px;color:#555;border-radius:3px}.password-toggle:hover{background:#eee}.message{padding:14px 16px;border-radius:5px;font-size:14px;line-height:1.7;margin:0 0 22px;overflow-wrap:anywhere}.message.error{background:var(--error);color:var(--error-ink)}.message.notice{background:var(--notice);color:var(--notice-ink)}.message.success{background:var(--success);color:var(--success-ink)}.message p{margin:4px 0 0}.account-header{background:#fff;min-height:92px;border-bottom:1px solid var(--line);padding:22px 40px;display:flex;align-items:center;justify-content:space-between;gap:24px}.account-header nav{display:flex;align-items:center;justify-content:flex-end;gap:25px;flex-wrap:wrap;font-size:14px}.account-main{max-width:690px;margin:0 auto;padding:45px 26px 60px}.page-heading{margin-bottom:28px}.page-heading>p:last-child{margin-bottom:0}.account-panel{background:var(--paper);padding:26px 28px;border:1px solid var(--line);border-radius:7px;min-width:0}.account-panel>.muted{font-size:14px;margin-bottom:8px}.account-panel .primary{margin-top:24px}.field-help{font-size:12px;color:var(--muted);margin:7px 0 0;line-height:1.6}.storage-note{font-size:13px;color:var(--muted);margin:23px 3px 0;line-height:1.8}.admin-main{max-width:1260px;padding:42px 30px 70px;margin:0 auto}.admin-main .account-panel{margin-bottom:23px}.create-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:22px;align-items:start}.create-grid label{margin-top:8px}.create-grid>.button{margin-top:40px}.status-message{font-size:14px;color:var(--muted);min-height:23px;margin:0 0 15px}.status-message:empty{display:none}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.section-heading h2{margin-bottom:7px}.small-copy{font-size:13px;margin-bottom:18px}.users-panel{padding-bottom:12px}.users-table-wrap{overflow-x:auto;overscroll-behavior-x:contain}table{width:100%;border-collapse:collapse;font-size:14px;text-align:left}th{font-size:12px;color:#656565;font-weight:500;padding:13px 15px 13px 0;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:17px 15px 17px 0;border-bottom:1px solid #ededed;vertical-align:middle}tbody tr:last-child td{border-bottom:0}td:last-child,th:last-child{padding-right:0}.user-name{display:block;font-size:14px;font-weight:500;overflow-wrap:anywhere}.user-sub{display:block;font-size:12px;color:var(--muted);margin-top:4px;overflow-wrap:anywhere}.user-actions{display:flex;gap:12px;flex-wrap:wrap;min-width:160px}.user-actions .text-button{font-size:12px;white-space:nowrap}.badge{display:inline-block;font-size:12px;padding:3px 8px;border-radius:4px;white-space:nowrap;background:var(--success);color:var(--success-ink)}.badge.inactive{background:#ececec;color:#666}.first-password-tag{display:block;font-size:11px;color:#806638;margin-top:5px}.empty-message{padding:25px 0;text-align:center;color:var(--muted);font-size:14px}.credentials-panel{padding:23px 28px;background:#e9eeeb;border:1px solid #d0dcd4;border-radius:6px;margin:0 0 23px}.credentials-panel>p{font-size:13px;color:#4d5f52;max-width:700px;margin-bottom:15px}.credential-details{display:flex;gap:30px;flex-wrap:wrap;margin:0 0 18px}.credential-details>div{min-width:160px;max-width:100%}dt{font-size:12px;color:#506056;margin-bottom:6px}dd{margin:0;font-size:16px;font-weight:500;overflow-wrap:anywhere}#credential-password{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:15px;min-width:260px;width:100%;border:1px solid #c2d1c6;min-height:40px;padding:6px 10px}.copy-status{font-size:12px;color:#405c48;margin-left:14px;overflow-wrap:anywhere}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;border:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
@media(max-width:850px){.login-layout{grid-template-columns:minmax(260px,.8fr) minmax(340px,1.2fr)}.login-intro{padding:35px 28px}.intro-copy h1{font-size:39px}.intro-copy>p:last-child{font-size:14px}.login-main{padding-inline:32px}.account-header{padding:20px 26px}.account-header nav{gap:18px}.create-grid{grid-template-columns:1fr 1fr}.create-grid>.button{grid-column:1/-1;justify-self:start;margin:0}.admin-main{padding-inline:22px}table{min-width:670px}.credential-details{gap:20px}}
@media(max-width:620px){.login-layout{display:block;min-height:100svh;background:#fff}.login-intro{padding:25px 26px}.login-intro .brand{font-size:24px}.intro-copy,.intro-foot{display:none}.login-main{padding:43px 26px 92px;min-height:calc(100svh - 105px);align-items:flex-start}.login-form-wrap{max-width:420px}.login-form-wrap h2{font-size:26px}.login-foot{bottom:22px}.account-header{padding:18px 20px;align-items:flex-start;gap:18px;flex-direction:column}.account-header .brand{font-size:22px}.account-header nav{font-size:13px;gap:20px;justify-content:flex-start;width:100%}.account-header nav .text-button{font-size:13px}.account-main,.admin-main{padding:30px 18px 45px}.page-heading{margin-bottom:23px}h1{font-size:26px}.account-panel{padding:22px 18px}.create-grid{grid-template-columns:1fr;gap:12px}.create-grid label{margin-top:4px}.create-grid>.button{margin-top:6px;width:100%}.section-heading{gap:14px}.section-heading h2{font-size:17px}.section-heading>.button{font-size:12px;padding:7px 10px;min-height:39px}.credentials-panel{padding:20px 18px}.credentials-panel .section-heading{flex-wrap:wrap;gap:5px}.credential-details{display:block}.credential-details>div{margin-top:15px}.credential-details input{min-width:0!important}.copy-status{display:block;margin:10px 0 0}.storage-note{font-size:12px}.account-panel .primary{width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.table-swipe-hint{display:none;color:var(--muted);font-size:12px;margin:0 0 10px}
@media(max-width:850px){.table-swipe-hint{display:block}}
