:root{--paper:oklch(98.8% .004 75);--panel:oklch(99.6% .002 75);--side:oklch(96.3% .008 75);--ink:oklch(29% .015 65);--muted:oklch(58% .013 65);--line:oklch(90% .008 75);--accent:oklch(62% .17 46);--danger:oklch(52% .14 30);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-size:14px}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}button,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}a{color:var(--accent);text-underline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid oklch(79% .09 55);outline-offset:3px}input{display:block;width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink)}input::placeholder{color:oklch(74% .01 65)}label{display:block;font-size:13px;margin:20px 0 8px}h1,h2,h3,p{margin-top:0}h2{font-size:27px;font-weight:600;letter-spacing:-.7px;margin-bottom:10px}p{color:var(--muted);line-height:1.8}.primary,.secondary{border:1px solid var(--line);border-radius:8px;padding:11px 16px;background:var(--panel);color:var(--ink)}.primary{background:var(--accent);border-color:var(--accent);color:oklch(99% .005 75);font-weight:600}.primary:hover{filter:brightness(.96)}.secondary:hover{background:var(--side)}.full{width:100%;margin-top:22px}.text-button{background:none;border:0;color:var(--muted);padding:8px 0;font-size:12px}.text-button:hover{color:var(--accent)}.wordmark{font-size:24px;font-weight:700;letter-spacing:-.7px;text-decoration:none;color:var(--ink);display:flex;gap:14px;align-items:center}.wordmark span{font-size:11px;letter-spacing:1px;font-weight:400;color:var(--muted)}.eyebrow{font-size:11px;color:var(--accent);letter-spacing:2px;display:block;margin-bottom:22px}.auth-page{display:grid;grid-template-columns:42% 58%;min-height:100vh}.auth-story{padding:42px 12%;background:var(--side);display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--line)}.auth-story h1{font-size:clamp(28px,3.1vw,43px);line-height:1.5;font-weight:600;letter-spacing:-1.3px;margin-bottom:24px}.auth-story p{font-size:15px}.auth-story small{color:var(--muted);font-size:11px}.auth-main{padding:48px 32px;display:grid;align-items:center;justify-items:center;min-width:0}.auth-box{width:min(355px,100%)}.compact{font-size:18px;color:var(--accent);margin-bottom:38px}.auth-tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);margin-bottom:30px}.auth-tabs button{background:none;border:0;padding:10px 0 12px;color:var(--muted)}.auth-tabs button.selected{color:var(--ink);box-shadow:0 1px var(--ink)}.code-row{display:flex;gap:10px}.code-row input{min-width:0}.code-row button{white-space:nowrap;font-size:12px}.check{display:flex;gap:9px;align-items:flex-start;line-height:1.7;color:var(--muted);font-size:11px}.check input{width:14px;height:14px;flex:none;margin:3px 0 0;accent-color:var(--accent)}.divider{position:relative;border-top:1px solid var(--line);margin:26px 0 6px;text-align:center;height:1px}.divider span{background:var(--paper);color:var(--muted);font-size:11px;padding:0 12px;position:relative;top:-9px}#status{min-height:22px;margin:16px 0 0;color:var(--danger);font-size:12px}.auth-note{font-size:11px;line-height:1.9;border-top:1px solid var(--line);padding-top:18px;margin:22px 0 0}.development-note{font-size:11px;padding:10px;background:var(--side);border-radius:6px}#wechat-status{padding:15px 0;font-size:12px}#wechat-status p{font-size:12px}#signed-in h3{font-size:15px;margin-top:30px}#profile-status{font-size:12px;color:var(--danger)}.admin-shell{display:grid;grid-template-columns:208px minmax(0,1fr);min-height:100vh}.admin-nav{background:var(--side);border-right:1px solid var(--line);padding:32px 18px;display:flex;flex-direction:column}.admin-nav .wordmark{padding:0 10px;margin-bottom:48px;font-size:22px}.admin-nav nav{display:flex;flex-direction:column;gap:6px}.admin-nav button{border:0;background:none;text-align:left;padding:12px;color:var(--muted);border-radius:7px}.admin-nav button.selected{background:oklch(92.5% .009 75);color:var(--ink)}.admin-nav .bottom{margin-top:auto;padding-top:30px;font-size:11px;color:var(--muted)}.admin-main{padding:44px 48px;min-width:0}.admin-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:38px}.admin-header h1{font-size:25px;font-weight:600;margin-bottom:8px}.admin-header p{font-size:12px;margin:0}.admin-header button{font-size:12px;padding:8px 12px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:27px 0;margin-bottom:36px;gap:20px}.metric{padding:0 4px}.metric label{font-size:12px;color:var(--muted);margin:0 0 12px}.metric strong{font-size:31px;font-weight:500;letter-spacing:-1px}.metric small{font-size:11px;color:var(--muted);display:block;margin-top:9px}.admin-section{margin:32px 0}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.section-heading h2{font-size:16px;margin:0;letter-spacing:0}.section-heading small{color:var(--muted);font-size:11px}.chart{height:150px;display:flex;align-items:flex-end;gap:5px;border-bottom:1px solid var(--line);padding-top:10px}.chart-bar{flex:1;min-width:4px;background:oklch(77% .08 55);position:relative;border-radius:3px 3px 0 0}.chart-bar:hover{background:var(--accent)}.chart-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin-top:8px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}th{text-align:left;color:var(--muted);font-weight:400;padding:14px 12px;border-bottom:1px solid var(--line)}td{padding:16px 12px;border-bottom:1px solid oklch(94% .005 75);max-width:300px;text-overflow:ellipsis;overflow:hidden}td:first-child,th:first-child{padding-left:0}.quiet{font-size:11px;color:var(--muted)}.status-pill{font-size:11px;padding:4px 7px;border-radius:4px;background:var(--side);color:var(--muted)}.empty{padding:44px;text-align:center;color:var(--muted);font-size:12px}.notice{padding:13px 15px;background:var(--side);border-radius:7px;font-size:12px;line-height:1.8;color:var(--muted);margin-top:28px}.error{color:var(--danger);font-size:12px}.admin-login{width:min(350px,calc(100vw - 48px));margin:16vh auto}.admin-login .wordmark{margin-bottom:45px}.admin-login p{font-size:12px}.admin-actions{display:flex;gap:10px}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.admin-toolbar input{max-width:240px;padding:8px 10px;font-size:12px}.privacy{max-width:700px;margin:70px auto;padding:0 24px;line-height:1.9}.privacy h1{font-size:25px}.privacy h2{font-size:17px;margin-top:30px}.privacy p,.privacy li{font-size:14px;color:var(--muted)}@media(max-width:900px){.admin-main{padding:32px 24px}.admin-shell{grid-template-columns:160px minmax(0,1fr)}.metrics{grid-template-columns:repeat(2,1fr);row-gap:30px}}@media(max-width:680px){.auth-page{grid-template-columns:1fr}.auth-story{display:none}.auth-main{padding:32px 24px}.compact{margin-bottom:24px}.admin-shell{grid-template-columns:1fr}.admin-nav{padding:15px 20px;flex-direction:row;gap:25px;align-items:center;border-right:0;border-bottom:1px solid var(--line)}.admin-nav .wordmark{margin:0;padding:0}.admin-nav nav{flex-direction:row;gap:2px}.admin-nav button{padding:8px;font-size:12px}.admin-nav .bottom{display:none}.admin-main{padding:28px 20px}.admin-header{gap:12px}.metrics{gap:20px}.admin-header h1{font-size:22px}}
