.adm-shell,.adm-auth{--navy:#0f2a5a;--navy-2:#1a3f85;--crimson:#b8323c;--paper:#f3f5f9;--white:#fff;--ink:#17233b;--ink-soft:#5b6784;--line:#d8deea;--line-soft:#e6ebf3;--fill:#f7f9fc;--ok:#1f7a4d;--err-bg:#fbf0f0;--err-line:#e7b9bd;--r-lg:16px;--r-md:10px;--r-sm:8px;--gutter:clamp(.85rem, 3vw, 2rem);--control-h:44px;color:var(--ink);font-family:Poppins,Inter,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.5}.adm-shell *,.adm-shell :before,.adm-shell :after,.adm-auth *,.adm-auth :before,.adm-auth :after{box-sizing:border-box}.adm-shell h1,.adm-shell h2,.adm-shell h3,.adm-shell p,.adm-auth h1,.adm-auth h2,.adm-auth h3,.adm-auth p{margin:0}.adm-auth{width:100%;min-height:100dvh;padding:var(--gutter);background:var(--paper);place-items:center;display:grid;overflow-x:clip}.adm-auth-card{background:var(--white);border:1px solid var(--line-soft);border-radius:var(--r-lg);grid-template-columns:minmax(0,1fr);width:min(100%,960px);display:grid;overflow:hidden;box-shadow:0 14px 40px #0f2a5a1a}@media (width>=860px){.adm-auth-card{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}}.adm-auth-side{color:var(--white);background:radial-gradient(120% 80% at 100% 0%, #b8323ccc 0%, #b8323c00 55%), linear-gradient(160deg, var(--navy-2) 0%, var(--navy) 100%);flex-direction:column;gap:1rem;padding:clamp(1.75rem,3vw,2.5rem);display:none}@media (width>=860px){.adm-auth-side{display:flex}}.adm-auth-mark{letter-spacing:.08em;text-transform:uppercase;opacity:.85;font-size:.72rem;font-weight:600}.adm-auth-side h1{font-size:clamp(1.5rem,1.5vw + 1rem,1.9rem);font-weight:700;line-height:1.2}.adm-auth-side p{color:#ffffffd9;font-size:.925rem;line-height:1.65}.adm-auth-points{color:#ffffffe6;gap:.6rem;margin:auto 0 0;padding:0;font-size:.875rem;list-style:none;display:grid}.adm-auth-points li{padding-left:1.4rem;position:relative}.adm-auth-points li:before{content:"";background:#ffffff8c;border-radius:50%;width:7px;height:7px;position:absolute;top:.5em;left:0}.adm-auth-main{min-width:0;padding:clamp(1.5rem,4vw,2.75rem)}.adm-auth-head{margin-bottom:1.75rem}.adm-auth-head h2{color:var(--navy);font-size:clamp(1.35rem,1.2vw + 1rem,1.6rem);font-weight:600}.adm-auth-head p{color:var(--ink-soft);margin-top:.3rem;font-size:.9rem}.adm-auth-form{gap:1.1rem;min-width:0;display:grid}.adm-auth-field{min-width:0}.adm-auth .adm-auth-field label{color:var(--ink-soft);margin-bottom:.4rem;font-size:.78rem;font-weight:500;display:block}.adm-auth .adm-auth-field input{width:100%;min-width:0;min-height:46px;font:inherit;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:.65rem .85rem;font-size:.95rem;transition:border-color .15s;display:block}.adm-auth .adm-auth-field input#emp{letter-spacing:.04em;text-transform:uppercase}.adm-auth .adm-auth-field input:hover{border-color:#c2cbdd}.adm-auth .adm-auth-field input:focus-visible{outline:2px solid var(--navy-2);outline-offset:1px;border-color:#0000}.adm-auth-form .alert{border:1px solid var(--err-line);border-radius:var(--r-sm);color:var(--crimson);background:var(--err-bg);overflow-wrap:anywhere;margin:0;padding:.7rem .9rem;font-size:.85rem}.adm-auth-alt{border-top:1px solid var(--line-soft);color:var(--ink-soft);text-align:center;margin-top:1.5rem;padding-top:1.25rem;font-size:.85rem}.adm-auth-alt a{color:var(--navy-2);font-weight:500;text-decoration:none}@media (hover:hover){.adm-auth-alt a:hover{text-decoration:underline}}.adm-shell{background:var(--paper);width:100%;min-height:100dvh;overflow-x:clip}.adm-topbar{min-height:62px;padding:.6rem var(--gutter);background:var(--white);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.adm-topbar-left{align-items:center;gap:clamp(1rem,3vw,2rem);min-width:0;display:flex}.adm-mark{color:var(--navy);white-space:nowrap;font-size:1rem;font-weight:600}.adm-nav{gap:.35rem;display:flex}.adm-nav a{min-height:38px;color:var(--ink-soft);border-radius:var(--r-sm);align-items:center;padding:0 .85rem;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}@media (hover:hover){.adm-nav a:hover{background:var(--fill);color:var(--navy)}}.adm-nav a.active{background:var(--navy);color:var(--white)}.adm-nav a:focus-visible{outline:2px solid var(--navy-2);outline-offset:2px}.adm-topbar-right{align-items:center;gap:.75rem;display:flex}.adm-who{color:var(--ink-soft);font-size:.85rem}.adm-main{width:100%}.adm-page{width:min(100%,1280px);padding:clamp(1.1rem, 3vw, 2rem) var(--gutter);gap:clamp(1rem,2.5vw,1.5rem);margin-inline:auto;display:grid}.adm-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.adm-head h1{color:var(--navy);font-size:clamp(1.35rem,1.2vw + 1rem,1.7rem);font-weight:600}.adm-sub{color:var(--ink-soft);margin-top:.25rem;font-size:.85rem}.adm-head-actions{flex-wrap:wrap;gap:.6rem;display:flex}.adm-filters{background:var(--white);border:1px solid var(--line-soft);border-radius:var(--r-md);flex-wrap:wrap;align-items:flex-end;gap:.75rem;padding:clamp(.85rem,2vw,1.1rem);display:flex}.adm-filter{flex:180px;min-width:0}.adm-filter--grow{flex:2 240px}.adm-shell .adm-filter label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.3rem;font-size:.72rem;font-weight:500;display:block}.adm-shell .adm-filter select,.adm-shell .adm-filter input{width:100%;min-width:0;min-height:var(--control-h);font:inherit;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:var(--r-sm);padding:.5rem .75rem;font-size:.9rem;display:block}.adm-shell .adm-filter select:focus-visible,.adm-shell .adm-filter input:focus-visible{outline:2px solid var(--navy-2);outline-offset:1px}.adm-clear{flex:none}.adm-stats{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:clamp(.75rem,2vw,1rem);display:grid}.stat-tile{background:var(--white);border:1px solid var(--line-soft);border-radius:var(--r-md);gap:.25rem;padding:clamp(1rem,2.5vw,1.35rem);display:grid}.stat-tile--primary{color:var(--white);background:linear-gradient(140deg, var(--navy-2), var(--navy));border-color:#0000}.stat-tile-label{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);font-size:.75rem;font-weight:500}.stat-tile--primary .stat-tile-label{color:#fffc}.stat-tile-value{font-variant-numeric:tabular-nums;font-size:clamp(1.75rem,2.5vw,2.25rem);font-weight:600;line-height:1.1}.stat-tile-hint{color:var(--ink-soft);font-size:.78rem}.btn-solid,.btn-ghost{min-height:var(--control-h);font:inherit;border-radius:var(--r-sm);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:.45rem;padding:.5rem 1.05rem;font-size:.875rem;font-weight:500;display:inline-flex}.btn-solid{color:var(--white);background:linear-gradient(95deg, var(--navy-2), var(--navy));border:0}.btn-ghost{color:var(--navy);background:var(--white);border:1px solid var(--line)}.btn-block{width:100%;min-height:50px;font-size:1rem;font-weight:600}@media (hover:hover){.btn-solid:hover:not(:disabled){filter:brightness(1.1)}.btn-ghost:hover:not(:disabled){background:var(--fill);border-color:var(--navy)}}.btn-solid:disabled,.btn-ghost:disabled{opacity:.45;cursor:not-allowed}.btn-solid:focus-visible,.btn-ghost:focus-visible{outline:2px solid var(--navy-2);outline-offset:2px}.report{background:var(--white);border:1px solid var(--line-soft);border-radius:var(--r-md);min-width:0;overflow:hidden}.report-head{border-bottom:1px solid var(--line-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:clamp(.9rem,2vw,1.15rem) clamp(.9rem,2vw,1.25rem);display:flex}.report-titles{min-width:0}.report-titles h3{color:var(--navy);overflow-wrap:anywhere;font-size:1rem;font-weight:600}.report-titles p{color:var(--ink-soft);margin-top:.15rem;font-size:.78rem}.report-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.report-table thead .grp-row th{letter-spacing:.03em;text-align:center;color:var(--white);background:var(--navy-2);text-transform:none;border-bottom:0;border-left:1px solid #ffffff40;padding:.5rem clamp(.75rem,1.5vw,1rem);font-size:.75rem;font-weight:600}.report-table thead .grp-row th:first-child,.report-table thead .grp-row th.grp-blank{background:var(--navy-2);border-left:0}.report-table thead .grp-row th.grp-blank{background:#16376f}.report-table td.emph,.report-table th.emph{background:#eef2f9;font-weight:600}.report-table tbody tr:nth-child(2n) td.emph{background:#e8edf7}.report-table tfoot th.emph{background:#dde5f2}.report-table th:first-child,.report-table td:first-child{background:var(--white);z-index:1;position:sticky;left:0}.report-table thead th:first-child{background:var(--fill);z-index:2}.report-table tbody tr:nth-child(2n) td:first-child{background:#fbfcfe}.report-table tfoot th:first-child{background:#eef2f9}.report-scroll{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.report-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:.875rem}.report-table th,.report-table td{text-align:left;border-bottom:1px solid var(--line-soft);padding:.7rem clamp(.75rem,1.5vw,1rem)}.report-table thead th{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);background:var(--fill);font-size:.72rem;font-weight:600;position:sticky;top:0}.report-table tbody tr:nth-child(2n){background:#fbfcfe}.report-table td.num,.report-table th.num{text-align:right;font-variant-numeric:tabular-nums}.report-table td.wrap{white-space:normal;overflow-wrap:anywhere;max-width:260px}.report-table tfoot th{color:var(--navy);background:#eef2f9;border-bottom:0;font-weight:600}.report-empty{text-align:center;color:var(--ink-soft);white-space:normal;padding:2rem 1rem}.report-note{color:var(--ink-soft);background:var(--fill);border-top:1px solid var(--line-soft);padding:.75rem clamp(.9rem,2vw,1.25rem);font-size:.75rem;line-height:1.5}.pager{border-top:1px solid var(--line-soft);background:var(--white);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:clamp(.7rem,2vw,.9rem) clamp(.9rem,2vw,1.25rem);display:flex}.pager-info{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:1rem;font-size:.8rem;display:flex}.pager-size{align-items:center;gap:.4rem;font-size:.8rem;display:inline-flex}.adm-shell .pager-size select{min-height:34px;font:inherit;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:6px;padding:.25rem .5rem;font-size:.8rem}.adm-shell .pager-size select:focus-visible{outline:2px solid var(--navy-2);outline-offset:1px}.pager-nav{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.pager-btn{min-width:36px;min-height:36px;font:inherit;font-variant-numeric:tabular-nums;color:var(--ink-soft);background:var(--white);border:1px solid var(--line);cursor:pointer;border-radius:6px;padding:0 .6rem;font-size:.82rem;font-weight:500}@media (hover:hover){.pager-btn:hover:not(:disabled):not(.is-active){background:var(--fill);color:var(--navy)}}.pager-btn.is-active{color:var(--white);background:var(--navy);border-color:var(--navy)}.pager-btn:disabled{opacity:.4;cursor:not-allowed}.pager-btn:focus-visible{outline:2px solid var(--navy-2);outline-offset:2px}.pager-gap{color:var(--ink-soft);padding:0 .15rem}.adm-shell .alert{border:1px solid var(--err-line);border-radius:var(--r-sm);color:var(--crimson);background:var(--err-bg);overflow-wrap:anywhere;padding:.75rem .95rem;font-size:.875rem}.adm-shell .spinner{margin:3rem auto}@media (width<=599px){.adm-topbar{align-items:flex-start}.adm-topbar-left{flex-direction:column;align-items:flex-start;gap:.5rem;width:100%}.adm-nav{width:100%}.adm-nav a{flex:auto;justify-content:center}.adm-head-actions{width:100%}.adm-head-actions>*{flex:auto}.adm-clear,.report-head .btn-ghost,.report-actions{width:100%}.pager{justify-content:center}.pager-info{justify-content:space-between;width:100%}}@media (prefers-reduced-motion:reduce){.btn-solid,.btn-ghost,.adm-auth-field input{transition:none}}.auth-body{min-width:0}.auth-form{gap:var(--field-gap);min-width:0;display:grid}.auth-field{min-width:0}.reg-page .auth-field label{letter-spacing:.01em;color:var(--ink-soft);margin-bottom:.4rem;font-size:.78rem;font-weight:500;display:block}.reg-page .auth-field input{width:100%;min-width:0;max-width:100%;min-height:var(--control-h);font:inherit;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:.65rem .85rem;font-size:clamp(.9rem,.2vw + .85rem,.975rem);transition:border-color .15s;display:block}.reg-page .auth-field input::placeholder{color:#9aa4b8}.reg-page .auth-field input:hover{border-color:#c2cbdd}.reg-page .auth-field input:focus-visible{outline:2px solid var(--navy-2);outline-offset:1px;border-color:#0000}.reg-page .auth-field input#roll{letter-spacing:.04em;text-transform:uppercase}.auth-form .reg-submit{margin-top:.25rem}.auth-form .alert{margin:0}.auth-alt{border-top:1px solid var(--line-soft);color:var(--ink-soft);text-align:center;margin-top:1.5rem;padding-top:1.25rem;font-size:.85rem}.reg-page .auth-alt a{color:var(--navy-2);border-bottom:1px solid #0000;font-weight:500;text-decoration:none}@media (hover:hover){.reg-page .auth-alt a:hover{border-bottom-color:currentColor}}.reg-page .auth-alt a:focus-visible{outline:2px solid var(--navy-2);outline-offset:2px}@container regcard (width>=560px){.auth-body{max-width:460px;margin-inline:auto}.auth-body .reg-head{text-align:center}}@supports not (container-type:inline-size){@media (width>=1000px){.auth-body{max-width:460px;margin-inline:auto}.auth-body .reg-head{text-align:center}}}.reg-page{--navy:#0f2a5a;--navy-2:#1a3f85;--crimson:#b8323c;--paper:#f3f5f9;--white:#fff;--ink:#17233b;--ink-soft:#5b6784;--line:#d8deea;--line-soft:#e6ebf3;--fill:#f7f9fc;--ok:#1f7a4d;--ok-bg:#edf7f1;--err-bg:#fbf0f0;--err-line:#e7b9bd;--r-lg:clamp(12px, 1.6vw, 18px);--r-md:10px;--r-sm:8px;--gutter:clamp(.75rem, 3.5vw, 2rem);--gap:clamp(1rem, 2.5vw, 2rem);--card-pad:clamp(1.1rem, 3vw, 2.25rem);--field-gap:clamp(.9rem, 1.6vw, 1.25rem);--control-h:46px;background:var(--paper);width:100%;min-height:100dvh;color:var(--ink);-webkit-text-size-adjust:100%;font-family:Poppins,Inter,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.5;overflow-x:clip}.reg-page,.reg-page *,.reg-page :before,.reg-page :after{box-sizing:border-box}.reg-page img,.reg-page svg{max-width:100%}.reg-page h2,.reg-page h3,.reg-page p,.reg-page label{margin:0}.reg-topbar{min-height:60px;padding:.5rem var(--gutter);background:var(--white);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:.75rem;display:flex}.reg-brand{min-width:0;color:var(--navy);white-space:nowrap;text-overflow:ellipsis;font-size:clamp(.95rem,1.2vw + .6rem,1.1rem);font-weight:600;overflow:hidden}.reg-logout,.reg-back{min-height:44px;font:inherit;color:var(--navy);background:var(--white);border:1px solid var(--line);border-radius:var(--r-sm);cursor:pointer;flex:none;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}@media (hover:hover){.reg-logout:hover,.reg-back:hover{background:var(--fill);border-color:var(--navy)}}.reg-logout:focus-visible,.reg-back:focus-visible{outline:2px solid var(--navy-2);outline-offset:2px}.reg-layout{width:min(100%,1280px);padding:var(--gutter);gap:var(--gap);grid-template-columns:minmax(0,1fr);align-items:start;margin-inline:auto;display:grid}@media (width>=1000px){.reg-layout{grid-template-columns:minmax(280px,.78fr) minmax(520px,1.72fr);padding-block:clamp(1.5rem,3vw,2.5rem)}.hero{position:sticky;top:1.5rem}}@media (width>=1440px){.reg-layout{grid-template-columns:minmax(300px,.72fr) minmax(560px,1.78fr)}}@media (width>=1000px) and (height<=720px){.hero{position:static}}.hero{min-width:0;color:var(--white);border-radius:var(--r-lg);background:radial-gradient(120% 80% at 100% 0%, #b8323cd1 0%, #b8323c00 55%), radial-gradient(90% 70% at 0% 100%, #b8323c73 0%, #b8323c00 55%), linear-gradient(160deg, var(--navy-2) 0%, var(--navy) 100%);padding:clamp(1.1rem,3vw,1.75rem);position:relative;overflow:hidden;box-shadow:0 10px 26px #0f2a5a2e}.hero-badge{letter-spacing:.04em;text-transform:uppercase;background:#ffffff24;border:1px solid #ffffff40;border-radius:999px;align-items:center;gap:.45rem;max-width:100%;padding:.4rem .8rem;font-size:.7rem;font-weight:600;display:inline-flex}.hero-badge svg{flex:none}.hero-title{text-transform:uppercase;overflow-wrap:anywhere;margin:.85rem 0 .55rem;font-size:clamp(1.3rem,1vw + 1.05rem,1.85rem);font-weight:700;line-height:1.16}.hero-desc{color:#ffffffdb;margin:0 0 1.1rem;font-size:clamp(.875rem,.25vw + .82rem,.95rem);line-height:1.6}.hero-facts{grid-template-columns:minmax(0,1fr);gap:.6rem;margin:0;padding:0;list-style:none;display:grid}@media (width>=440px) and (width<=999px){.hero-facts{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}}.hero-fact{background:#ffffff1c;border:1px solid #ffffff2e;border-radius:12px;align-items:center;gap:.75rem;min-width:0;padding:.8rem .9rem;display:flex}.hero-fact>span:last-child{min-width:0}.hero-fact-icon{background:#ffffff29;border-radius:10px;flex:none;place-items:center;width:38px;height:38px;display:grid}.hero-fact-label{letter-spacing:.06em;text-transform:uppercase;opacity:.82;font-size:.66rem;display:block}.hero-fact-value{overflow-wrap:anywhere;font-size:clamp(.9rem,.2vw + .85rem,1rem);font-weight:600;display:block}.reg-card{width:100%;min-width:0;padding:var(--card-pad);background:var(--white);border:1px solid var(--line-soft);border-radius:var(--r-lg);box-shadow:0 6px 22px #17233b0d;container:regcard/inline-size}.reg-body{min-width:0}.reg-head{border-bottom:1px solid var(--line-soft);text-align:center;margin-bottom:clamp(1.25rem,2.5vw,1.75rem);padding-bottom:clamp(.9rem,2vw,1.25rem)}.reg-head h2{color:var(--navy);overflow-wrap:anywhere;margin:0 0 .3rem;font-size:clamp(1.35rem,1.1vw + 1.05rem,1.8rem);font-weight:600;line-height:1.2}.reg-sub{color:var(--ink-soft);font-size:clamp(.85rem,.2vw + .8rem,.95rem)}.reg-section{margin-bottom:clamp(1.5rem,3vw,2rem)}.reg-section:last-of-type{margin-bottom:1.25rem}.reg-section-title{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 .9rem;font-size:.78rem;font-weight:600}.reg-grid{gap:var(--field-gap);grid-template-columns:minmax(0,1fr);display:grid}.reg-grid>*,.reg-span,.ro-field{min-width:0}.reg-page .ro-field label,.reg-page .reg-field label{letter-spacing:.01em;color:var(--ink-soft);margin-bottom:.4rem;font-size:.78rem;font-weight:500;display:block}.ro-input{min-width:0;min-height:var(--control-h);color:var(--ink);background:var(--fill);border:1px solid var(--line);border-radius:var(--r-md);align-items:center;gap:.5rem;padding:.65rem .85rem;font-size:clamp(.875rem,.2vw + .83rem,.95rem);display:flex}.ro-input--multiline{white-space:pre-wrap;align-items:flex-start}.ro-icon{color:var(--ink-soft);flex:none;display:inline-flex}.ro-value{overflow-wrap:anywhere;word-break:break-word;flex:auto;min-width:0}.reg-note{color:var(--ink-soft);margin-top:1rem;font-size:.78rem;line-height:1.55}.reg-field{min-width:0}.reg-page .reg-field textarea{width:100%;min-width:0;max-width:100%;min-height:118px;font:inherit;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);resize:vertical;padding:.75rem .85rem;font-size:clamp(.875rem,.2vw + .83rem,.95rem);line-height:1.55;display:block}.reg-field textarea::placeholder{color:#9aa4b8}.reg-field textarea:focus-visible{outline:2px solid var(--navy-2);outline-offset:1px;border-color:#0000}.reg-field-foot{color:var(--ink-soft);justify-content:space-between;gap:.75rem;margin-top:.4rem;font-size:.75rem;display:flex}.reg-count{font-variant-numeric:tabular-nums}.puzzle{background:var(--fill);border:1px solid var(--line);border-radius:var(--r-md);grid-template-columns:minmax(0,1fr);gap:.7rem;min-width:0;padding:clamp(.9rem,2vw,1.1rem);display:grid}.puzzle.solved{background:var(--ok-bg);border-color:var(--ok)}.puzzle-q{min-width:0}.puzzle-label{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);font-size:.7rem;display:block}.puzzle-expr{letter-spacing:.04em;color:var(--navy);overflow-wrap:anywhere;font-size:clamp(1.15rem,.8vw + .95rem,1.35rem);font-weight:600;display:block}.puzzle-a{gap:.5rem;min-width:0;display:flex}.reg-page .puzzle-a input{width:100%;min-width:0;max-width:150px;min-height:var(--control-h);font:inherit;text-align:center;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:var(--r-sm);-moz-appearance:textfield;flex:auto;padding:.5rem .7rem;font-size:1rem}.puzzle-a input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.puzzle-a input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.puzzle-a input:focus-visible{outline:2px solid var(--navy-2);outline-offset:1px}.puzzle-refresh{width:var(--control-h);min-height:var(--control-h);color:var(--ink-soft);background:var(--white);border:1px solid var(--line);border-radius:var(--r-sm);cursor:pointer;flex:none;font-size:1.15rem;line-height:1}@media (hover:hover){.puzzle-refresh:hover{color:var(--navy);border-color:var(--navy)}}.puzzle-refresh:focus-visible{outline:2px solid var(--navy-2);outline-offset:1px}.puzzle-status{color:var(--ink-soft);font-size:.78rem}.puzzle.solved .puzzle-status{color:var(--ok);font-weight:500}.reg-card .alert{border-radius:var(--r-sm);overflow-wrap:anywhere;border:1px solid;margin:0 0 1.25rem;padding:.75rem .95rem;font-size:.875rem;line-height:1.5}.reg-card .alert.error{color:var(--crimson);background:var(--err-bg);border-color:var(--err-line)}.reg-card .alert.success{color:var(--ok);background:var(--ok-bg);border-color:#b6ddc7}.reg-card .spinner{margin:3rem auto}.reg-actions{margin-top:.25rem}.reg-submit{width:100%;min-height:50px;font:inherit;letter-spacing:.01em;color:var(--white);background:linear-gradient(95deg, var(--navy-2), var(--navy));border-radius:var(--r-md);cursor:pointer;border:0;justify-content:center;align-items:center;padding:.85rem 1rem;font-size:clamp(.95rem,.25vw + .88rem,1.05rem);font-weight:600;transition:filter .15s;display:inline-flex}@media (hover:hover){.reg-submit:hover:not(:disabled){filter:brightness(1.1)}}.reg-submit:disabled{opacity:.45;cursor:not-allowed}.reg-submit:focus-visible{outline:3px solid var(--crimson);outline-offset:2px}.reg-fine{text-align:center;color:var(--ink-soft);margin-top:.8rem;font-size:.75rem;line-height:1.55}.reg-body .reg-back{margin-top:.5rem}@container regcard (width>=520px){.reg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reg-span{grid-column:1/-1}.puzzle{grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:1.25rem}.puzzle-status{grid-column:1/-1}.reg-head{text-align:left}}@container regcard (width>=760px){.reg-actions{flex-direction:column;align-items:center;display:flex}.reg-submit{width:auto;min-width:280px}}@supports not (container-type:inline-size){@media (width>=620px){.reg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reg-span{grid-column:1/-1}.puzzle{grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:1.25rem}.puzzle-status{grid-column:1/-1}}@media (width>=1000px){.reg-head{text-align:left}}}@media (prefers-reduced-motion:reduce){.reg-submit{transition:none}.hero{position:static}}:root{--bg:#f6f7f4;--surface:#fff;--ink:#1c2321;--ink-soft:#5a6661;--line:#d9ded9;--accent:#1f6f5f;--accent-ink:#fff;--danger:#b23a3a;--ok:#2c7a4b;--radius:10px;--font:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);background:var(--bg);color:var(--ink);line-height:1.5}a{color:var(--accent);text-decoration:none}h1,h2,h3{margin:0 0 .5rem;font-weight:600;line-height:1.2}h1{font-size:1.75rem}h2{font-size:1.25rem}h3{font-size:1rem}p{margin:0 0 .75rem}.container{max-width:1100px;margin:0 auto;padding:1.5rem}.narrow{max-width:480px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem}.stack{flex-direction:column;gap:1rem;display:flex}.row{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.muted{color:var(--ink-soft);font-size:.9rem}label{color:var(--ink-soft);margin-bottom:.25rem;font-size:.875rem;display:block}input,select{width:100%;font:inherit;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:6px;padding:.6rem .75rem}input:focus,select:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn{font:inherit;border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);cursor:pointer;border-radius:6px;align-items:center;gap:.5rem;padding:.6rem 1.1rem;font-weight:500;display:inline-flex}.btn.secondary{color:var(--accent);background:0 0}.btn:disabled{opacity:.5;cursor:not-allowed}.field{border-bottom:1px solid var(--line);justify-content:space-between;gap:1rem;padding:.6rem 0;display:flex}.field:last-child{border-bottom:0}.field span:first-child{color:var(--ink-soft)}.field span:last-child{text-align:right;font-weight:500}.alert{border:1px solid;border-radius:6px;padding:.75rem 1rem;font-size:.9rem}.alert.error{border-color:var(--danger);color:var(--danger);background:#fbf0f0}.alert.success{border-color:var(--ok);color:var(--ok);background:#eef7f1}.alert.info{border-color:var(--line);color:var(--ink-soft);background:#fff}.topbar{background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:.9rem 1.5rem;display:flex}.topbar nav{gap:1.25rem;display:flex}.topbar nav a.active{color:var(--ink);font-weight:600}.stat{flex-direction:column;gap:.25rem;display:flex}.stat strong{font-size:2rem;font-weight:600}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--line);padding:.6rem .5rem}th{color:var(--ink-soft);font-weight:500}.table-wrap{overflow-x:auto}.spinner{border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;margin:2rem auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation:none}}
