.admin{--a-bg:#eef1f3;--a-card:#fff;--a-ink:#1f2933;--a-ink-soft:#5a6b78;--a-border:#d7dee3;--a-disabled:#e6ebee;--a-green:#047a36;--a-green-soft:#e6f6ec;--a-green-ink:#046a30;--a-danger:#b3261e;--a-danger-soft:#fdecea;--a-danger-ink:#a8241a;--a-warn-soft:#fff4d6;--a-warn-ink:#7a5200;--a-line:#06c755;--a-r:8px;background:var(--a-bg);min-height:100vh;color:var(--a-ink);font-family:system-ui,-apple-system,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;line-height:1.6}.admin header{background:var(--a-card);border-bottom:1px solid var(--a-border);z-index:2;align-items:center;gap:1.25rem;padding:0 1rem;font-weight:700;display:flex;position:sticky;top:0}.admin .a-brand{color:var(--a-ink);white-space:nowrap;align-items:center;gap:.45rem;padding:.75rem 0;font-size:.95rem;text-decoration:none;display:inline-flex}.admin .a-brand:before{content:"";background:var(--a-line);border-radius:50%;width:.55rem;height:.55rem}.admin header nav{align-items:stretch;gap:.25rem;margin-right:auto;font-size:.9rem;display:flex}.admin header nav a{color:var(--a-ink-soft);white-space:nowrap;border-bottom:3px solid #0000;align-items:center;gap:.4rem;padding:.75rem .7rem;text-decoration:none;display:inline-flex}.admin header nav a:hover{color:var(--a-ink)}.admin header nav a[aria-current=page]{color:var(--a-ink);border-bottom-color:var(--a-line)}.admin .a-site{white-space:nowrap;color:var(--a-green-ink);flex:none;font-size:.85rem}.admin main{max-width:68rem;margin:0 auto;padding:1rem 1rem 6rem}.admin .a-devnote{background:var(--a-warn-soft);color:var(--a-warn-ink);text-align:center;margin:0;padding:.35rem 1rem;font-size:.8rem;font-weight:700}.admin h1{margin:.6rem 0 1rem;font-size:1.3rem;line-height:1.4}.admin h2{border-bottom:1px solid var(--a-border);align-items:center;gap:.5rem;margin:1.6rem 0 .6rem;padding-bottom:.35rem;font-size:1.02rem;display:flex}.admin h3{margin:1rem 0 .4rem;font-size:.92rem}.admin small{color:var(--a-ink-soft);font-size:.8rem;line-height:1.5;display:block}.admin .note{color:var(--a-ink-soft);font-size:.85rem}.admin .error{border-radius:var(--a-r);background:var(--a-danger-soft);color:var(--a-danger-ink);padding:.6rem .9rem;font-size:.9rem;font-weight:700}.admin .mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem}.admin .button{border:1px solid var(--a-green);border-radius:var(--a-r);background:var(--a-green);min-height:2.3rem;box-shadow:none;color:#fff;font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:.35rem;padding:.35rem 1rem;font-size:.9rem;font-weight:700;line-height:1.4;text-decoration:none;transition:none;display:inline-flex}.admin .button:active:not(:disabled){box-shadow:none;filter:brightness(.92);transform:none}.admin .button.secondary{background:var(--a-card);color:var(--a-ink);border-color:var(--a-border)}.admin .button.danger{background:var(--a-danger);border-color:var(--a-danger);color:#fff}.admin .button.small{min-height:2rem;padding:.2rem .7rem;font-size:.82rem}.admin .button:disabled{background:var(--a-disabled);border-color:var(--a-disabled);color:var(--a-ink-soft);cursor:default;filter:none}.admin .actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.9rem;display:flex}.admin label{margin-bottom:.25rem;font-size:.88rem;font-weight:700}.admin textarea,.admin input[type=text]{border:1px solid var(--a-border);border-radius:var(--a-r);padding:.5rem .7rem;font-size:.9rem;line-height:1.6}.admin textarea:focus,.admin input[type=text]:focus{outline:2px solid var(--a-green);outline-offset:0;border-color:var(--a-green)}.admin input[type=checkbox]{accent-color:var(--a-green);margin-top:.2rem}.admin .badge{border-radius:var(--a-r);white-space:nowrap;border:1px solid #0000;margin-right:.3rem;padding:.05rem .5rem;font-size:.75rem;font-weight:700;display:inline-block}.admin .badge.blocking{background:var(--a-danger-soft);color:var(--a-danger-ink)}.admin .badge.warning{background:var(--a-warn-soft);color:var(--a-warn-ink)}.admin .badge.ok{background:var(--a-green-soft);color:var(--a-green-ink)}.admin .badge.quiet{background:var(--a-bg);color:var(--a-ink-soft);border-color:var(--a-border)}.admin .count{border-radius:var(--a-r);background:var(--a-danger);color:#fff;text-align:center;font-variant-numeric:tabular-nums;min-width:1.4rem;padding:0 .35rem;font-size:.75rem;font-weight:700;display:inline-block}.admin .toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 .8rem;display:flex}.admin .toolbar .spacer{margin-left:auto}.admin .admin-table{border-collapse:separate;border-spacing:0;background:var(--a-card);border:1px solid var(--a-border);border-radius:var(--a-r);width:100%;font-size:.88rem;overflow:hidden}.admin .admin-table th,.admin .admin-table td{text-align:left;border-bottom:1px solid var(--a-border);vertical-align:top;padding:.5rem .7rem}.admin .admin-table tr:last-child td{border-bottom:0}.admin .admin-table th{background:var(--a-bg);color:var(--a-ink-soft);white-space:nowrap;font-size:.78rem}.admin .admin-table tbody tr:hover{background:var(--a-bg)}.admin .admin-table .state-cell,.admin .admin-table .date-cell{white-space:nowrap}.admin .admin-table .title-cell{width:45%}.admin .admin-table .detail-cell{width:28%}.admin .admin-table .title-cell a{color:var(--a-green-ink);font-weight:700}.admin .ban-form{min-width:14rem}.admin .ban-form input[type=text]{width:100%}.admin .ban-form .note{margin:.4rem 0 0;font-size:.8rem}.admin .owner-line{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.admin .filter{align-items:center;gap:.4rem;margin:0;font-size:.85rem;display:inline-flex}.admin .filter select{font:inherit;border:1px solid var(--a-border);border-radius:var(--a-r);background:var(--a-card);color:var(--a-ink);padding:.25rem .4rem;font-size:.85rem}.admin .link-button{font:inherit;color:var(--a-ink-soft);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;font-size:.75rem;text-decoration:underline;display:block}.admin .detail{overflow-wrap:anywhere;word-break:normal;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;line-height:1.5;display:block}.admin .panel{background:var(--a-card);border:1px solid var(--a-border);border-radius:var(--a-r);margin:.8rem 0;padding:.8rem 1rem}.admin .panel>:first-child{margin-top:0}.admin .panel>:last-child{margin-bottom:0}.admin .meta{grid-template-columns:auto 1fr;gap:.2rem 1rem;margin:0;font-size:.88rem;display:grid}.admin .meta dt{color:var(--a-ink-soft);white-space:nowrap;font-weight:700}.admin .meta dd{margin:0}.admin .review-grid{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:1.25rem;display:grid}.admin .frame{aspect-ratio:4/3;border:1px solid var(--a-border);border-radius:var(--a-r);background:var(--a-card);width:100%;box-shadow:none;display:block}.admin .files,.admin .findings,.admin .reviews{padding-left:1.1rem;font-size:.88rem}.admin .files li,.admin .findings li,.admin .reviews li{margin-bottom:.4rem}.admin .findings pre,.admin .findings code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem}.admin .findings pre{background:var(--a-bg);border-radius:var(--a-r);margin:.2rem 0 0;padding:.4rem .6rem;overflow-x:auto}.admin .checklist{margin:0;padding-left:0;list-style:none}.admin .checklist label{cursor:pointer;align-items:flex-start;gap:.5rem;margin:0;padding:.3rem 0;font-size:.88rem;font-weight:400;display:flex}.admin .thumb-preview{border-radius:var(--a-r);width:260px;max-width:100%;display:block}.admin .thumb-frame{width:260px;max-width:100%;position:relative}.admin .thumb-frame:before,.admin .thumb-frame:after{content:"";background:color-mix(in srgb, var(--a-ink) 45%, transparent);pointer-events:none;width:23.75%;position:absolute;top:0;bottom:0}.admin .thumb-frame:before{left:0}.admin .thumb-frame:after{right:0}.admin .decide-bar{z-index:1;background:var(--a-card);border:1px solid var(--a-border);border-radius:var(--a-r);flex-wrap:wrap;align-items:center;gap:.5rem;margin:1rem 0 0;padding:.7rem 1rem;display:flex;position:sticky;bottom:0;box-shadow:0 -2px 8px #1f293314}.admin .decide-bar .hint{color:var(--a-ink-soft);margin:0;font-size:.82rem}.admin .decide-bar .spacer{margin-left:auto}.admin .danger-zone{border:1px solid var(--a-danger-soft);background:var(--a-danger-soft);border-radius:var(--a-r);margin:1rem 0;padding:.8rem 1rem}.admin .danger-zone h2{color:var(--a-danger-ink);border-bottom:0;margin-top:0;font-size:.95rem}.admin .report-card{background:var(--a-card);border:1px solid var(--a-border);border-radius:var(--a-r);margin:.6rem 0;padding:.8rem 1rem}.admin .report-card h2{border-bottom:0;margin:0 0 .35rem;padding:0;font-size:.98rem}@media (width<=60rem){.admin .review-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=48rem){.admin main{padding:.75rem .75rem 6rem}.admin header{gap:.5rem;padding:0 .6rem}.admin header nav a{padding:.7rem .45rem}.admin .a-brand{display:none}.admin header nav{scrollbar-width:none;gap:0;min-width:0;overflow-x:auto}.admin header nav::-webkit-scrollbar{display:none}.admin header nav a{gap:.25rem;padding:.7rem .3rem;font-size:.82rem}.admin .count{min-width:1.1rem;padding:0 .2rem;font-size:.7rem}.admin .a-site{font-size:.75rem}.admin .admin-table,.admin .admin-table tbody,.admin .admin-table tr,.admin .admin-table td{width:auto;display:block}.admin .admin-table thead{display:none}.admin .admin-table{background:0 0;border:0;border-radius:0;overflow:visible}.admin .admin-table tr{background:var(--a-card);border:1px solid var(--a-border);border-radius:var(--a-r);margin-bottom:.5rem;padding:.5rem .7rem}.admin .admin-table td{border-bottom:0;padding:.15rem 0}.admin .admin-table td[data-label]:before{content:attr(data-label) "：";color:var(--a-ink-soft);margin-right:.3rem;font-size:.78rem;font-weight:700}.admin .admin-table .title-cell,.admin .admin-table .detail-cell{width:auto}.admin .admin-table .title-cell{font-size:.95rem}.admin .admin-table .title-cell:before{content:none}.admin .meta{grid-template-columns:minmax(0,1fr);gap:0}.admin .meta dt{margin-top:.4rem;font-size:.78rem}.admin .decide-bar .button{flex:8rem}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--cream:#fff8f0;--cream-deep:#fbecdc;--card:#fff;--ink:#4a3b32;--ink-soft:#75604f;--primary:#e35d2b;--primary-ink:#b8420f;--primary-soft:#ffede3;--mint:#38b2a0;--mint-ink:#1b7568;--mint-soft:#e2f5f1;--sun:#f2a93b;--sun-ink:#8a5a05;--sun-soft:#fff3dc;--danger:#d2472f;--danger-ink:#b02e18;--danger-soft:#fdebe7;--line:#06c755;--r-card:20px;--r-field:14px;--r-pill:999px;--shadow-card:0 1px 2px #4a3b320d, 0 8px 20px #4a3b320f;font-family:Hiragino Maru Gothic ProN,ヒラギノ丸ゴ ProN W4,"M PLUS Rounded 1c",Zen Maru Gothic,UD デジタル教科書体 NP-R,system-ui,-apple-system,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;line-height:1.9}*{box-sizing:border-box}body{background:var(--cream);color:var(--ink);background-image:radial-gradient(120% 60% at 50% -10%, var(--primary-soft) 0%, transparent 60%);background-repeat:no-repeat;background-attachment:fixed;margin:0}a{color:var(--mint-ink);text-underline-offset:3px}header{justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.1rem;font-weight:700;display:flex}.brand{color:var(--ink);align-items:center;gap:.5rem;font-size:1.05rem;text-decoration:none;display:inline-flex}.brand svg{flex:none;display:block}header nav{align-items:center;gap:1rem;font-size:.9rem;font-weight:700;display:flex}footer a{color:var(--ink-soft)}header nav a,header nav button{color:var(--primary-ink)}main{max-width:44rem;margin:0 auto;padding:.5rem 1rem 4rem}footer{flex-wrap:wrap;justify-content:center;gap:1.25rem;padding:1.5rem 1rem 2.5rem;font-size:.85rem;display:flex}h1{margin:1.2rem 0 .8rem;font-size:1.65rem;line-height:1.5}h2{align-items:center;gap:.5rem;margin-top:2.4rem;font-size:1.2rem;display:flex}h3{font-size:1rem}small{color:var(--ink-soft);font-size:.82rem;line-height:1.7;display:block}.note{color:var(--ink-soft);font-size:.9rem}.lead{font-size:1.05rem}rt{color:var(--ink-soft);-webkit-user-select:none;user-select:none;font-size:.55em;font-weight:400}:is(p:has(ruby),label:has(ruby),legend:has(ruby),small:has(ruby),h1:has(ruby),h2:has(ruby)){line-height:2.5}.card{background:var(--card);border-radius:var(--r-card);box-shadow:var(--shadow-card);margin:1.25rem 0;padding:1.25rem 1.4rem}.card>:first-child{margin-top:0}.card>:last-child{margin-bottom:0}.panel{border-radius:var(--r-card);background:var(--mint-soft);margin:1.25rem 0;padding:1.1rem 1.3rem}.panel>:first-child{margin-top:0}.panel>:last-child{margin-bottom:0}.panel.sun{background:var(--sun-soft)}.panel.danger{background:var(--danger-soft)}.warn{border-radius:var(--r-card);background:var(--sun-soft);color:var(--sun-ink);margin:1.25rem 0;padding:.9rem 1.15rem;font-size:.92rem;font-weight:700}.error{border-radius:var(--r-field);background:var(--danger-soft);color:var(--danger-ink);padding:.85rem 1.1rem;font-weight:700}.button{border-radius:var(--r-pill);background:var(--primary);min-height:3rem;box-shadow:0 3px 0 color-mix(in srgb, var(--primary) 70%, #000);color:#fff;font:inherit;cursor:pointer;border:0;justify-content:center;align-items:center;gap:.4rem;padding:.6rem 1.6rem;font-size:1.18rem;font-weight:700;line-height:1.4;text-decoration:none;transition:transform 60ms,box-shadow 60ms;display:inline-flex}.button:active:not(:disabled){box-shadow:0 0 0 color-mix(in srgb, var(--primary) 70%, #000);transform:translateY(3px)}.button.secondary{background:var(--card);color:var(--primary-ink);box-shadow:0 3px 0 var(--cream-deep);border:2px solid var(--cream-deep)}.button.secondary:active:not(:disabled){box-shadow:0 0 0 var(--cream-deep)}.button.danger{background:var(--danger);box-shadow:0 3px 0 color-mix(in srgb, var(--danger) 70%, #000)}.button.danger:active:not(:disabled){box-shadow:0 0 0 color-mix(in srgb, var(--danger) 70%, #000)}.button.line{background:var(--line);box-shadow:0 3px 0 color-mix(in srgb, var(--line) 65%, #000)}.button.line:active:not(:disabled){box-shadow:0 0 0 color-mix(in srgb, var(--line) 65%, #000)}.button.small{min-height:2.4rem;padding:.35rem 1.1rem;font-size:1rem}.button:disabled{background:var(--cream-deep);box-shadow:none;color:var(--ink-soft);cursor:default;border:0}button.link{color:var(--mint-ink);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.actions{flex-wrap:wrap;align-items:center;gap:.9rem;margin-top:1.5rem;display:flex}label{margin-bottom:.3rem;font-size:1rem;font-weight:700;display:block}input[type=text],textarea{width:100%;font:inherit;border:2px solid var(--cream-deep);border-radius:var(--r-field);background:var(--card);color:inherit;padding:.7rem .9rem}input[type=text]:focus,textarea:focus{outline:3px solid color-mix(in srgb, var(--primary) 45%, transparent);outline-offset:1px;border-color:var(--primary)}input[type=file]{font:inherit;max-width:100%;font-size:.95rem}input[type=checkbox],input[type=radio]{width:1.15rem;height:1.15rem;accent-color:var(--primary);flex:none;margin-top:.35rem}fieldset{border:2px solid var(--cream-deep);border-radius:var(--r-card);background:var(--card);padding:.6rem 1.2rem 1.2rem}legend{padding:0 .5rem;font-size:1rem;font-weight:700}.radio{margin:.5rem 0}.radio label{cursor:pointer;align-items:flex-start;gap:.6rem;margin-bottom:0;padding:.25rem 0;font-weight:400;display:flex}.hero{text-align:center;padding:1rem 0 .5rem}.hero h1{margin-bottom:.5rem;font-size:1.9rem}.hero .lead{max-width:30rem;margin:0 auto}.steps{gap:.75rem;margin:1.25rem 0;padding:0;list-style:none;display:grid}.steps li{background:var(--card);border-radius:var(--r-card);box-shadow:var(--shadow-card);align-items:flex-start;gap:.9rem;padding:1rem 1.2rem;display:flex}.steps .num{border-radius:var(--r-pill);background:var(--primary-soft);width:2rem;height:2rem;color:var(--primary-ink);flex:none;justify-content:center;align-items:center;margin-top:.15rem;font-size:1rem;font-weight:700;display:flex}.checks{gap:.5rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.checks li{align-items:flex-start;gap:.6rem;display:flex}.checks li:before{content:"✓";color:var(--mint-ink);flex:none;font-weight:700;line-height:1.9}.qr-screen{z-index:10;background:var(--cream);flex-direction:column;align-items:center;gap:.5rem;padding:.75rem 1rem 1rem;display:flex;position:fixed;inset:0}.qr-screen-bar{flex:none;justify-content:space-between;align-self:stretch;gap:.75rem;display:flex}.qr-screen-body{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.6rem;min-height:0;display:flex}.qr-screen-body.facing-other{transform:rotate(180deg)}.qr{background:#fff;border-radius:8px;display:block}.qr-screen-code{border-radius:var(--r-card);box-shadow:var(--shadow-card);background:#fff;padding:.75rem;line-height:0}.qr-screen-code .qr{width:min(70vw,52vh);height:min(70vw,52vh)}.qr-screen-title{margin:0;font-size:1.2rem;font-weight:700}.qr-screen-lead{color:var(--ink-soft);margin:0;font-size:1rem}.qr-screen-hint{color:var(--ink-soft);text-align:center;flex:none;margin:0;font-size:.82rem;line-height:1.6}.code-panel{background:var(--mint-soft);border-radius:var(--r-card);margin:1.25rem 0;padding:1rem 1.2rem}.code-panel h3{margin-top:0}.code-value{letter-spacing:.12em;text-align:center;background:var(--card);border-radius:var(--r-field);color:var(--mint-ink);margin:.75rem 0;padding:.75rem 1rem;font-size:1.6rem;font-weight:700}.flush{margin-top:0}.prompt{white-space:pre-wrap;border:2px dashed var(--cream-deep);border-radius:var(--r-card);background:var(--card);margin:0;padding:1.1rem 1.2rem;font-family:inherit;font-size:.92rem;line-height:1.9}.my-work{background:var(--card);border-radius:var(--r-card);box-shadow:var(--shadow-card);margin-bottom:1.25rem;padding:1.1rem 1.3rem 1.3rem}.my-work h2{margin-top:.2rem;font-size:1.2rem}.share-url{border:2px solid var(--cream-deep);border-radius:var(--r-field);background:var(--cream);word-break:break-all;padding:.7rem .9rem;font-family:ui-monospace,monospace;font-size:.9rem}.state{border-radius:var(--r-pill);padding:.1rem .75rem;font-size:.85rem;font-weight:700;display:inline-block}.state.published{background:var(--mint-soft);color:var(--mint-ink)}.state.pending{background:var(--sun-soft);color:var(--sun-ink)}.state.stopped{background:var(--danger-soft);color:var(--danger-ink)}.danger-zone{border:2px solid color-mix(in srgb, var(--danger) 35%, transparent);border-radius:var(--r-card);background:var(--danger-soft);margin-top:3rem;padding:1.1rem 1.3rem}.danger-zone h2{color:var(--danger-ink);margin-top:0;font-size:1.1rem}.frame{aspect-ratio:4/3;border-radius:var(--r-card);background:var(--card);width:100%;box-shadow:var(--shadow-card);border:0;display:block}.thumb-preview{border-radius:var(--r-field);width:320px;max-width:100%;display:block}.thumb-frame{width:320px;max-width:100%;position:relative}.thumb-frame:before,.thumb-frame:after{content:"";background:color-mix(in srgb, var(--ink) 45%, transparent);pointer-events:none;width:23.75%;position:absolute;top:0;bottom:0}.thumb-frame:before{border-radius:var(--r-field) 0 0 var(--r-field);left:0}.thumb-frame:after{border-radius:0 var(--r-field) var(--r-field) 0;right:0}.data-table{border-collapse:separate;border-spacing:0;background:var(--card);border-radius:var(--r-card);width:100%;box-shadow:var(--shadow-card);font-size:.92rem;overflow:hidden}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--cream-deep);vertical-align:top;padding:.75rem .9rem}.data-table tr:last-child td{border-bottom:0}.data-table th{background:var(--cream);color:var(--ink-soft);font-size:.85rem}.contact{grid-template-columns:auto 1fr;gap:.3rem 1.2rem;margin:.8rem 0;display:grid}.contact dt{color:var(--ink-soft);white-space:nowrap;font-weight:700}.contact dd{margin:0}@media (width<=30rem){.contact{grid-template-columns:minmax(0,1fr);gap:0}.contact dt{margin-top:.5rem}}.checklist{padding-left:0;list-style:none}.checklist label{cursor:pointer;align-items:flex-start;gap:.6rem;padding:.2rem 0;font-weight:400;display:flex}.finding{border-left:4px solid var(--sun);border-radius:2px;margin:1rem 0;padding-left:.9rem}.finding .what{margin:0;font-weight:700}.finding .how,.finding .where{margin:.25rem 0 0}@media (width<=30rem){h1{font-size:1.45rem}.hero h1{font-size:1.6rem}main{padding:.5rem .9rem 3rem}.card,.panel,.my-work{padding:1rem 1.1rem}.actions .button{flex:100%}}@media (prefers-reduced-motion:reduce){.button{transition:none}.button:active:not(:disabled){transform:none}}
