:root{--background:#0e0d0b;--panel:rgba(255,255,255,0.055);--hairline:rgba(212,178,106,0.22);--text:#f3ede0;--dim:rgba(243,237,224,0.55);--accent:#d4b26a;--accent-deep:#a8873f;--accent-light:#f1dfae;--on-accent:#0e0d0b;--increase:#e8a06c;--idle:rgba(255,255,255,0.14);--radius:18px}*{box-sizing:border-box}body{margin:0;background:var(--background);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Noto Sans JP,sans-serif;font-size:14px;line-height:1.7}.shell{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}main{min-width:0;max-width:1120px;padding:28px 32px 64px}.sidebar{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto;padding:22px 14px 24px;border-right:1px solid var(--hairline);background:rgba(0,0,0,.22)}.sidebar-head{display:flex;align-items:baseline;gap:8px;padding:0 10px 18px}.wordmark{font-weight:700;font-size:13px;letter-spacing:3.6px;white-space:nowrap;background:linear-gradient(135deg,var(--accent-light) 0,var(--accent) 45%,var(--accent-deep) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.topbar-sub{font-size:12px}.env-badge,.topbar-sub{color:var(--dim);white-space:nowrap}.env-badge{font-size:10px;letter-spacing:1.6px;padding:2px 8px;border-radius:999px;background:var(--idle)}.env-badge.production{background:var(--increase);color:var(--on-accent);font-weight:700}.env-badge.staging{background:var(--accent);color:var(--on-accent);font-weight:700}body.env-production .sidebar,body.env-production .topbar{border-top:3px solid var(--increase)}.nav-group{margin-bottom:14px}.nav-title{font-size:10.5px;letter-spacing:2.4px;color:var(--dim);padding:6px 10px 4px}.sidebar nav a{display:flex;flex-direction:column;gap:1px;color:var(--dim);text-decoration:none;padding:7px 10px;border-radius:12px}.sidebar nav a .nav-label{font-size:13.5px;font-weight:600;color:var(--text)}.sidebar nav a .nav-hint{font-size:11px;color:var(--dim)}.sidebar nav a:hover{background:var(--idle)}.sidebar nav a.on{background:linear-gradient(135deg,var(--accent-light) 0,var(--accent) 45%,var(--accent-deep) 100%)}.sidebar nav a.on .nav-hint,.sidebar nav a.on .nav-label{color:var(--on-accent)}.menu-close,.topbar{display:none}.menu-button,.menu-close{background:var(--idle);color:var(--text);border:1px solid transparent;border-radius:999px;padding:6px 12px;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer}.nav-backdrop{display:none}@media (max-width:899px){.shell{grid-template-columns:minmax(0,1fr)}main{padding:18px 16px 56px}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--hairline);background:rgba(14,13,11,.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topbar .topbar-sub{flex:1 1;overflow:hidden;text-overflow:ellipsis}.sidebar{position:fixed;top:0;left:0;bottom:0;height:auto;width:min(300px,84vw);z-index:40;transform:translateX(-104%);transition:transform .22s ease;background:var(--background);box-shadow:8px 0 32px rgba(0,0,0,.5)}.sidebar.open{transform:none}.sidebar-head{align-items:center}.menu-close{display:inline-block;margin-left:auto;padding:4px 11px;font-size:16px;line-height:1}.nav-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:30}body.nav-open{overflow:hidden}h1{font-size:21px}td,th{padding:8px 10px}table{font-size:13px}.cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.card{padding:12px 14px}.card .value{font-size:26px}.dash-grid{grid-template-columns:minmax(0,1fr)}.modal.wide{width:calc(100vw - 24px)}}@media (min-width:900px) and (max-width:1199px){.shell{grid-template-columns:200px minmax(0,1fr)}main{padding:24px 22px 56px}.sidebar nav a .nav-hint{display:none}}h1{font-size:24px;margin:8px 0 6px}.lede{color:var(--dim);margin:0 0 4px;max-width:68ch}.lede strong{color:var(--text)}.section-gap{margin-top:24px}.grow{flex:1 1}.sub{color:var(--dim);font-size:12px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em}.when{white-space:nowrap}.title{font-weight:600}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px}.card{background:var(--panel);border:1px solid var(--hairline);border-radius:var(--radius);padding:14px 16px}.card .label{font-size:10.5px;letter-spacing:2.4px;color:var(--dim)}.card .value{font-size:32px;font-weight:700;line-height:1.2;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;background:linear-gradient(135deg,var(--accent-light) 0,var(--accent) 45%,var(--accent-deep) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.card .note{font-size:11.5px;color:var(--dim)}.panel.block{display:block}.panel.block ol,.panel.block p,.panel.block ul{margin:0 0 10px;line-height:1.7}.panel.block ol,.panel.block ul{padding-left:1.4em}.panel.block .form-heading{margin-bottom:10px}.panel.block .form-actions{margin-top:4px}.panel .full{grid-column:1/-1}.panel .field{display:grid;grid-gap:4px;gap:4px}.panel .field .sub{line-height:1.6}.panel .checks{display:flex;flex-wrap:wrap;gap:6px 18px}.panel .checks .checkline{grid-column:auto}.panel{background:var(--panel);border:1px solid var(--hairline);border-radius:var(--radius);padding:18px;display:grid;grid-template-columns:160px 1fr;grid-gap:10px 14px;gap:10px 14px;align-items:center}.panel label{color:var(--dim);font-size:12.5px}.panel input,.panel select,.panel textarea{background-color:rgba(0,0,0,.3);color:var(--text);border:1px solid var(--hairline);border-radius:10px;padding:9px 12px;font-size:14px;font-family:inherit;width:100%}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%23f3ede0' stroke-opacity='.55' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:11px 7px}.panel select{padding-right:32px}.panel button{grid-column:2;justify-self:start}.btn,button{background:var(--idle);color:var(--text);border:1px solid transparent;border-radius:999px;padding:8px 16px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;text-decoration:none;display:inline-block}.btn:hover,button:hover:not(:disabled){border-color:var(--hairline)}button:disabled{opacity:.4;cursor:default}button.primary{background:linear-gradient(135deg,var(--accent-light) 0,var(--accent) 45%,var(--accent-deep) 100%);color:var(--on-accent);font-weight:700}button.warn{color:var(--increase)}.icon-button{padding:6px;width:30px;height:30px;line-height:0}.icon-button svg{width:15px;height:15px}.row-actions{display:flex;gap:6px}.with-icon{display:inline-flex;align-items:center;gap:6px}.with-icon .icon{display:inline-flex}.with-icon .icon,.with-icon .icon svg{width:15px;height:15px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.filters a{color:var(--dim);text-decoration:none;font-size:13px;padding:6px 14px;border-radius:999px;border:1px solid transparent;background:var(--idle)}.filters a.on{background:linear-gradient(135deg,var(--accent-light) 0,var(--accent) 45%,var(--accent-deep) 100%);color:var(--on-accent);font-weight:700}.bulk-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 0}.table-scroll{overflow-x:auto;border:1px solid var(--hairline);border-radius:var(--radius)}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--hairline)}th{font-size:11px;letter-spacing:1.4px;color:var(--dim);font-weight:600}tbody tr:last-child td{border-bottom:none}.w-check{width:32px}.w-actions{width:78px}input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.tag{display:inline-block;font-size:11px;font-weight:700;padding:2px 9px;border-radius:999px;white-space:nowrap}.tag.queued{background:var(--idle);color:var(--dim)}.tag.live{background:linear-gradient(135deg,var(--accent-light) 0,var(--accent) 45%,var(--accent-deep) 100%);color:var(--on-accent)}.tag.expired{background:var(--idle);color:var(--increase)}.empty{border:1px dashed var(--hairline);border-radius:var(--radius);padding:40px 20px;text-align:center;color:var(--dim)}.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;padding:20px;z-index:10}.modal{background:var(--background);border:1px solid var(--hairline);border-radius:20px;padding:22px;width:100%;max-width:420px}.modal-title{font-size:17px;margin:0 0 6px}.modal-desc{color:var(--dim);font-size:12.5px;margin:0 0 14px}.modal-desc strong{color:var(--text)}.issued-list{max-height:40vh;overflow-y:auto;background:rgba(0,0,0,.35);border:1px solid var(--hairline);border-radius:12px;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;letter-spacing:.08em}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:14px}@media (max-width:720px){.panel{grid-template-columns:1fr;gap:6px;padding:14px}.panel label{margin-top:6px}.panel .checkline,.panel .form-actions,.panel button{grid-column:1}.panel input,.panel select,.panel textarea{width:100%}.detail{grid-template-columns:1fr}.filters{gap:6px}.filters a{padding:5px 11px;font-size:12.5px}.lede{font-size:13px}}.search{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.search input,.search select{background-color:rgba(0,0,0,.3);color:var(--text);border:1px solid var(--hairline);border-radius:10px;padding:9px 12px;font-size:14px;font-family:inherit}.search input{flex:1 1;min-width:240px}.search select{flex:none;padding-right:32px}.detail{grid-template-columns:120px 1fr;align-items:baseline}.detail .label{color:var(--dim);font-size:12.5px}.detail a{color:var(--accent)}h2{font-size:15px;margin:0 0 8px;letter-spacing:.04em}.card .value.small{font-size:17px;font-feature-settings:normal;font-variant-numeric:normal}.exercise-form input[type=search],.exercise-form input[type=text],.exercise-form select,.exercise-form textarea{width:100%}.checkline{grid-column:2;display:flex;gap:8px;align-items:flex-start;color:var(--text);font-size:13.5px;cursor:pointer}.checkline input{margin-top:2px;flex:none}.form-actions{grid-column:2;display:flex;gap:8px}.form-errors{display:flex;flex-direction:column;gap:4px;color:var(--increase)}.form-errors,.form-warn{grid-column:1/-1;margin:0;font-size:12.5px}.form-warn{border:1px solid var(--hairline);border-radius:12px;padding:10px 12px;color:var(--dim);line-height:1.7}.form-warn strong,.group-row th{color:var(--text)}.group-row th{background:var(--idle);font-size:12px;letter-spacing:1.2px;padding:7px 12px}.is-deprecated td{opacity:.5}.is-deprecated .tag{margin-left:8px}.export-row{margin:0 0 12px}.file-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.file-row input[type=file]{flex:1 1;min-width:240px;font-size:13px;color:var(--dim)}.file-row input[type=file]::-webkit-file-upload-button{background:var(--idle);color:var(--text);border:1px solid transparent;border-radius:999px;padding:7px 14px;margin-right:10px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer}.file-row input[type=file]::file-selector-button{background:var(--idle);color:var(--text);border:1px solid transparent;border-radius:999px;padding:7px 14px;margin-right:10px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer}.file-row input[type=file]::-webkit-file-upload-button:hover{border-color:var(--hairline)}.file-row input[type=file]::file-selector-button:hover{border-color:var(--hairline)}.file-note{grid-column:2;margin:0;line-height:1.7}.file-note code{font-size:11.5px}.form-done{grid-column:1/-1;margin:0;border:1px solid var(--hairline);border-radius:12px;padding:10px 12px;color:var(--dim);font-size:12.5px}.form-done strong{color:var(--accent)}.modal.wide{max-width:860px;width:calc(100vw - 48px)}.import-group{margin-top:16px}.import-group h3{font-size:13px;margin:0 0 6px;display:flex;align-items:baseline;gap:8px}.import-group h3 .count{color:var(--dim);font-size:12px;font-weight:400}.import-group h3.warn-text{color:var(--increase)}.import-list{max-height:320px;overflow:auto;border:1px solid var(--hairline);border-radius:12px}.import-list.short{max-height:160px}.import-list td,.import-list th{padding:7px 10px;font-size:12.5px}.import-list thead th{position:-webkit-sticky;position:sticky;top:0;background:var(--background)}.import-errors{margin:0;padding:10px 10px 10px 26px}.import-errors li{color:var(--increase);font-size:12.5px;line-height:1.8}.form-heading{grid-column:1/-1;margin:0 0 4px}.form-heading .sub{font-weight:400;margin-left:8px}.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:12px;gap:12px;margin-top:24px}.dash-panel{background:var(--panel);border:1px solid var(--hairline);border-radius:var(--radius);padding:14px 16px;min-width:0}.dash-panel h2{font-size:13px;letter-spacing:1.2px;color:var(--dim);margin:0 0 10px;font-weight:600}.card a,.dash-panel h2 a{color:inherit}.card a{text-decoration:none}.card .value.plain{background:none;color:var(--text);-webkit-text-fill-color:initial}.bars{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;grid-gap:4px;gap:4px;align-items:end;height:120px;padding-top:6px}.bar-col{display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;height:100%;min-width:0}.bar-seg{border-radius:2px 2px 0 0}.bar-seg.ok{background:var(--accent)}.bar-seg.failed{background:var(--danger,#d4525f);opacity:.85}.bar-seg.attempt{background:var(--dim);opacity:.6}.bar-axis{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;grid-gap:4px;gap:4px;margin-top:4px}.bar-axis span{font-size:10px;color:var(--dim);text-align:center;overflow:hidden;white-space:nowrap}.legend{display:flex;gap:12px;margin-top:8px;font-size:11.5px;color:var(--dim);flex-wrap:wrap}.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;vertical-align:-1px;margin-right:4px}.dash-list{list-style:none;margin:0;padding:0}.dash-list li{padding:8px 0;border-top:1px solid var(--hairline);font-size:13px;display:grid;grid-gap:2px;gap:2px}.dash-list li:first-child{border-top:0;padding-top:0}.dash-list .meta{font-size:11px;color:var(--dim)}.kind-table{width:100%;border-collapse:collapse;font-size:13px}.kind-table td{padding:6px 0;border-top:1px solid var(--hairline)}.kind-table tr:first-child td{border-top:0}.kind-table td.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}button.small{padding:4px 10px;font-size:12px}button.primary.danger{background:linear-gradient(135deg,#f0b48a 0,var(--increase) 50%,#b8683a 100%)}th.num{text-align:right}.kind-table th{padding:4px 0;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--dim);font-weight:600;text-align:left}.kind-table th.num{text-align:right}.note-field{display:flex;flex-direction:column;gap:4px;margin-top:8px;min-width:14rem}.note-field textarea{width:100%;min-height:2.6em;font:inherit;font-size:12px;padding:6px 8px;border-radius:8px;border:1px solid var(--hairline);background:var(--panel);color:var(--text);resize:vertical}.note-field textarea:focus{outline:none;border-color:var(--accent)}.health{display:flex;flex-wrap:wrap;gap:10px 18px;padding:10px 14px;border-radius:12px;border:1px solid var(--hairline);background:var(--panel);font-size:13px}.health-item{display:inline-flex;align-items:center;gap:8px}.health-dot{width:9px;height:9px;border-radius:50%;background:var(--idle);flex:none}.health-item.ok .health-dot{background:#7fc98a;box-shadow:0 0 0 3px rgba(127,201,138,.18)}.health-item.warn .health-dot{background:var(--accent);box-shadow:0 0 0 3px rgba(212,178,106,.2)}.health-item.bad .health-dot{background:var(--increase);box-shadow:0 0 0 3px rgba(232,160,108,.25)}.health-item.bad strong{color:var(--increase)}.kind-table td+td,.kind-table th+th{padding-left:12px}.kind-table td.mono{max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.public{padding:0}.page-doc{max-width:680px;margin:0 auto;padding:56px 20px 96px;font-size:15px}.page-doc-brand{margin:0 0 28px;font-size:13px;letter-spacing:.32em;color:var(--accent);text-transform:uppercase}.page-doc h1{margin:0 0 6px;font-size:26px;letter-spacing:.04em}.page-doc-updated{margin:0 0 28px;color:var(--dim);font-size:13px}.page-doc-intro{margin:0 0 36px}.page-doc h2{margin:36px 0 10px;padding-top:22px;font-size:17px;letter-spacing:.02em;border-top:1px solid var(--hairline)}.page-doc h3{margin:26px 0 6px;font-size:15px;color:var(--accent-light)}.page-doc p{margin:0 0 14px}.page-doc a{color:var(--accent)}.page-doc-links{display:flex;flex-wrap:wrap;gap:20px;margin-top:48px;padding-top:22px;border-top:1px solid var(--hairline);font-size:14px}@media (max-width:520px){.page-doc{padding:36px 18px 72px}.page-doc h1{font-size:22px}}.page-home{max-width:860px;margin:0 auto;padding:72px 20px 96px;font-size:15px}.page-home-hero{max-width:620px}.page-home-brand{margin:0 0 24px;font-size:15px;letter-spacing:.42em;color:var(--accent)}.page-home h1{margin:0 0 18px;font-size:32px;line-height:1.45;letter-spacing:.04em}.page-home-lede{margin:0 0 12px;color:var(--text)}.page-home-status{margin:0;color:var(--dim);font-size:14px}.page-home-grid{display:grid;grid-gap:16px;gap:16px;margin:56px 0 0;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.page-home-card{background:var(--panel);border:1px solid var(--hairline);border-radius:var(--radius);padding:22px 22px 24px}.page-home-card h2{margin:0 0 8px;font-size:16px;color:var(--accent-light);letter-spacing:.02em}.page-home-card p{margin:0;color:var(--dim)}.page-home-note{margin-top:48px;color:var(--dim);font-size:14px}.page-home-note p{margin:0 0 10px}.page-home a{color:var(--accent)}@media (max-width:520px){.page-home{padding:44px 18px 72px}.page-home h1{font-size:25px}}