.ex-intro{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;align-items:center}.ex-intro h2{font-size:1.25rem;margin:0 0 4px}.ex-steps{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px;counter-reset:s}.ex-steps li{counter-increment:s;font-size:13px;padding:5px 12px 5px 6px;border-radius:99px;background:var(--off);display:flex;align-items:center;gap:6px}.ex-steps li:before{content:counter(s);width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;font-size:11px;font-weight:700}.ex-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.ex-item{display:grid;gap:6px}.ex-item:hover{border-color:var(--blue)}.ex-item__bar{height:8px;background:var(--track);overflow:hidden}.ex-item__bar,.ex-item__bar i{display:block;border-radius:99px}.ex-item__bar i{height:100%;background:var(--ok)}.ex-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.ex-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}.ex-head h2{font-size:1.3rem;margin:0}.ex-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:8px}.ex-tabs a{padding:8px 16px;border-radius:10px;font-weight:600;font-size:14px;color:var(--muted)}.ex-tabs a:hover{background:var(--off);color:var(--text)}.ex-tabs a.is-active{background:var(--blue);color:#fff}.ex-tabs a.is-done:not(.is-active){color:var(--ok)}.ex-quick__row{display:flex;gap:8px}.ex-quick__row .input{flex:1 1;min-width:0;font-family:ui-monospace,monospace;letter-spacing:.08em}.ex-quick__tips{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;color:var(--muted);line-height:1.5}.ex-quick__tips li{display:inline-flex;align-items:center;gap:6px}.ex-quick__tips kbd{font-family:inherit;font-size:12px;font-weight:600;line-height:1;color:var(--text);padding:4px 7px;border:solid var(--line-strong,var(--line));border-width:1px 1px 2px;border-radius:6px;background:var(--surface)}.ex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:4px 18px}.ex-row{display:flex;align-items:center;gap:5px;padding:3px 6px;border-radius:8px}.ex-row.is-empty .ex-row__n{color:var(--bad)}.ex-row.is-flag{background:color-mix(in srgb,var(--warn) 16%,var(--surface));outline:1.5px solid var(--warn)}.ex-row__n{width:28px;text-align:right;font-weight:700;font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--muted)}.ex-row__multi{font-size:11px;font-weight:700;color:var(--blue)}.ex-bub{width:30px;height:30px;border-radius:50%;border:1.5px solid #e58c8c;background:var(--surface);color:#B33A3A;font:inherit;font-size:13px;font-weight:600;cursor:pointer;display:grid;place-items:center;padding:0;flex:none}.ex-bub.is-on,.ex-bub:hover:not(:disabled){border-color:var(--text)}.ex-bub.is-on{background:var(--text);color:var(--surface)}.ex-bub--x{border-color:var(--line-strong);color:var(--muted);font-size:11px;width:auto;min-width:30px;padding:0 6px;border-radius:99px}.ex-bub--x.is-on{background:var(--bad);border-color:var(--bad);color:#fff}.ex-savebar{position:sticky;bottom:0;display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end;padding:12px 14px;background:color-mix(in srgb,var(--surface) 94%,transparent);border:1px solid var(--line);border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:5}.ex-savebar>:first-child{margin-right:auto;font-weight:600}.ok{color:var(--ok)}.warn{color:var(--warn)}.bad{color:var(--bad)}.ex-alert{padding:10px 14px;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--warn) 40%,transparent);font-size:14px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.ex-alert,.ex-warn{background:color-mix(in srgb,var(--warn) 12%,var(--surface))}.ex-warn{border:1px solid color-mix(in srgb,var(--warn) 45%,transparent)}.ex-warn p{margin:6px 0 0}.ex-editor{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px;align-items:start}.ex-roster{position:sticky;top:80px;max-height:calc(100vh - 100px);overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px}.ex-roster__sum{display:flex;gap:10px;flex-wrap:wrap;padding:4px 6px 8px;border-bottom:1px solid var(--line);margin-bottom:4px}.ex-roster ul{list-style:none;margin:0;padding:0}.ex-roster__item{width:100%;display:flex;gap:8px;align-items:center;padding:6px 8px;border:0;background:none;border-radius:8px;font:inherit;font-size:13.5px;text-align:left;cursor:pointer;color:var(--text)}.ex-roster__item span:first-child{width:22px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ex-roster__item .grow{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ex-roster__item i{font-style:normal;font-size:12px}.ex-roster__item.is-done i{color:var(--ok)}.ex-roster__item.is-flag i{color:var(--warn)}.ex-roster__item.is-absent i{color:var(--muted)}.ex-roster__item:hover{background:var(--off)}.ex-roster__item.is-cur{background:color-mix(in srgb,var(--blue) 12%,var(--surface));font-weight:600}.ex-sheet__head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.ex-sheet__head>div{display:flex;flex-direction:column}.ex-sheet .check{padding:6px 12px}.ex-typed{font-family:ui-monospace,monospace;letter-spacing:.1em;font-size:16px}.ex-upload{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.ex-upload>div{flex:1 1;min-width:240px}.ex-upload label.btn{cursor:pointer}.ex-scan-sum{display:flex;align-items:center;gap:14px;flex-wrap:wrap;position:sticky;top:70px;z-index:5;padding:10px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.ex-scan-sum .grow{flex:1 1}.ex-pages{display:grid;gap:12px}.ex-page{display:grid;gap:10px;border-left:4px solid var(--ok)}.ex-page.is-flag{border-left-color:var(--warn)}.ex-page.is-err{border-left-color:var(--bad)}.ex-page.is-saved{opacity:.7}.ex-page.is-skip{opacity:.5}.ex-page__head{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.ex-page__head b{margin-right:auto}.ex-crop{max-width:100%;height:auto;border-radius:8px;border:1px solid var(--line);background:#fff}.ex-crop--head{max-height:90px;object-fit:contain;object-position:left}.ex-fix{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px;border-radius:10px;background:color-mix(in srgb,var(--warn) 10%,var(--surface))}.ex-fix__n{font-weight:700;display:flex;flex-direction:column}.ex-fix__n small{font-weight:400;color:var(--warn);font-size:12px}.ex-fix__opts{display:flex;gap:4px;flex-wrap:wrap}.ex-print-btns{display:flex;gap:10px;flex-wrap:wrap}.ex-check{margin:0;padding-left:20px;display:grid;gap:6px;font-size:14.5px}.ex-danger{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.ex-gates{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.ex-gate{display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--line);font-size:13.5px}.ex-gate b{font-size:20px;min-width:34px;text-align:center}.ex-gate.is-ok b{color:var(--ok)}.ex-gate.is-warn b{color:var(--warn)}.ex-gate.is-bad b{color:var(--bad)}.ex-gate.is-bad{border-color:color-mix(in srgb,var(--bad) 45%,transparent)}.ex-gate__txt{display:grid;gap:6px;min-width:0;line-height:1.4}.ex-gate--wide{grid-column:span 2}@media (max-width:600px){.ex-gate--wide{grid-column:auto}}.ex-gate__nums{display:flex;flex-wrap:wrap;gap:4px}.ex-gate__nums i{font-style:normal;font-weight:600;font-size:12px;min-width:24px;text-align:center;padding:2px 6px;border-radius:999px;background:var(--off);border:1px solid var(--line);color:var(--text)}.ex-gate__nums i small{font-weight:400;color:var(--muted);font-size:11px}.ex-gate__nums i.is-more{color:var(--muted);background:none}.ex-send{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.ex-send>div{flex:1 1;min-width:240px}.ex-send__form{display:contents}.ex-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.ex-stats>div{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 14px;display:flex;flex-direction:column}.ex-stats span{font-size:12.5px;color:var(--muted)}.ex-stats b{font-size:20px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ex-tw{overflow-x:auto}.ex-table{width:100%;border-collapse:collapse;font-size:13.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ex-table td,.ex-table th{padding:7px 10px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.ex-table th{font-size:12.5px;color:var(--muted);font-weight:600;background:var(--off)}.ex-items tr.is-bad td{background:color-mix(in srgb,var(--bad) 10%,var(--surface))}.ex-items tr.is-warn td{background:color-mix(in srgb,var(--warn) 8%,var(--surface))}.ex-items td.ex-right{font-weight:700;color:var(--ok)}.ex-tfoot,.print-only{display:none}@media print{.print-only{display:block}.crumbs,.ex-gates,.ex-tabs{display:none!important}.ex-table td,.ex-table th{padding:4px 6px;font-size:11px}.card{box-shadow:none!important;border:1px solid #ddd;page-break-inside:avoid;break-inside:avoid}@page exrep{size:A4;margin:0}.ex-results{page:exrep;padding:12mm 13mm 14mm;box-decoration-break:clone;-webkit-box-decoration-break:clone;color:#000;gap:10px}.ex-results .card{border:0;padding:0;border-radius:0;background:none;page-break-inside:auto;break-inside:auto}.ex-results h3{font-size:13.5px;margin:6px 0!important}.ex-results .muted{color:#444!important}.ex-rep{display:grid!important;justify-items:center;text-align:center;gap:2px;margin-bottom:6px}.ex-rep__logo{width:22mm;height:22mm;object-fit:contain;margin-bottom:2px}.ex-rep__school{font-size:15px;font-weight:700}.ex-rep__kind{font-size:12.5px;letter-spacing:.04em}.ex-rep__title{font-size:18px;margin:2px 0 8px}.ex-rep__meta{width:calc(100% - 2px);border-collapse:collapse;font-size:11.5px;text-align:left}.ex-rep__meta tbody tr td,.ex-rep__meta tbody tr th{border:1px solid #999;padding:4px 8px}.ex-rep__meta td{width:36%}.ex-rep__meta th{width:14%;background:#f1f1f1;font-weight:600;white-space:nowrap}.ex-rep__h{display:block}.ex-stats{grid-template-columns:repeat(5,1fr);gap:0;border:1px solid #999}.ex-stats>div{border:0;border-left:1px solid #999;border-radius:0;padding:5px 8px;align-items:center;background:none}.ex-stats>div:first-child{border-left:0}.ex-stats span{color:#444;font-size:10.5px}.ex-stats b{font-size:15px}.ex-table{font-size:11px}.ex-table tbody tr td,.ex-table tr th{border:1px solid #999;text-align:center}.ex-table th{background:#f1f1f1;color:#000}.ex-table td.ex-name{text-align:left}.ex-table tr{page-break-inside:avoid;break-inside:avoid}.ex-tfoot{display:table-footer-group}.ex-table .ex-tfoot td{border:0;border-top:1px solid #999;padding:0;height:0;line-height:0}.ex-sign{display:grid!important;grid-template-columns:1fr 1fr;margin-top:16px;text-align:center;line-height:1.75;font-size:12px;page-break-inside:avoid;break-inside:avoid}.ex-anal,.ex-indsec{page-break-before:always;break-before:page}.ex-anal h3,.ex-anal>p,.ex-indsec h3{page-break-after:avoid;break-after:avoid}.ex-anal .ex-table{font-size:10px}.ex-anal .ex-table td,.ex-anal .ex-table th{padding:2px 4px;line-height:1.25}.ex-anal__legend{display:block;font-size:10px;margin:0 0 4px}.ex-anal__split{display:grid!important;grid-template-columns:1fr 1fr;gap:4mm;align-items:start}.ex-items--slim td:last-child,.ex-items--slim th:last-child{width:14px;padding:2px 1px}}@media (max-width:1180px){.ex-editor{grid-template-columns:minmax(0,1fr)}.ex-roster{position:static;max-height:220px}.ex-roster ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:0 6px}}@media (max-width:860px){.ex-intro{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.ex-fix,.ex-grid{grid-template-columns:minmax(0,1fr)}}.ex-h2{font-size:1.1rem;margin:0}.ex-flow{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ex-flow li{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;padding:12px 14px;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--line)}.ex-flow b{grid-row:span 2;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;font-size:14px}.ex-flow span{font-weight:700;font-size:14px}.ex-flow small{color:var(--muted);font-size:12px;line-height:1.35}.ex-count,.ex-create{display:grid;gap:12px}.ex-count{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.ex-count__row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.ex-count__row .chip{cursor:pointer}.ex-count__n{width:84px}.ex-more summary{cursor:pointer;font-weight:600;color:var(--blue);font-size:14px;margin-bottom:10px}.ex-more[open]{display:grid;gap:12px}.ex-logo{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.ex-logo__box{width:96px;height:96px;border-radius:var(--radius-sm);border:1.5px dashed var(--line-strong);display:grid;place-items:center;background:#fff;overflow:hidden;flex:none}.ex-logo__box img{width:100%;height:100%;object-fit:contain}.ex-logo label.btn{cursor:pointer}.cam-sum{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:15px}.cam-start{display:grid;gap:12px;justify-items:start}.cam-start__btn{font-size:17px;padding:14px 22px}.cam-view{position:relative;width:100%;max-width:560px;margin:0 auto;border-radius:var(--radius-sm);overflow:hidden;background:#000}.cam-video{display:block;width:100%;height:auto}.cam-guide{position:absolute;border:2px solid rgba(255,255,255,.85);border-radius:6px;box-shadow:0 0 0 9999px rgba(0,0,0,.35);transition:border-color .15s;pointer-events:none}.cam-guide.is-ok{border-color:#3ddc84}.cam-guide.is-warn{border-color:#ffb020}.cam-guide i{position:absolute;width:14%;aspect-ratio:1;border:4px solid;color:inherit}.cam-guide i:first-child{left:-3px;top:-3px;border-right:0;border-bottom:0}.cam-guide i:nth-child(2){right:-3px;top:-3px;border-left:0;border-bottom:0}.cam-guide i:nth-child(3){left:-3px;bottom:-3px;border-right:0;border-top:0}.cam-guide i:nth-child(4){right:-3px;bottom:-3px;border-left:0;border-top:0}.cam-guide{color:rgba(255,255,255,.95)}.cam-guide.is-ok{color:#3ddc84}.cam-guide.is-warn{color:#ffb020}.cam-hint{position:absolute;left:10px;right:10px;top:10px;padding:8px 12px;border-radius:10px;background:rgba(0,0,0,.65);color:#fff;font-size:14px;text-align:center}.cam-hint.is-ok{background:rgba(20,120,60,.85)}.cam-hint.is-warn{background:rgba(170,100,0,.9)}.cam-flash{position:absolute;left:10px;right:10px;bottom:58px;padding:12px;border-radius:12px;background:#1e9e55;color:#fff;font-weight:700;text-align:center;animation:cam-pop .25s ease-out}@keyframes cam-pop{0%{transform:scale(.92);opacity:0}to{transform:none;opacity:1}}.cam-bar{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:center;gap:8px;padding:10px;background:linear-gradient(transparent,rgba(0,0,0,.6))}.cam-bar .btn{background:rgba(255,255,255,.92)}.cam-shot{display:grid;gap:12px;border:2px solid var(--warn);scroll-margin-top:76px}.cam-view{scroll-margin-top:70px}.cam-list{margin:0;padding:0;list-style:none;display:grid;gap:4px}.cam-list li{display:flex;justify-content:space-between;gap:10px;padding:6px 10px;border-radius:8px;background:var(--off);font-size:14px}@media (max-width:760px){.ex-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.ex-count{grid-template-columns:1fr}.cam-view{margin:0 -16px;width:calc(100% + 32px);max-width:none;border-radius:0}}.ex-create{scroll-margin-top:76px}.ex-grid--cols{gap:4px 40px;justify-content:center}@media (max-width:560px){.ex-grid--cols{row-gap:2px}.ex-grid--cols .ex-row{justify-content:space-between;gap:4px;padding:3px 4px}.ex-grid--cols .ex-row__n{width:26px;font-size:14px}.ex-grid--cols .ex-bub{width:42px;height:42px;font-size:16px}.ex-grid--cols .ex-bub--x{min-width:42px}.ex-grid--cols .ex-row__multi{position:absolute;right:2px}.ex-grid--cols .ex-row{position:relative}.ex-savebar{gap:8px;padding:10px}.ex-savebar>:first-child{flex:1 0 100%;margin-right:0}.ex-savebar .btn{flex:1 1;justify-content:center;padding-left:10px;padding-right:10px}}.ex-pp{display:grid;gap:12px}.ex-pp__opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.ex-pp__opt{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 14px;border:1.5px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);cursor:default}label.ex-pp__opt{cursor:pointer}.ex-pp__opt.is-on{border-color:var(--blue);background:color-mix(in srgb,var(--blue) 6%,var(--surface))}.ex-pp__opt input[type=checkbox]{width:20px;height:20px;accent-color:var(--blue);flex:none}.ex-pp__opt>span{display:grid;gap:2px;flex:1 1;min-width:150px}.ex-pp__opt small{color:var(--muted);font-size:12.5px}.ex-pp__go{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ex-card{position:relative;display:grid}.ex-card .ex-item{padding:14px 16px;gap:6px;border-radius:var(--radius-sm)}.ex-card .ex-item>b{font-size:15.5px;padding-right:58px}.ex-card .ex-item>.muted,.ex-card .ex-item>b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ex-card .ex-item>.muted{font-size:13px}.ex-card .ex-item__bar{height:6px}.ex-item__foot{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.ex-item__foot .tag{font-size:12px;white-space:nowrap}.ex-card__del{position:absolute;top:9px;right:9px}.ex-card__del .ex-del{padding:3px 9px;font-size:12.5px;font-weight:600;border-radius:8px;color:var(--bad);background:var(--surface);border:1.5px solid color-mix(in srgb,var(--bad) 45%,transparent)}.ex-card__del .ex-del:focus-visible,.ex-card__del .ex-del:hover{background:var(--bad);border-color:var(--bad);color:#fff}.ex-undo{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 14px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--warn) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--warn) 40%,transparent)}.ex-undo--ok{background:color-mix(in srgb,var(--ok) 12%,var(--surface));border-color:color-mix(in srgb,var(--ok) 40%,transparent)}.ex-crop--whole{display:block;width:100%;max-width:360px;margin:8px 0;border:1px solid var(--line);border-radius:8px}.ex-count .field>.ex-count__row+.ex-count__row{margin-top:6px}.chip--sm{font-size:12.5px;padding:3px 10px}.ex-seg{display:inline-flex;padding:3px;border-radius:12px;background:var(--off);border:1px solid var(--line)}.ex-seg label{position:relative;white-space:nowrap;letter-spacing:.06em;padding:6px 16px;border-radius:9px;font-size:13.5px;font-weight:600;color:var(--muted);cursor:pointer}.ex-seg input{position:absolute;opacity:0;pointer-events:none}.ex-seg label.is-on{background:var(--surface);color:var(--blue);box-shadow:0 1px 4px rgba(0,0,0,.12)}.ex-seg label:has(input:focus-visible){outline:2px solid var(--blue);outline-offset:1px}.ex-target{display:grid;gap:10px}.ex-rooms{display:grid;gap:8px;padding:12px 14px;border-radius:var(--radius-sm);background:var(--off);border:1px solid var(--line)}.ex-rooms__grp{border-bottom:1px solid var(--line);padding-bottom:6px}.ex-rooms__grp:last-of-type{border-bottom:0;padding-bottom:0}.ex-rooms__grp>summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;cursor:pointer;list-style:none;padding:4px 0;min-height:32px}.ex-rooms__grp>summary::-webkit-details-marker{display:none}.ex-rooms__grp>summary:before{content:"▸";color:var(--muted);transition:transform .15s}.ex-rooms__grp[open]>summary:before{transform:rotate(90deg)}.ex-rooms__grp>summary b{font-size:14px}.ex-rooms__grp>.ex-count__row{margin:4px 0 2px 18px}.ex-rooms .chip{cursor:pointer}.ex-rooms .chip small{opacity:.75}.ex-seats{max-width:220px}.ex-roompick{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.ex-roompick .field{min-width:220px}.ex-roster__room{display:inline-block;margin-right:6px;padding:0 6px;border-radius:6px;background:var(--off);color:var(--muted);font-size:11px;font-weight:600}.ex-setup{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ex-setup__card{display:grid;align-content:start;gap:10px;padding:14px 16px;border-radius:var(--radius-sm);background:var(--off);border:1px solid var(--line)}.ex-setup__label{font-weight:700;font-size:14px}.ex-setup__quick{display:flex;flex-wrap:wrap;gap:6px}.ex-setup__quick .chip{cursor:pointer}.ex-setup .ex-seg{justify-self:start}.ex-stepper{display:flex;align-items:center;gap:6px}.ex-stepper button{width:40px;height:44px;border-radius:12px;border:1px solid var(--line);background:var(--surface);font-size:20px;line-height:1;color:var(--text);cursor:pointer;flex:none}.ex-stepper button:hover{border-color:var(--blue);color:var(--blue)}.ex-stepper input{width:84px;height:44px;text-align:center;font-size:20px;font-weight:700;border-radius:12px;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);-moz-appearance:textfield}.ex-stepper input::-webkit-inner-spin-button,.ex-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ex-stepper input::placeholder{color:var(--text);opacity:.45}.ex-stepper>span{color:var(--muted);font-size:14px}.ex-setup__sum{grid-column:1/-1;margin:0;display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;padding:10px 16px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--blue) 9%,var(--surface));border:1px solid color-mix(in srgb,var(--blue) 25%,transparent);font-size:14px}@media (max-width:900px){.ex-setup{grid-template-columns:1fr}.ex-setup__sum{flex-direction:column}}.ex-essay{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--muted);padding-top:8px;border-top:1px dashed var(--line)}.ex-essay input{width:72px;text-align:center;font-weight:700}.ex-listhead{align-items:center;justify-content:space-between;gap:10px 16px}.ex-filter,.ex-listhead{display:flex;flex-wrap:wrap}.ex-filter{gap:6px}.ex-filter .chip small{opacity:.7;margin-left:2px}.ex-group{display:grid;gap:10px}.ex-group>summary{display:flex;align-items:baseline;gap:10px;cursor:pointer;list-style:none;padding:6px 0;border-bottom:1px solid var(--line)}.ex-group>summary::-webkit-details-marker{display:none}.ex-group>summary:before{content:"▸";color:var(--muted);transition:transform .15s}.ex-group[open]>summary:before{transform:rotate(90deg)}.ex-group>summary b{font-size:16px}.ex-tplbar{justify-content:space-between;gap:10px}.ex-tplbar,.ex-tplpick{display:flex;align-items:center;flex-wrap:wrap}.ex-tplpick{gap:6px;padding:10px 12px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--blue) 7%,var(--surface))}.ex-fromtpl>summary{color:var(--text);font-weight:600}.ex-fromtpl[open]{padding-bottom:6px}.ex-savetpl{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;font-size:14px}.ex-savetpl .input{flex:1 1 220px;max-width:360px}.ex-tpl-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}.ex-tpl{display:grid;align-content:start;gap:8px;padding:12px 14px;border-radius:var(--radius-sm);font-size:13px}.ex-tpl__top{display:flex;gap:10px;align-items:flex-start}.ex-tpl__logo{width:34px;height:34px;object-fit:contain;border-radius:6px;flex:none}.ex-tpl__name{display:grid;gap:2px;min-width:0}.ex-tpl__name b{font-size:14.5px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ex-tpl__name .muted{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ex-tpl__info{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;margin:0;padding:8px 10px;border-radius:8px;background:var(--off)}.ex-tpl__info dt{color:var(--muted);font-size:12px;white-space:nowrap}.ex-tpl__info dd{margin:0;font-size:13px;font-weight:600;color:var(--text);min-width:0;overflow-wrap:anywhere}.ex-tpl__info dd small{font-weight:400;color:var(--muted)}.ex-tpl__act{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding-top:8px;border-top:1px solid var(--line)}.ex-tpl__act .btn{padding:5px 12px;font-size:12.5px;min-height:0;box-shadow:none;white-space:nowrap}.ex-tpl__act .ex-tpl__use{grid-column:1/-1;justify-content:center;text-align:center}.ex-tpl__act>.btn,.ex-tpl__delform,.ex-tpl__delform .btn{width:100%;justify-content:center;text-align:center}.ex-tpl__act .ex-tpl__del{padding:5px 8px;color:var(--bad);background:var(--surface);border:1.5px solid color-mix(in srgb,var(--bad) 45%,transparent);border-radius:8px}.ex-tpl__act .ex-tpl__del:hover{background:var(--bad);border-color:var(--bad);color:#fff}.ex-pp__opt--blank{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 12px}.ex-pp__blank{display:flex;align-items:center;gap:12px;cursor:pointer;min-width:0}.ex-pp__note{grid-column:1/-1;padding-left:32px;line-height:1.45}.ex-pp__step{display:inline-flex;align-items:center;height:34px;border:1.5px solid var(--line);border-radius:999px;background:var(--surface);overflow:hidden}.ex-pp__opt.is-on .ex-pp__step{border-color:color-mix(in srgb,var(--blue) 45%,var(--line))}.ex-pp__step button{width:32px;height:100%;border:0;background:none;color:var(--text);font-size:20px;font-weight:600;padding:0;line-height:1;cursor:pointer}.ex-pp__step button:hover:not(:disabled){background:var(--off)}.ex-pp__step button:disabled{color:var(--muted);opacity:.45;cursor:default}.ex-pp__step input{width:40px;height:100%;border:0;border-inline:1px solid var(--line);background:none;text-align:center;font:inherit;font-weight:700;color:var(--text);-moz-appearance:textfield}.ex-pp__step input::-webkit-inner-spin-button,.ex-pp__step input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ex-pp__step input:focus{outline:2px solid var(--blue);outline-offset:-2px}.ex-pp__opt--blank:not(.is-on) .ex-pp__step{opacity:.6}.ex-head-form,.ex-sec{display:grid;gap:14px}.ex-sec{margin:0;min-width:0;padding:14px 16px 16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}.ex-sec>legend{padding:0 6px;margin-left:-6px;font-weight:700;font-size:15px}.ex-sec>legend small{font-weight:400;color:var(--muted);font-size:12.5px;margin-left:4px}.ex-sec .field>label,.ex-sec .field>span{font-size:14px;font-weight:600}.ex-sec .field small{font-size:12.5px}.ex-head-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;align-items:start}.ex-head-main{display:grid;gap:14px;min-width:0}.ex-head-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:14px 12px}.ex-head-row>:last-child{grid-column:1/-1}.ex-head-logo .ex-logo{flex-direction:column;align-items:flex-start;gap:10px}.ex-head-logo .ex-logo__box{width:88px;height:88px}.ex-head-logo .ex-logo .stack{width:100%}.ex-sec .ex-setup__quick{margin-top:2px}.ex-sec .ex-seg{align-self:flex-start}.ex-sec .ex-form-row{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}@media (max-width:760px){.ex-head-grid,.ex-head-row{grid-template-columns:minmax(0,1fr)}}.ex-pane-off{display:none!important}.ex-subtabs{display:flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:12px;background:var(--off);border:1px solid var(--line);align-self:flex-start}.ex-subtabs a{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:9px;font-size:14px;font-weight:600;color:var(--muted);text-decoration:none}.ex-subtabs a.is-active{background:var(--surface);color:var(--blue);box-shadow:0 1px 4px rgba(0,0,0,.1)}.ex-subtabs small{font-size:11.5px;font-weight:600;padding:1px 7px;border-radius:999px;background:color-mix(in srgb,var(--blue) 12%,transparent);color:inherit}.ex-sc-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:0 20px;align-items:start}.ex-sc td,.ex-sc th{padding:6px 8px}.ex-sc td:last-child{text-align:right}.ex-missing{margin-top:10px}.ex-missing summary{cursor:pointer;font-size:14px;color:var(--warn)}.ex-missing__list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.ex-it-bar{justify-content:space-between;align-items:center;gap:10px}.ex-it-bar,.ex-it-legend{display:flex;flex-wrap:wrap}.ex-it-legend{gap:12px;font-size:12.5px;color:var(--muted)}.ex-it-legend span{display:inline-flex;align-items:center;gap:5px}.ex-it-legend span:before{content:"";width:12px;height:12px;border-radius:4px;background:var(--tone-bg);border:1px solid var(--tone)}.ex-it-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(54px,1fr));gap:6px}.ex-it{display:grid;place-items:center;gap:1px;padding:6px 2px;border-radius:9px;border:1.5px solid var(--tone);background:var(--tone-bg);color:var(--text);text-decoration:none;line-height:1.1}.ex-it b{font-size:15px}.ex-it small{font-size:11px;color:var(--muted)}.ex-it:hover{filter:brightness(.97)}.ex-it.is-sel{outline:2.5px solid var(--blue);outline-offset:1px}.ex-results .is-ok{--tone:color-mix(in srgb,var(--ok) 45%,var(--line));--tone-bg:color-mix(in srgb,var(--ok) 8%,var(--surface))}.ex-results .is-warn{--tone:color-mix(in srgb,var(--warn) 60%,var(--line));--tone-bg:color-mix(in srgb,var(--warn) 12%,var(--surface))}.ex-results .is-bad{--tone:color-mix(in srgb,var(--bad) 65%,var(--line));--tone-bg:color-mix(in srgb,var(--bad) 12%,var(--surface))}.ex-results .is-off{--tone:var(--line);--tone-bg:var(--off)}.ex-it-detail{border:1.5px solid var(--tone);background:var(--tone-bg);border-radius:var(--radius-sm);padding:12px 14px;display:grid;gap:8px}.ex-it-detail__head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;font-size:14px}.ex-it-detail__head>b{font-size:16px}.ex-it-detail__x{margin-left:auto;text-decoration:none;color:var(--muted);font-size:16px;padding:0 4px}.ex-it-bars{display:grid;gap:5px;max-width:520px}.ex-it-barrow{display:grid;grid-template-columns:44px 1fr 92px;align-items:center;gap:8px;font-size:13px}.ex-it-barrow i{height:10px;border-radius:999px;background:var(--surface);border:1px solid var(--line);overflow:hidden}.ex-it-barrow em{display:block;height:100%;background:color-mix(in srgb,var(--muted) 45%,transparent)}.ex-it-barrow.is-key{font-weight:700;color:var(--ok)}.ex-it-barrow.is-key em{background:var(--ok)}.ex-it-barrow small{color:var(--muted);font-weight:400}@media (max-width:600px){.ex-sc-cols{grid-template-columns:minmax(0,1fr)}}@media print{.ex-pane-off:not(.no-print){display:block!important}}.ex-photo{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}.ex-photo>summary{cursor:pointer;padding:8px 12px;font-weight:600;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ex-photo>summary .link{font-weight:400;margin-left:auto}.ex-photo>img{display:block;width:100%;max-width:640px;height:auto;max-height:70vh;object-fit:contain;margin:0 auto 10px;border-top:1px solid var(--line);background:#fff}.ex-essay td{vertical-align:middle}.ex-essay__in{width:96px;text-align:center}.ex-essay tr.is-bad .ex-essay__in{border-color:var(--bad)}.ex-choice{display:grid;gap:8px;text-align:left}.ex-choice .check{align-items:flex-start;gap:8px}.ex-choice small{display:block}.ex-names{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.ex-namecard{margin:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden;display:flex;flex-direction:column}.ex-namecard.is-busy{opacity:.5}.ex-namecard__img{display:block;overflow:hidden;background:#fff;border-bottom:1px solid var(--line)}.ex-namecard__img img{display:block;width:100%;height:auto}.ex-namecard figcaption{padding:8px 10px;display:grid;gap:6px;font-size:14px}.ex-cmp td{vertical-align:middle}.ex-cmp__bar{min-width:180px}.ex-cmp__bar b{margin-left:8px}.ex-cmp__track{display:inline-block;vertical-align:middle;width:120px;height:10px;border-radius:99px;background:var(--off);overflow:hidden}.ex-cmp__track i{display:block;height:100%;background:color-mix(in srgb,var(--blue) 55%,transparent);border-radius:99px}.ex-cmp__track i.is-best{background:var(--blue)}.ex-cmp__sum{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}.ex-cmp__sum>div{padding:10px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);display:grid;gap:2px;min-width:96px}.ex-cmp__sum>div small{color:var(--muted);font-size:12.5px}.ex-cmp__sum>div b{font-size:22px}.ex-cmp__sum>.ex-cmp__arrow{border:0;background:none;min-width:0;place-items:center;font-size:22px;color:var(--muted)}.ex-fb{margin:0}.ex-fb svg{display:block;width:100%;max-width:620px;height:auto;margin:0 auto;background:#fff;border-radius:8px;border:1px solid var(--line)}.ex-fb__legend{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;margin-top:8px;font-size:13px}.ex-fb__legend i{display:inline-block;width:12px;height:12px;border-radius:50%;border:3px solid;vertical-align:-2px}.ex-photo .ex-fb{padding:0 10px 10px}.ex-photo>summary .btn{margin-left:4px}.ex-review{list-style:none;margin:0;padding:0;display:grid;gap:8px}.ex-review li{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) 76px;gap:10px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}.ex-review li.is-busy{opacity:.5}.ex-review__strip{display:block;min-width:0}.ex-review__who{display:grid;gap:4px;min-width:0}.ex-review__score{display:grid;justify-items:end;line-height:1.15}.ex-review__score b{font-size:24px}.ex-strip{display:block;overflow:hidden;border-radius:6px;background:#fff;border:1px solid var(--line)}.ex-strip img{display:block;width:100%;height:auto}.ex-strip--none{padding:10px;font-size:12.5px;color:var(--muted);text-align:center}@media (max-width:640px){.ex-review li{grid-template-columns:minmax(0,1fr) 64px}.ex-review__strip{grid-column:1/-1}}.ex-detail__nav{gap:8px}.ex-detail__head,.ex-detail__nav{display:flex;align-items:center;flex-wrap:wrap}.ex-detail__head{justify-content:space-between;gap:10px}.ex-detail__head>div:first-child{display:grid;gap:2px}.ex-detail__score{display:grid;justify-items:end;line-height:1.1}.ex-detail__score b{font-size:28px}.ex-detail__flag{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ex-detail__crop{display:block;width:min(260px,100%);overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:6px}.ex-detail__crop img{display:block;height:auto;max-width:none}.ex-life{margin:6px 0 0;padding-left:18px;display:grid;gap:2px}.cam-guide i{color:rgba(255,255,255,.95);transition:color .15s}.cam-guide i:after{content:"";position:absolute;left:50%;top:50%;width:46%;aspect-ratio:1;transform:translate(-50%,-50%);border:2px dashed;border-radius:3px}.cam-guide i.is-on{color:#3ddc84}.cam-guide i.is-on:after{border-style:solid;background:rgba(61,220,132,.28)}.cam-guide i:first-child:after{left:calc(50% + 3px);top:calc(50% + 3px)}.cam-guide i:nth-child(2):after{left:calc(50% - 3px);top:calc(50% + 3px)}.cam-guide i:nth-child(3):after{left:calc(50% + 3px);top:calc(50% - 3px)}.cam-guide i:nth-child(4):after{left:calc(50% - 3px);top:calc(50% - 3px)}.cam-result{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(82%,340px);padding:18px 16px 14px;border-radius:18px;background:rgba(255,255,255,.96);color:#14251b;box-shadow:0 0 0 6px #1fa45a,0 12px 40px rgba(0,0,0,.35);display:grid;justify-items:center;gap:6px;text-align:center;animation:cam-pop .22s ease-out}.cam-result__ok{width:52px;height:52px;border-radius:50%;background:#1fa45a;color:#fff;display:grid;place-items:center;font-size:30px;font-weight:800}.cam-result__name{font-size:16px;line-height:1.3}.cam-result__score{font-size:40px;font-weight:800;line-height:1.1}.cam-result__hidden{font-size:22px;font-weight:700;color:#1fa45a}.cam-result__bar{width:100%;height:10px;border-radius:99px;background:#e3ece6;overflow:hidden}.cam-result__bar i{display:block;height:100%;background:#1fa45a;border-radius:99px}.cam-count{position:absolute;right:10px;top:52px;padding:4px 10px;border-radius:99px;background:rgba(0,0,0,.6);color:#fff;font-size:13px;font-weight:700}.ex-bub--x.is-hint{border-color:var(--warn);color:var(--warn);box-shadow:0 0 0 3px color-mix(in srgb,var(--warn) 25%,transparent);font-weight:700}