@font-face{font-family:IBM Plex Sans;src:url(/fonts/plexsans-400.woff2) format("woff2");font-weight:100 700;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/plexmono-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{--red-primary: #c41e3a;--red-dark: #a01830;--red-light: #e84455;--red-pale: #fdf0f2;--paper: #f8f6f3;--paper-2: #fffdfc;--paper-3: #faf9f7;--paper-4: #fafafa;--paper-inset: #fffdfc;--ink: #1a1814;--ink-2: #5c574e;--muted: #736e67;--muted-2: #6f6a63;--rule: #e8e4df;--rule-2: #f0ece7;--rule-heavy: #ded7cf;--grid: rgba(196, 30, 58, .05);--accent: var(--red-primary);--accent-ink: #fffdfc;--focus: var(--red-primary);--danger: #d9383a;--danger-soft: #fdecec;--danger-strong: #b02a2c;--danger-tint: rgba(217, 56, 58, .3);--warn: #e89b3c;--warn-soft: #fdf4e8;--warn-strong: #8a5a15;--warn-tint: rgba(232, 155, 60, .35);--ok: #2d8a4e;--ok-soft: #eaf6ee;--ok-strong: #22663a;--ok-tint: rgba(45, 138, 78, .3);--info: #2f6fb0;--info-soft: #eaf2fa;--info-tint: rgba(47, 111, 176, .3);--info-tint-12: rgba(47, 111, 176, .12);--red-tint-05: rgba(196, 30, 58, .05);--red-tint-08: rgba(196, 30, 58, .08);--red-tint-10: rgba(196, 30, 58, .1);--red-tint-12: rgba(196, 30, 58, .12);--red-tint-15: rgba(196, 30, 58, .15);--red-tint-20: rgba(196, 30, 58, .2);--red-tint-25: rgba(196, 30, 58, .25);--red-tint-28: rgba(196, 30, 58, .28);--red-tint-30: rgba(196, 30, 58, .3);--red-tint-bg: #ffeaea;--white-tint-16: rgba(255, 255, 255, .16);--white-tint-18: rgba(255, 255, 255, .18);--white-tint-35: rgba(255, 255, 255, .35);--white-tint-75: rgba(255, 255, 255, .75);--white-tint-85: rgba(255, 255, 255, .85);--white-tint-90: rgba(255, 255, 255, .9);--white-tint-92: rgba(255, 255, 255, .92);--green-dot: var(--ok);--overlay: rgba(26, 24, 20, .45);--ink-tint-04: rgba(0, 0, 0, .04);--font-display: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", "Helvetica Neue", sans-serif;--font-body: "IBM Plex Sans", "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-mono: "IBM Plex Mono", "SF Mono", Menlo, ui-monospace, monospace;--fs-xs: .75rem;--fs-sm: .8125rem;--fs-base: .875rem;--fs-md: .9375rem;--fs-lg: 1.0625rem;--fs-xl: 1.25rem;--fs-2xl: 1.5rem;--fs-3xl: 1.875rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--radius-sm: 8px;--radius: 12px;--radius-lg: 20px;--rule-hair: 1px;--rule-thick: 2px;--shadow: 0 1px 3px rgba(0, 0, 0, .06);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-glow: 0 0 20px rgba(196, 30, 58, .2);--control-h: 2.5rem;--control-h-lg: 2.75rem;--tap-min: 44px;--topbar-h: 3.5rem;--sidebar-w: 15rem;--sheet-inset: 1.25rem;--tick: 12px;--dur-micro: .12s;--dur-short: .2s;--dur-long: .32s;--ease-out: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}html,body{overflow-x:clip;margin:0;padding:0}html{font-size:16px}body{font-family:var(--font-body);font-size:var(--fs-base);line-height:1.55;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.25;margin:0;overflow-wrap:break-word;min-width:0}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-xl)}h3{font-size:var(--fs-lg)}h4{font-size:var(--fs-md)}p{margin:0}a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}a:hover{text-decoration-thickness:2px}code,pre,.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}ul,ol{margin:0;padding-left:1.25rem}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:var(--rule-thick) solid var(--focus);outline-offset:2px}::selection{background:var(--red-primary);color:var(--accent-ink)}*{scrollbar-width:thin;scrollbar-color:var(--rule-heavy) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--rule-heavy);border:3px solid var(--paper)}*::-webkit-scrollbar-track{background:transparent}input[type=text],input[type=password],input[type=email],input[type=search],input[type=number],input[type=date],textarea,select{caret-color:var(--ink)}table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}noscript{display:block;padding:var(--space-5);font-family:var(--font-body)}.boot{padding:var(--space-7);text-align:center;color:var(--muted)}.app-shell{min-height:100vh;display:flex;flex-direction:column;background:var(--paper)}.app-topbar{flex:0 0 auto;background:var(--paper-2);border-bottom:var(--rule-hair) solid var(--red-tint-10);box-shadow:0 4px 20px var(--red-tint-05);position:sticky;top:0;z-index:10}.app-topbar:before{content:"";display:block;height:4px;background:linear-gradient(90deg,var(--red-primary) 0%,var(--red-light) 50%,var(--red-primary) 100%)}.app-topbar-inner{height:var(--topbar-h);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:0 var(--space-5)}.app-brand{display:flex;align-items:center;gap:var(--space-3);min-width:0}.emblem{width:2.5rem;height:2.5rem;flex:0 0 auto;border-radius:50%;object-fit:contain;display:block}.emblem-reverse{box-shadow:0 8px 24px var(--red-tint-30)}.app-brand-text{display:flex;flex-direction:column;min-width:0}.app-brand-title{font-size:var(--fs-lg);font-weight:700;color:var(--red-primary);letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-brand-sub{display:flex;align-items:center;gap:var(--space-1);font-size:var(--fs-xs);color:var(--muted)}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--green-dot)}.app-topbar-right{display:flex;align-items:center;gap:var(--space-3)}.who{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--ink-2)}.app-nav{background:var(--paper-2);border-bottom:var(--rule-hair) solid var(--rule);box-shadow:0 2px 8px var(--ink-tint-04);position:sticky;top:calc(var(--topbar-h) + 4px);z-index:9}.app-nav-inner{display:flex;gap:var(--space-6);padding:0 var(--space-5)}.app-nav-link{position:relative;padding:var(--space-3) 0;color:var(--ink-2);text-decoration:none;font-size:var(--fs-base);transition:color var(--dur-micro) var(--ease-out)}.app-nav-link:hover{color:var(--red-primary)}.app-nav-link.is-active{color:var(--red-primary);font-weight:700}.app-nav-link.is-active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;border-radius:3px 3px 0 0;background:linear-gradient(90deg,var(--red-primary),var(--red-light))}.app-main{flex:1 1 auto;min-width:0;padding:var(--space-5)}.admin-shell{min-height:100vh;display:flex;flex-direction:column;background:var(--paper-3)}.admin-topbar{flex:0 0 auto;background:linear-gradient(135deg,var(--red-primary) 0%,var(--red-dark) 100%);color:var(--accent-ink);position:relative;z-index:10;box-shadow:var(--shadow-md)}.admin-topbar-inner{height:var(--topbar-h);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:0 var(--space-5)}.admin-brand{display:flex;align-items:center;gap:var(--space-3);min-width:0}.admin-brand-title{font-size:var(--fs-lg);font-weight:700;letter-spacing:.05em;white-space:nowrap}.admin-topbar-right{display:flex;align-items:center;gap:var(--space-3)}.admin-topbar .who{color:var(--white-tint-90)}.admin-body{flex:1 1 auto;display:flex;min-height:0}.admin-side{width:var(--sidebar-w);flex:0 0 auto;background:var(--paper-2);border-right:var(--rule-hair) solid var(--rule);padding:var(--space-4) 0}.admin-side-title{padding:0 var(--space-5) var(--space-2);font-size:var(--fs-xs);color:var(--muted)}.admin-nav-link{display:block;padding:var(--space-2) var(--space-5);color:var(--ink-2);text-decoration:none;border-left:3px solid transparent;transition:background var(--dur-micro) var(--ease-out),color var(--dur-micro) var(--ease-out)}.admin-nav-link:hover{background:var(--red-pale);color:var(--red-primary)}.admin-nav-link.is-active{color:var(--red-primary);font-weight:700;border-left-color:var(--red-primary);background:var(--red-pale)}.admin-nav-toggle{display:none;align-items:center;justify-content:center;width:var(--tap-min);height:var(--tap-min);flex:0 0 auto;padding:0;border:var(--rule-hair) solid var(--white-tint-35);border-radius:var(--radius-sm);background:transparent;color:var(--accent-ink);font-size:var(--fs-lg);line-height:1;cursor:pointer}.admin-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:29;background:var(--overlay)}.admin-side-foot{display:none}.admin-main{flex:1 1 auto;min-width:0;padding:var(--space-5)}.page{max-width:78rem;margin:0 auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:var(--rule-hair) solid var(--rule)}.page-title{font-size:var(--fs-2xl);color:var(--ink)}.page-desc{margin-top:var(--space-2);color:var(--muted);font-size:var(--fs-sm)}.page-actions,.panel-actions,.row-actions,.composer-actions,.filter-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.panel{border:var(--rule-hair) solid var(--rule);border-radius:var(--radius);background:var(--paper-2);box-shadow:var(--shadow-sm);margin-bottom:var(--space-4);overflow:hidden}.panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-4) var(--sheet-inset);border-bottom:var(--rule-hair) solid var(--rule-2)}.panel-title{font-size:var(--fs-lg);color:var(--ink)}.panel-desc{margin-top:var(--space-1);font-size:var(--fs-xs);color:var(--muted)}.panel-body{padding:var(--sheet-inset)}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(22rem,1fr));gap:var(--space-4);margin-bottom:var(--space-4)}.grid-2>.panel{margin-bottom:0}.sub-title{font-size:var(--fs-sm);color:var(--muted);margin:var(--space-3) 0 var(--space-2);padding-bottom:var(--space-1);border-bottom:var(--rule-hair) solid var(--rule-2)}.field{display:block;margin-bottom:var(--space-3)}.field-label{display:block;font-weight:500;font-size:var(--fs-xs);color:var(--muted);margin-bottom:var(--space-1)}.field-hint{display:block;font-size:var(--fs-xs);color:var(--muted-2);margin-top:var(--space-1)}.input{width:100%;min-height:var(--control-h);padding:0 var(--space-3);border:var(--rule-hair) solid var(--rule-heavy);border-radius:var(--radius-sm);background:var(--paper-2);color:var(--ink);transition:border-color var(--dur-micro) var(--ease-out),box-shadow var(--dur-micro) var(--ease-out)}textarea.input,.composer-input{padding:var(--space-2) var(--space-3);line-height:1.6;resize:vertical}.input:hover{border-color:var(--red-light)}.input:focus{outline:none;border-color:var(--red-primary);box-shadow:0 0 0 3px var(--red-tint-12)}select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-2) 50%),linear-gradient(135deg,var(--ink-2) 50%,transparent 50%);background-position:calc(100% - 15px) 50%,calc(100% - 10px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:var(--space-6)}.filter-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:var(--space-3);align-items:end;margin-bottom:var(--space-4)}.filter-row .field{margin-bottom:0}.row{display:flex;gap:var(--space-2)}.row .input{flex:1 1 auto}.switch{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-sm);color:var(--ink-2);cursor:pointer}.switch input{width:1rem;height:1rem;accent-color:var(--red-primary);margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-h);padding:0 var(--space-4);border:var(--rule-hair) solid var(--rule-heavy);border-radius:var(--radius-sm);background:var(--paper-2);color:var(--ink);font-size:var(--fs-base);text-decoration:none;cursor:pointer;transition:background var(--dur-micro) var(--ease-out),border-color var(--dur-micro) var(--ease-out),color var(--dur-micro) var(--ease-out),box-shadow var(--dur-micro) var(--ease-out)}.btn:hover:not(:disabled){border-color:var(--red-light);color:var(--red-primary)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--red-primary) 0%,var(--red-dark) 100%);border-color:transparent;color:var(--accent-ink);box-shadow:0 4px 12px var(--red-tint-25)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--red-light) 0%,var(--red-primary) 100%);color:var(--accent-ink);border-color:transparent}.btn-ghost{background:transparent;border-color:transparent;color:var(--ink-2)}.btn-ghost:hover:not(:disabled){background:var(--red-pale);border-color:transparent;color:var(--red-primary)}.btn-ghost.is-on{background:var(--red-pale);color:var(--red-primary)}.btn-block{width:100%;margin-bottom:var(--space-2)}.seg{display:inline-flex;border:var(--rule-hair) solid var(--rule-heavy);border-radius:var(--radius-sm);overflow:hidden}.seg .btn{border:none;border-right:var(--rule-hair) solid var(--rule-2);border-radius:0}.seg .btn:last-child{border-right:none}.seg .btn.is-on{background:var(--red-pale);color:var(--red-primary);font-weight:700}.admin-topbar .btn-ghost{color:var(--white-tint-92)}.admin-topbar .btn-ghost:hover:not(:disabled){background:var(--white-tint-16);color:var(--accent-ink)}.banner{padding:var(--space-2) var(--space-3);margin-bottom:var(--space-3);border:var(--rule-hair) solid var(--rule);border-radius:var(--radius-sm);font-size:var(--fs-sm)}.banner-info{border-color:var(--info-tint);background:var(--info-soft);color:var(--info)}.banner-ok{border-color:var(--ok-tint);background:var(--ok-soft);color:var(--ok-strong)}.banner-warn{border-color:var(--warn-tint);background:var(--warn-soft);color:var(--warn-strong)}.banner-danger{border-color:var(--danger-tint);background:var(--danger-soft);color:var(--danger-strong)}.tag{display:inline-block;padding:0 var(--space-2);border-radius:999px;background:var(--paper-3);font-size:var(--fs-xs);line-height:1.7;color:var(--ink-2)}.tag-web{background:var(--info-tint-12);color:var(--info)}.tag-ok{background:var(--ok-soft);color:var(--ok-strong)}.tag-danger{background:var(--danger-soft);color:var(--danger-strong)}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:var(--space-3);margin-bottom:var(--space-4)}.stat{position:relative;background:var(--paper-2);border:var(--rule-hair) solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:var(--space-3);display:flex;flex-direction:column;gap:2px;overflow:hidden}.stat:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--rule-heavy)}.stat.is-ok:before{background:var(--ok)}.stat.is-warn:before{background:var(--warn)}.stat.is-danger:before{background:var(--danger)}.stat-label{font-size:var(--fs-xs);color:var(--muted)}.stat-value{font-size:var(--fs-xl);font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.stat-note{font-size:var(--fs-xs);color:var(--muted-2)}.table-wrap{overflow-x:auto}.data-table{font-size:var(--fs-sm)}.data-table th{text-align:left;font-weight:600;font-size:var(--fs-xs);color:var(--ink-2);padding:var(--space-2) var(--space-3);background:var(--paper-4);border-bottom:var(--rule-hair) solid var(--rule);white-space:nowrap}.data-table th:first-child{border-top-left-radius:var(--radius-sm)}.data-table th:last-child{border-top-right-radius:var(--radius-sm)}.data-table td{padding:var(--space-2) var(--space-3);border-bottom:var(--rule-hair) solid var(--rule-2);vertical-align:top}.data-table tbody tr:hover{background:var(--red-pale)}.empty,.loading{color:var(--muted);font-size:var(--fs-sm);padding:var(--space-4) 0;text-align:center}.pager{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-3)}.pager-info{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--muted);margin-right:auto}.kv{display:grid;grid-template-columns:minmax(6rem,auto) 1fr;gap:var(--space-2) var(--space-4);margin:0;font-size:var(--fs-sm)}.kv dt{color:var(--muted);font-size:var(--fs-xs);padding-top:2px}.kv dd{margin:0;overflow-wrap:anywhere}.plain-list{list-style:none;margin:0;padding:0;font-size:var(--fs-sm)}.plain-list li{padding:var(--space-1) 0;border-bottom:var(--rule-hair) solid var(--rule-2)}.chip-list{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0}.chip{padding:1px var(--space-3);border-radius:999px;background:var(--red-pale);color:var(--red-primary);font-size:var(--fs-xs)}.code-block{margin:0;padding:var(--space-3);background:var(--paper-3);border:var(--rule-hair) solid var(--rule-2);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--fs-xs);line-height:1.6;overflow-x:auto;white-space:pre-wrap;overflow-wrap:anywhere}.code-scroll{max-height:22rem;overflow-y:auto}.memory{display:grid;gap:var(--space-3)}.login-page{min-height:100vh;display:grid;place-items:center;padding:var(--space-5);background:linear-gradient(180deg,var(--paper-2) 0%,var(--red-pale) 55%,var(--red-tint-bg) 100%)}.login-card{width:min(24rem,100%);background:var(--paper-2);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-6)}.login-head{margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:2px solid var(--red-primary);text-align:center}.login-head .emblem{display:block;margin:0 auto var(--space-3);width:3.25rem;height:3.25rem}.login-title{font-size:var(--fs-xl);margin-top:var(--space-2);color:var(--red-primary)}.login-sub{margin-top:var(--space-2);color:var(--muted);font-size:var(--fs-sm)}.login-form .btn-block{margin-top:var(--space-3)}.home{max-width:48rem;margin:0 auto;padding:var(--space-6) var(--space-4) var(--space-7)}.home-welcome{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-6) 0 var(--space-5)}.home-emblem{display:block;width:5.5rem;height:5.5rem;object-fit:contain;box-shadow:0 16px 48px var(--red-tint-30);margin-bottom:var(--space-4)}.home-title{font-size:var(--fs-xl);font-weight:700;color:var(--red-primary);letter-spacing:.08em}.home-sub{margin-top:var(--space-2);color:var(--muted);font-size:var(--fs-base);max-width:32rem}.home-tags{display:flex;gap:var(--space-2);margin-top:var(--space-5);flex-wrap:wrap;justify-content:center}.home-tag{padding:var(--space-1) var(--space-4);border-radius:999px;background:var(--red-tint-08);border:var(--rule-hair) solid var(--red-tint-15);color:var(--red-primary);font-size:var(--fs-sm);font-weight:600}.faq-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-lg);font-weight:700;color:var(--ink);margin-bottom:var(--space-4)}.faq-title:before{content:"";width:var(--space-5);height:4px;border-radius:2px;background:var(--red-primary)}.faq-list{display:flex;flex-direction:column;gap:var(--space-3)}.faq-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:var(--paper-2);border:var(--rule-hair) solid var(--red-tint-10);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:left;cursor:pointer;font:inherit;transition:background var(--dur-micro) var(--ease-out),border-color var(--dur-micro) var(--ease-out)}.faq-item:hover{background:var(--red-pale);border-color:var(--red-tint-20)}.faq-content{display:flex;align-items:center;gap:var(--space-3);min-width:0}.faq-no{width:1.5rem;height:1.5rem;flex:0 0 auto;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--red-primary),var(--red-light));color:var(--accent-ink);font-size:var(--fs-xs);font-weight:700;display:flex;align-items:center;justify-content:center}.faq-q{color:var(--ink);font-size:var(--fs-base)}.faq-arrow,.me-chevron{width:8px;height:8px;flex:0 0 auto;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-45deg)}.me-card{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5);border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--red-primary) 0%,var(--red-dark) 100%);color:var(--accent-ink);box-shadow:0 12px 32px var(--red-tint-28);margin-bottom:var(--space-4)}.me-avatar{width:3.5rem;height:3.5rem;flex:0 0 auto;border-radius:50%;background:var(--white-tint-18);border:2px solid var(--white-tint-35);display:flex;align-items:center;justify-content:center;font-size:var(--fs-lg);font-weight:700}.me-name{font-size:var(--fs-lg);font-weight:700}.me-meta{font-size:var(--fs-sm);color:var(--white-tint-85);margin-top:var(--space-1)}.me-section{background:var(--paper-2);border:var(--rule-hair) solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:var(--space-4);overflow:hidden}.me-section-title{padding:var(--space-3) var(--sheet-inset);font-size:var(--fs-sm);font-weight:700;color:var(--ink);border-bottom:var(--rule-hair) solid var(--rule-2);background:var(--paper-3)}.me-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--sheet-inset);border-bottom:var(--rule-hair) solid var(--rule-2);font-size:var(--fs-sm)}.me-row:last-child{border-bottom:none}.me-label{color:var(--muted);flex:0 0 auto}.me-value{color:var(--ink);overflow-wrap:anywhere;text-align:right}.me-action-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-3) var(--sheet-inset);border:none;border-bottom:var(--rule-hair) solid var(--rule-2);background:none;font:inherit;color:var(--ink);cursor:pointer;text-align:left}.me-action-row:hover{background:var(--red-pale);color:var(--red-primary)}.me-action-row:last-child{border-bottom:none}.chat{display:grid;grid-template-columns:minmax(0,1fr) 15rem;gap:var(--space-4);height:calc(100vh - var(--topbar-h) - 4px - var(--space-7))}.chat-main{display:flex;flex-direction:column;min-width:0;border:var(--rule-hair) solid var(--rule);border-radius:var(--radius);background:var(--paper-2);box-shadow:var(--shadow-sm);overflow:hidden}.chat-scroll{flex:1 1 auto;overflow-y:auto;padding:var(--space-5)}.chat-side{border-left:none;padding-left:0}.side-title{font-size:var(--fs-md);padding-bottom:var(--space-2);border-bottom:2px solid var(--red-primary)}.side-text{font-size:var(--fs-sm);color:var(--ink-2);margin-top:var(--space-3)}.side-note{font-size:var(--fs-xs);color:var(--muted);margin-top:var(--space-3)}.chat-intro{max-width:38rem;padding-top:var(--space-6)}.chat-intro-title{font-size:var(--fs-xl);color:var(--red-primary)}.chat-intro-desc{margin-top:var(--space-3);color:var(--ink-2);line-height:1.7}.chat-intro-list{margin-top:var(--space-4);list-style:none;padding:0}.chat-intro-list li{padding:var(--space-2) 0;border-bottom:var(--rule-hair) solid var(--rule-2);font-size:var(--fs-sm);color:var(--ink-2);cursor:pointer}.turn{margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:var(--rule-hair) solid var(--rule-2);max-width:62rem}.turn-head{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.turn-role{font-size:var(--fs-xs);font-weight:700;color:var(--red-primary);padding-bottom:1px;border-bottom:2px solid var(--red-primary)}.turn-user .turn-text{font-size:var(--fs-lg);font-weight:500;line-height:1.6}.turn-actions{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.live-thought{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--ink-2);white-space:pre-wrap;max-width:60rem}.ledger{margin-bottom:var(--space-3);border:var(--rule-hair) solid var(--rule);border-radius:var(--radius-sm);background:var(--paper-3);overflow:hidden}.ledger-summary{cursor:pointer;padding:var(--space-2) var(--space-3);font-size:var(--fs-xs);color:var(--ink-2);background:var(--paper-3)}.ledger-list{list-style:none;margin:0;padding:0 var(--space-3) var(--space-2);background:var(--paper-2)}.ledger-row{display:grid;grid-template-columns:2rem 3rem minmax(0,1fr) auto;align-items:baseline;gap:var(--space-2);padding:var(--space-1) 0;border-top:var(--rule-hair) solid var(--rule-2);font-size:var(--fs-sm)}.ledger-no{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--muted)}.ledger-kind{font-size:var(--fs-xs);color:var(--red-primary);font-weight:600}.ledger-text{overflow-wrap:anywhere;color:var(--ink-2)}.prose{line-height:1.75;overflow-wrap:anywhere}.prose p{margin:0 0 var(--space-3)}.prose h1,.prose h2,.prose h3,.prose h4{margin:var(--space-4) 0 var(--space-2);text-wrap:balance}.prose ul,.prose ol{margin:0 0 var(--space-3)}.prose li{margin-bottom:var(--space-1)}.prose blockquote{margin:var(--space-3) 0;padding:var(--space-2) var(--space-4);border:var(--rule-hair) solid var(--red-tint-15);border-radius:var(--radius-sm);background:var(--red-pale);color:var(--ink-2)}.prose code{padding:1px var(--space-1);background:var(--paper-3);border-radius:4px;font-size:.9em}.prose pre{padding:var(--space-3);background:var(--paper-3);border:var(--rule-hair) solid var(--rule-2);border-radius:var(--radius-sm);overflow-x:auto}.prose pre code{padding:0;background:none}.prose table{margin-bottom:var(--space-3);font-size:var(--fs-sm)}.prose th,.prose td{border:var(--rule-hair) solid var(--rule);padding:var(--space-1) var(--space-2);text-align:left}.sources{list-style:none;margin:var(--space-3) 0 0;padding:0;font-size:var(--fs-sm)}.sources li{padding:var(--space-1) 0;border-top:var(--rule-hair) solid var(--rule-2)}.sources a{color:var(--red-primary)}.composer{border-top:var(--rule-hair) solid var(--rule);padding:var(--space-3) var(--space-4);background:var(--paper-2)}.composer-input{width:100%;border:var(--rule-hair) solid var(--rule-heavy);border-radius:var(--radius-sm);background:var(--paper-2);color:var(--ink)}.composer-input:focus{outline:none;border-color:var(--red-primary);box-shadow:0 0 0 3px var(--red-tint-12)}.composer-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap}.composer-foot-left{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.composer-hint{font-size:var(--fs-xs);color:var(--muted)}.summary-list{list-style:none;margin:0;padding:0}.summary-list li{padding:var(--space-2) 0;border-bottom:var(--rule-hair) solid var(--rule-2)}.summary-meta{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--muted)}.summary-text{margin-top:var(--space-1);font-size:var(--fs-sm)}.msg-list{list-style:none;margin:0;padding:0}.msg{padding:var(--space-3) 0;border-bottom:var(--rule-hair) solid var(--rule-2)}.msg-head{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}.msg-time{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--muted)}.msg-actions{display:flex;gap:var(--space-1);margin-left:auto;flex-wrap:wrap}.msg-actions .btn{min-height:1.75rem;padding:0 var(--space-2);font-size:var(--fs-xs)}.hits{border:var(--rule-hair) solid var(--rule);border-radius:var(--radius-sm);background:var(--paper-3);padding:var(--space-3);margin-bottom:var(--space-4)}.hits-count{font-size:var(--fs-xs);color:var(--muted);margin-bottom:var(--space-2)}.hit{font-size:var(--fs-sm);padding:var(--space-1) 0;border-top:var(--rule-hair) solid var(--rule-2)}.hit-role{font-size:var(--fs-xs);color:var(--muted);margin-right:var(--space-2)}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);display:grid;place-items:center;padding:var(--space-5);z-index:20}.modal-card{width:min(34rem,100%);max-height:85vh;overflow-y:auto;background:var(--paper-2);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-5)}.modal-title{font-size:var(--fs-lg);margin-bottom:var(--space-4);color:var(--red-primary)}.rank-list{list-style:none;margin:0;padding:0}.rank-list li{display:grid;grid-template-columns:2rem minmax(0,1fr) 5rem 3rem;align-items:baseline;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:var(--rule-hair) solid var(--rule-2);font-size:var(--fs-sm)}.rank-no{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--red-primary);font-weight:700}.rank-text{overflow-wrap:anywhere}.rank-tag{font-size:var(--fs-xs);color:var(--ink-2)}.rank-count{font-family:var(--font-mono);font-size:var(--fs-xs);text-align:right}.staging-row{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:var(--rule-hair) solid var(--rule-2)}@media(max-width:64rem){.admin-main{padding:var(--space-4)}.admin-body{flex-direction:column}.admin-side{width:100%;border-right:none;border-bottom:var(--rule-hair) solid var(--rule);display:flex;gap:var(--space-2);overflow-x:auto;padding:var(--space-2) 0}.admin-side-title{display:none}.admin-nav-link{white-space:nowrap;border-left:none;border-bottom:3px solid transparent}.admin-nav-link.is-active{border-left-color:transparent;border-bottom-color:var(--red-primary)}.app-nav-inner{gap:var(--space-4);overflow-x:auto}}@media(max-width:48rem){:root{--fs-xs: .8125rem;--fs-sm: .875rem;--fs-base: 1rem;--fs-md: 1.0625rem;--fs-lg: 1.1875rem;--fs-xl: 1.375rem;--fs-2xl: 1.625rem;--fs-3xl: 2rem}.app-topbar-inner,.admin-topbar-inner{height:3rem;padding:0 var(--space-3)}.admin-topbar-inner{justify-content:flex-start;gap:var(--space-2)}.emblem{width:2rem;height:2rem}.app-brand-title,.admin-brand-title{font-size:var(--fs-base);letter-spacing:0}.app-brand-sub,.app-topbar-right .who,.app-topbar-right .btn,.admin-topbar-right .who,.admin-topbar-right .btn{display:none}.app-main,.admin-main{padding:var(--space-3)}.app-nav{position:fixed;top:auto;bottom:0;left:0;right:0;border-top:var(--rule-hair) solid var(--rule);border-bottom:none;box-shadow:0 -2px 12px var(--ink-tint-04);padding-bottom:env(safe-area-inset-bottom,0px)}.app-nav-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:0;overflow:visible}.app-nav-link{display:flex;align-items:center;justify-content:center;min-height:var(--tap-min);font-size:var(--fs-sm)}.app-nav-link.is-active:after{top:0;bottom:auto;left:25%;right:25%;height:3px;border-radius:0 0 3px 3px}.app-main{padding-bottom:calc(var(--tap-min) + var(--space-6) + env(safe-area-inset-bottom,0px))}.chat{grid-template-columns:minmax(0,1fr);height:auto}.chat-scroll,.composer{padding:var(--space-3)}.composer-hint{display:none}.grid-2{grid-template-columns:minmax(0,1fr)}.pager{flex-wrap:wrap}.table-wrap{overflow-x:visible}.data-table,.data-table tbody,.data-table tr,.data-table td{display:block;width:100%}.data-table thead{display:none}.data-table tbody tr{background:var(--paper-2);border:var(--rule-hair) solid var(--rule);border-radius:var(--radius-sm);margin-bottom:var(--space-3);padding:var(--space-1) 0}.data-table td{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:var(--rule-hair) solid var(--rule-2);text-align:right;overflow-wrap:anywhere}.data-table tbody tr td:last-child{border-bottom:none}.data-table td[data-label]:before{content:attr(data-label);flex:0 0 auto;font-size:var(--fs-xs);color:var(--muted);text-align:left;white-space:nowrap}.data-table tbody tr:hover{background:var(--paper-2)}.data-table td a,.data-table td button{display:inline-flex;align-items:center;min-height:var(--tap-min)}.admin-nav-toggle{display:inline-flex}.admin-backdrop{display:block}.admin-side{position:fixed;top:0;left:0;bottom:0;z-index:30;width:min(16rem,78vw);flex-direction:column;gap:0;overflow-x:hidden;overflow-y:auto;padding:var(--space-4) 0 var(--space-6);border-right:var(--rule-hair) solid var(--rule);border-bottom:none;transform:translate(-100%);transition:transform var(--dur-short) var(--ease-out)}.admin-side.is-open{transform:none}.admin-side-title{display:block}.admin-nav-link{white-space:normal;border-left:3px solid transparent;border-bottom:none;padding:var(--space-3) var(--space-5)}.admin-nav-link.is-active{border-left-color:var(--red-primary);border-bottom-color:transparent}.admin-side-foot{display:block;margin-top:var(--space-4);padding-top:var(--space-2);border-top:var(--rule-hair) solid var(--rule)}}@media(pointer:coarse){.btn,.app-nav-link,.admin-nav-link,.input,.composer-input,.me-action-row{min-height:var(--tap-min)}.composer-hint{display:none}.input,.composer-input{font-size:16px}.switch input{width:1.25rem;height:1.25rem}.data-table td a{display:inline-flex;align-items:center;min-height:var(--tap-min)}.msg-actions .btn{min-height:var(--tap-min)}}
