*{box-sizing:border-box}body{margin:0;font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:#1f2a37;background:#f6f4fb}
a{color:#6d28d9}header{padding:.6rem 1rem;max-width:960px;margin:0 auto;display:flex;flex-wrap:wrap;gap:.3rem 1rem;align-items:center}header a{color:#4b5563;text-decoration:none;font-size:.92rem}header .b{font-weight:800;font-size:1.15rem;color:#6d28d9;margin-right:auto;display:flex;gap:.4rem;align-items:center}
main{max-width:960px;margin:0 auto;padding:0 1rem 1rem}h1{font-size:1.4rem;line-height:1.25;margin:.2rem 0 .6rem;text-align:center}h2{font-size:1.2rem;margin-top:1.6rem}
.card{background:#fff;border-radius:16px;padding:1.1rem;margin:1rem 0;border:1px solid #e6e1f2}
.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:.5rem;background:#fff;padding:.4rem .8rem;z-index:9}
.tool{background:#fff;border:1px solid #e6e1f2;border-radius:20px;padding:.9rem;box-shadow:0 6px 24px #6d28d918}
select,input{font:inherit;font-size:1rem;padding:.5rem .55rem;border:1px solid #d4cde6;border-radius:10px;background:#fff;width:100%;min-height:44px;color:inherit}
label{font-size:.78rem;font-weight:600;color:#4b5563;display:flex;flex-direction:column;gap:.15rem}
button{font:inherit;font-size:.95rem;font-weight:600;min-height:44px;padding:.45rem .9rem;border-radius:999px;border:1.5px solid #d4cde6;background:#fff;color:#1f2a37;cursor:pointer}button:disabled{opacity:.45}.pri{background:#6d28d9;color:#fff;border-color:#6d28d9}
#sk-names{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem}#sk-names .nmi{flex:1 1 7rem;width:auto;font-weight:600}#sk-names button{min-width:44px;padding:0}
#sk-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.45rem}
.pl{background:#f3effb;border-radius:14px;padding:.5rem .6rem;text-align:center;display:flex;flex-direction:column;border:2px solid transparent}.pl .nm{font-weight:600;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pl .tot{font-size:2.2rem;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}.pl small{color:#6b7280;font-size:.75rem}.pl.lead{border-color:#c4b5fd}.pl.win{background:#6d28d9;color:#fff}.pl.win small{color:#ede9fe}
.bar{display:block;height:6px;background:#e6e1f2;border-radius:3px;margin-top:.3rem;overflow:hidden}.bar i{display:block;height:100%;background:#6d28d9}
#sk-msg{text-align:center;min-height:1.2rem;margin:.4rem 0;font-size:.95rem}#sk-err{color:#b91c1c;text-align:center;font-size:.9rem;min-height:1rem;margin:.2rem 0}
.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:.4rem}fieldset{border:1px solid #e6e1f2;border-radius:12px;margin:0 0 .4rem;padding:.3rem .5rem .5rem}legend{font-weight:700;font-size:.85rem}
.peg{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;margin:.3rem 0}.peg b{width:100%}.peg .pv{padding:.3rem .65rem;min-width:48px}.peg input{width:4.5rem}
button.go{display:block;width:100%;font-size:1.2rem;min-height:54px;margin-top:.5rem}
.acts{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;margin-top:.6rem}.opts{display:flex;gap:.6rem;align-items:end;justify-content:center;margin-top:.5rem;flex-wrap:wrap}.opts label{width:8rem}.opts .ck{flex-direction:row;align-items:center;width:auto}.opts .ck input{width:auto;min-height:0}
table.data{border-collapse:collapse;width:100%;font-size:.92rem;font-variant-numeric:tabular-nums}table.data td,table.data th{border-bottom:1px solid #e6e1f2;padding:.35rem;text-align:left}tr.t td{font-weight:800}
#sk-hist{overflow-x:auto;margin-top:.6rem}.note{font-size:.85rem;color:#6b7280}.priv{display:flex;gap:.4rem;align-items:center;justify-content:center;font-size:.82rem;color:#6d28d9;margin:.5rem 0 0;text-align:center}
.sheet td{height:2rem}.links{columns:2;padding-left:1.1rem}footer{max-width:960px;margin:2rem auto;padding:1rem;font-size:.85rem;color:#6b7280}footer a{color:#4b5563;margin-right:.9rem}
@media(max-width:560px){header a:not(.b):not(:last-child){display:none}h1{font-size:1.15rem}.links{columns:1}.pl .tot{font-size:1.8rem}#sk-board{grid-template-columns:repeat(auto-fit,minmax(96px,1fr))}}
@media print{body{background:#fff}header,footer,.acts,#sk-form,#sk-add,#sk-err,.opts,.priv,#sk-names,.card:not(.printme),.noprint{display:none!important}.tool{border:0;box-shadow:none}.pl{border:1px solid #999}}
[hidden]{display:none!important}#sk-names .nmi{flex:1 1 40%;min-width:0}
