@font-face{font-family:LocalDisplay;src:local("Source Han Sans SC Heavy"),local("Microsoft YaHei Bold");font-weight:700}*{box-sizing:border-box}:root{--ink:#16221d;--muted:#69756f;--paper:#f4f1e8;--card:#fffdf7;--line:#d9d5c9;--green:#075b45;--mint:#a9d7c7;--amber:#ecb448;--red:#b54432;--shadow:0 20px 55px rgba(26,41,34,.12)}html{background:var(--paper)}body{margin:0;color:var(--ink);font-family:"Source Han Sans SC","Microsoft YaHei",sans-serif;min-height:100dvh;overflow-x:hidden}.noise{position:fixed;inset:0;pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E")}.hidden{display:none!important}.eyebrow{margin:0 0 8px;letter-spacing:.16em;font:700 11px/1.2 ui-monospace,Consolas,monospace;color:var(--green)}.login-shell{min-height:100dvh;display:grid;grid-template-columns:minmax(340px,620px) 220px;place-content:center;gap:28px;padding:32px;background:radial-gradient(circle at 20% 20%,#fffdf5 0,transparent 38%),linear-gradient(135deg,#e6eee8,#cbded6 55%,#9fc5b7)}.login-card{background:rgba(255,253,247,.92);border:1px solid rgba(255,255,255,.7);padding:54px;border-radius:4px;box-shadow:var(--shadow);backdrop-filter:blur(14px)}.login-card h1{font:700 clamp(42px,7vw,76px)/.95 LocalDisplay,"Microsoft YaHei",sans-serif;margin:0;letter-spacing:-.06em}.lead{max-width:440px;color:var(--muted);font-size:16px;margin:22px 0 34px}.login-card form{display:grid;gap:18px}.login-aside{background:var(--green);color:white;padding:36px 28px;display:grid;grid-template-columns:auto 1fr;align-content:center;gap:22px 15px;box-shadow:var(--shadow)}.login-aside span{font:700 12px ui-monospace;color:var(--amber)}.login-aside p{margin:0;font-weight:700}.login-card label,.form-section label{display:grid;gap:8px;font-size:13px;font-weight:700;color:#35433d}input,textarea{width:100%;border:1px solid var(--line);background:#fff;padding:12px 13px;color:var(--ink);font:14px/1.45 inherit;border-radius:3px;outline:none}input:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(7,91,69,.11)}.button{border:0;padding:12px 18px;font:700 13px inherit;cursor:pointer;border-radius:3px;transition:transform .15s,background .15s}.button:hover{transform:translateY(-1px)}.primary{background:var(--green);color:white}.secondary{background:#e2e6df;color:var(--ink)}.form-error{color:var(--red);min-height:20px;margin:0;font-size:13px}.app-shell{min-height:100dvh;display:grid;grid-template-columns:250px 1fr;grid-template-rows:74px 1fr}.topbar{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:#13221c;color:white;border-bottom:1px solid rgba(255,255,255,.08);position:sticky;top:0;z-index:20}.topbar .eyebrow{color:var(--mint);margin-bottom:3px}.topbar strong{font:700 19px LocalDisplay,"Microsoft YaHei"}.top-actions{display:flex;align-items:center;gap:18px}.status-pill{font-size:12px;padding:6px 10px;border:1px solid #466359;color:#cce9df}.text-button,.menu-button,.nav-item,.icon-button{border:0;background:none;color:inherit;cursor:pointer}.text-button,.menu-button{min-width:44px;min-height:44px;padding:10px}.text-button{color:#b8c6c0}.menu-button{display:none;font-size:20px}.sidebar-backdrop{display:none;border:0;background:rgba(4,15,11,.48);position:fixed;inset:74px 0 0;z-index:18}.swipe-hint{display:none;margin:0;padding:9px 18px 0;color:var(--muted);font-size:11px}body.nav-open{overflow:hidden}.sidebar{background:#182923;color:white;padding:32px 20px;display:flex;flex-direction:column;justify-content:space-between;min-height:calc(100dvh - 74px);position:sticky;top:74px}.sidebar nav{display:grid;gap:8px}.nav-item{text-align:left;padding:14px 16px;border-left:3px solid transparent;color:#aabbb4}.nav-item span,.nav-item small{display:block}.nav-item span{font-weight:700}.nav-item small{margin-top:3px;font:10px ui-monospace;letter-spacing:.12em}.nav-item.active{background:#233c33;border-color:var(--amber);color:white}.sidebar-foot{display:flex;gap:12px;align-items:center;color:#b4c4bd;font-size:12px}.sidebar-foot i{width:9px;height:9px;border-radius:50%;background:#5ed4a9;box-shadow:0 0 0 5px rgba(94,212,169,.12)}.sidebar-foot p{margin:0}.main{padding:42px;min-width:0}.page-view{max-width:1280px;margin:auto}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:28px}.page-head h2{margin:0;font:700 clamp(30px,4vw,48px)/1 LocalDisplay,"Microsoft YaHei";letter-spacing:-.045em}.metric-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:24px}.metric-grid article{background:var(--card);border-top:3px solid var(--green);padding:20px;min-height:120px;box-shadow:0 7px 25px rgba(42,52,47,.06)}.metric-grid span{color:var(--muted);font-size:12px}.metric-grid strong{display:block;font:700 36px LocalDisplay;margin-top:20px}.metric-grid .accent{border-color:var(--amber)}.metric-grid .danger{border-color:var(--red)}.panel{background:var(--card);border:1px solid var(--line);box-shadow:0 8px 30px rgba(42,52,47,.05)}.panel-head{padding:20px 22px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:16px}.panel-head h3{margin:0}.panel-head span{font-size:12px;color:var(--muted)}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{text-align:left;padding:14px 18px;border-bottom:1px solid #e8e4d9;font-size:13px}th{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.state{display:inline-block;padding:4px 8px;background:#e8ece8;font-size:11px}.state.completed{background:#d9efe6;color:#075b45}.state.failed{background:#f5ddd7;color:#8e3023}.state.pending,.state.processing,.state.retry{background:#f6e7c7;color:#805a0a}.store-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}.store-card{background:var(--card);border:1px solid var(--line);padding:24px;position:relative;box-shadow:0 8px 30px rgba(42,52,47,.05)}.store-card::before{content:"";position:absolute;top:0;left:0;width:6px;height:100%;background:#7b8c84}.store-card.enabled::before{background:var(--green)}.store-card h3{margin:0 0 5px;font-size:20px}.store-meta{color:var(--muted);font-size:12px;line-height:1.7}.webhook-box{background:#edf0ea;padding:10px;margin:16px 0;font:11px/1.5 ui-monospace;word-break:break-all}.card-actions{display:flex;gap:8px;flex-wrap:wrap}dialog{width:min(900px,calc(100vw - 30px));max-height:90dvh;border:0;padding:0;background:var(--paper);color:var(--ink);box-shadow:0 30px 90px rgba(0,0,0,.34)}dialog::backdrop{background:rgba(6,20,15,.64);backdrop-filter:blur(4px)}dialog form{padding:28px;overflow:auto;max-height:90dvh}.dialog-head{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid var(--line);padding-bottom:20px}.dialog-head h2{margin:0;font-size:30px}.icon-button{font-size:30px}.form-section{padding:22px 0;border-bottom:1px solid var(--line)}.form-section h3{font-size:14px;margin:0 0 15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid .wide{grid-column:1/-1}.form-section label small{font-weight:400;color:var(--muted);line-height:1.5}.toggle{display:flex!important;align-items:center;gap:10px;margin-top:17px}.toggle input{width:auto}.system-note{margin-top:16px;padding:12px 14px;background:#e6eee9;border-left:4px solid var(--green);color:#3d5048;font-size:12px}.person-picker{position:relative}.person-results{position:absolute;left:0;right:0;top:74px;z-index:8;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);max-height:220px;overflow:auto;display:none}.person-results.show{display:block}.person-option{display:block;width:100%;border:0;border-bottom:1px solid #ece8dd;background:#fff;padding:10px 12px;text-align:left;cursor:pointer}.person-option:hover{background:#edf3ef}.person-option strong,.person-option small{display:block}.person-option small{margin-top:2px;color:var(--muted)}.advanced-settings{margin-top:18px;border:1px solid var(--line);background:#f8f6ef}.advanced-settings summary{padding:14px 16px;cursor:pointer;font-weight:700;font-size:13px;color:#405149}.advanced-settings .form-section{padding:18px}.dialog-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;padding:14px 0 2px;position:sticky;bottom:-28px;background:linear-gradient(180deg,rgba(244,241,232,.25),var(--paper) 22%);z-index:12}.dialog-actions .form-error{margin-right:auto}.assignee-dialog-body{padding:28px;max-height:90dvh;overflow:auto}.assignee-list{display:grid;gap:10px;margin:20px 0}.assignee-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;background:var(--card);border:1px solid var(--line)}.assignee-row strong{font-family:ui-monospace,Consolas,monospace}.alias-picker{padding:16px;background:#e8eee9;border-left:4px solid var(--green)}.alias-person-results{display:grid;gap:6px;margin-top:10px;max-height:240px;overflow:auto}#toast{position:fixed;right:22px;bottom:22px;background:#14241e;color:white;padding:13px 18px;box-shadow:var(--shadow);transform:translateY(120px);opacity:0;transition:.25s;z-index:100}#toast.show{transform:translateY(0);opacity:1}@media(max-width:900px){.metric-grid{grid-template-columns:repeat(2,1fr)}.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-270px;top:74px;width:250px;z-index:19;transition:left .2s}.sidebar.open{left:0}.sidebar.open+.sidebar-backdrop{display:block}.menu-button{display:block}.swipe-hint{display:block}.main{padding:28px 18px}.login-shell{grid-template-columns:minmax(280px,600px)}.login-aside{display:none}}@media(max-width:560px){.login-shell{padding:14px}.login-card{padding:30px 22px}.metric-grid{grid-template-columns:1fr 1fr}.metric-grid article{min-height:100px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.page-head{align-items:start;flex-direction:column}.topbar{padding:0 10px}.topbar .eyebrow{display:none}.topbar strong,.status-pill,.text-button{white-space:nowrap}.status-pill{font-size:0;padding:7px 9px}.status-pill::after{content:"在线";font-size:12px}.top-actions{gap:2px}.main{padding:24px 12px}dialog form{padding:20px}}
