:root{--nav-bg:#daeeffeb;--nav-border:#5f98cd47;--nav-text:#17324d;--nav-hover-bg:#1e5f96;--nav-hover-text:#fff;--card-bg:#ffffffe0;--card-border:#5891be3d;--text:#172638;--muted:#63778a;--primary:#2d7fbd;--primary-dark:#1e5f96;--danger:#d33c3c;--warning:#c98705;font-family:Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{color:var(--text);background-color:#0000;background-image:linear-gradient(#f5faff7a,#f5faffad),url(/brand/background.jpg);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:fixed;background-origin:padding-box,padding-box;background-clip:border-box,border-box;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app{min-height:100vh}.top{z-index:20;background:var(--nav-bg);border-bottom:1px solid var(--nav-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);justify-content:space-between;align-items:center;height:72px;padding:0 28px;display:flex;position:sticky;top:0;box-shadow:0 8px 28px #2a5b8714}.brand{color:var(--nav-text);align-items:center;gap:12px;display:flex}.logo-img{object-fit:cover;background:#fff;border:1px solid #2e6fa638;border-radius:14px;width:44px;height:44px;box-shadow:0 4px 14px #205b8e29}.brand b{letter-spacing:-.02em;font-size:18px;display:block}.brand span{color:#5d7891;margin-top:2px;font-size:12px;font-weight:600;display:block}nav{align-items:center;gap:8px;display:flex}nav button{color:var(--nav-text);background:0 0;border:1px solid #0000;border-radius:999px;padding:10px 14px;font-weight:700;transition:all .18s}nav button:hover{background:var(--nav-hover-bg);color:var(--nav-hover-text);border-color:var(--nav-hover-bg);transform:translateY(-1px)}.hamb{color:var(--nav-text);background:0 0;border:0;display:none}.userbar{color:#47627c;justify-content:flex-end;gap:10px;max-width:1120px;margin:18px auto 0;padding:0 24px;font-size:13px;display:flex}.userbar b{color:var(--primary-dark);background:#ffffffc7;border:1px solid #4e89bc38;border-radius:999px;padding:3px 9px}main{max-width:1120px;margin:0 auto;padding:36px 24px 80px}.login{justify-content:center;align-items:center;min-height:calc(100vh - 72px);padding:48px 20px;display:flex}.login-card{text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff94;border:1px solid #639ed038;border-radius:32px;width:min(460px,100%);padding:42px 32px;box-shadow:0 24px 80px #3370a429}.login-card h1{letter-spacing:-.06em;color:#22567f;margin:0 0 24px;font-size:clamp(42px,7vw,72px)}.login-guide{color:#4f6e88;max-width:340px;margin:16px auto 0;font-size:14px;line-height:1.6}.primary,.ghost{border:0;border-radius:16px;padding:12px 18px;font-weight:800;transition:all .18s}.primary{background:var(--primary);color:#fff;box-shadow:0 10px 24px #2d7fbd38}.primary:hover{background:var(--primary-dark);transform:translateY(-1px)}.ghost{color:#315b7f;background:#eef5fb}.big{width:100%;max-width:300px;padding:15px 22px;font-size:16px}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.card,.action,.center-card,.form-wrap{background:var(--card-bg);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:26px;box-shadow:0 18px 46px #30679624}.card{padding:24px}.welcome{grid-column:1/-1}.welcome h2{letter-spacing:-.04em;margin:0 0 8px;font-size:clamp(24px,4vw,34px)}.welcome h2 strong{color:#1e5f96;font-size:1.18em}.welcome p{color:var(--muted);margin:0;font-size:16px}.action{text-align:left;border:1px solid var(--card-border);min-height:180px;color:var(--text);padding:26px;transition:all .18s}.action:hover{background:#fffffff0;border-color:#2d7fbd6b;transform:translateY(-4px);box-shadow:0 24px 56px #30679633}.action svg{width:30px;height:30px;color:var(--primary)}.action h3{margin:16px 0 8px;font-size:21px}.action p{color:var(--muted);margin:0;line-height:1.5}.center-card{text-align:center;width:min(520px,100%);margin:80px auto;padding:36px}.form-wrap{width:min(760px,100%);margin:0 auto;padding:30px}.form-wrap h2,section>h2{letter-spacing:-.04em;margin:0 0 10px;font-size:28px}.form{gap:20px;margin-top:24px;display:grid}.form label{gap:8px;display:grid}.field-head{gap:5px;display:grid}.field-title{color:#1b2c3e;font-weight:900}.required-msg,.field-error{color:var(--danger);margin-left:8px;font-size:12px;font-weight:800}.field-error{margin-top:2px;margin-left:0}.field-desc{color:#748596;margin:0;font-size:13px;line-height:1.55}input,select,textarea{width:100%;color:var(--text);background:#ffffffe0;border:1px solid #6092b952;border-radius:14px;outline:none;padding:13px 14px}.locked-input{color:#5e6872;cursor:not-allowed;background:#e9edf1;font-weight:800}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px #2d7fbd1f}.invalid input,.invalid select,.invalid textarea,.invalid-group{box-shadow:0 0 0 3px #d33c3c1a;border-color:var(--danger)!important}.choice-block,.most-box,.tier-box{gap:10px;display:grid}.radio-row{flex-wrap:wrap;gap:12px;display:flex}.radio-row label,.single-check{background:#ffffffc2;border:1px solid #6092b947;border-radius:999px;align-items:center;gap:8px;padding:10px 13px;font-weight:800;display:flex}.radio-row input,.single-check input{width:auto}.pos-row label{justify-content:center;min-width:74px}.tier-row{border:1px solid #0000;border-radius:18px;grid-template-columns:1fr 1fr 120px;gap:10px;padding:10px;display:grid}.most-box label{grid-template-columns:82px 1fr;align-items:center;gap:10px;display:grid}.most-box label span{color:#436078;font-weight:900}.byte-count{color:var(--muted);justify-self:end;font-size:12px;font-weight:800}.byte-count.over{color:var(--danger)}.form-actions{justify-content:flex-end;gap:10px;display:flex}.error{color:var(--danger);font-weight:800;line-height:1.5}.participant-scroll{margin-top:18px;padding-bottom:12px;overflow-x:auto}.participant-table{gap:14px;min-width:1420px;display:grid}.participant-row{border:1px solid var(--card-border);background:#ffffffe6;border-radius:22px;grid-template-columns:96px 96px 120px 120px 100px 160px 120px 120px 180px 180px 220px 260px 260px 150px;align-items:stretch;gap:12px;padding:14px;display:grid;box-shadow:0 14px 34px #3067961a}.sticky-actions{z-index:2;background:#fffffff0;border-radius:16px;align-items:center;display:grid;position:sticky;left:0}.captain-toggle{color:#b77a00;background:#fff8df;border:1px solid #e1bd5b;border-radius:14px;padding:12px 10px;font-weight:900}.captain-toggle.on{border-color:var(--primary);background:var(--primary);color:#fff}.p-photo img,.no-photo{object-fit:cover;border-radius:16px;width:82px;height:82px}.no-photo{color:#8190a0;background:#e9eef4;place-items:center;font-size:12px;font-weight:800;display:grid}.p-info{align-content:start;gap:6px;min-width:0;display:grid}.p-info span{color:#6f8091;font-size:12px;font-weight:900}.p-info b{white-space:normal;word-break:keep-all;font-size:14px;line-height:1.45}.p-info.wide b{max-height:84px;overflow:auto}.admin-actions{align-content:center;gap:8px;display:grid}.edit-btn,.delete-btn{border:0;border-radius:13px;justify-content:center;align-items:center;gap:6px;padding:10px;font-weight:900;display:flex}.edit-btn{color:#495767;background:#eceff3}.delete-btn{color:#c82e2e;background:#ffe7e7}.admin-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;display:grid}.inline{gap:10px;margin:14px 0;display:flex}.mini-list{gap:10px;margin-top:16px;display:grid}.mini-list>div{border-bottom:1px solid #5787b029;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.mini-list button{color:var(--primary-dark);background:#f0f8ffe6;border:1px solid #2d7fbd47;border-radius:12px;padding:8px 10px;font-weight:700}.logs{gap:10px;max-height:480px;display:grid;overflow:auto}.logs p{border-bottom:1px solid #5787b029;margin:0;padding:10px 0;line-height:1.45}.logs small{color:var(--muted);margin-top:4px;display:block}@media (width<=820px){.top{height:68px;padding:0 16px}.brand b{font-size:16px}.brand span{font-size:11px}.logo-img{border-radius:12px;width:40px;height:40px}.hamb{display:inline-flex}nav{border:1px solid var(--nav-border);background:#eff8fff5;border-radius:20px;padding:12px;display:none;position:absolute;top:68px;left:12px;right:12px;box-shadow:0 18px 46px #30679629}nav.show{display:grid}nav button{text-align:left;border-radius:14px;width:100%}main{padding:28px 16px 60px}.userbar{flex-wrap:wrap;justify-content:flex-start;padding:0 16px}.grid,.tier-row,.admin-grid{grid-template-columns:1fr}.inline{display:grid}.login-card{border-radius:28px;padding:34px 24px}.most-box label{grid-template-columns:1fr}.form-actions{display:grid}}@media (width<=460px){.login-card h1{font-size:46px}.form-wrap,.center-card,.card{border-radius:22px;padding:22px}.welcome h2{font-size:24px}}.nice-check{border-radius:16px;justify-content:flex-start;align-items:center;gap:10px;width:fit-content;max-width:100%;padding:12px 14px;flex-direction:row!important;display:flex!important}.nice-check input{flex:none;width:18px;height:18px}.nice-check span{line-height:1.4}.participant-list{gap:14px;margin-top:18px;display:grid}.participant-frame{grid-template-columns:90px minmax(0,1fr) 132px;align-items:stretch;gap:12px;display:grid}.captain-side{background:0 0;align-items:center;display:grid}.participant-frame .participant-scroll{padding-bottom:10px;overflow-x:auto}.participant-frame .participant-row{border:1px solid var(--card-border);background:#ffffffe6;border-radius:22px;grid-template-columns:96px 120px 120px 100px 160px 120px 120px 180px 180px 220px 260px 260px;align-items:stretch;gap:12px;min-width:1250px;padding:14px;display:grid;box-shadow:0 14px 34px #3067961a}.captain-toggle{color:#b77a00;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff8dfb8;border:1px solid #e1bd5b;border-radius:14px;padding:14px 10px;font-weight:900}.captain-toggle.on{color:#fff;background:#4eb6e8d1;border-color:#4eb6e8}.fixed-actions{align-content:center;gap:8px;display:grid}@media (width<=820px){.participant-frame{grid-template-columns:74px minmax(0,1fr)}.fixed-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}}.participant-frame .participant-scroll{border:1px solid var(--card-border);background:#ffffffe6;border-radius:22px;padding-bottom:10px;overflow-x:auto;box-shadow:0 14px 34px #3067961a}.participant-frame .participant-row{box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important}
