:root{--bg-base:#101114;--bg-card:#17191d;--bg-elevated:#1e2126;--bg-sunken:#0c0d10;--surface-hover:#24272e;--border:#ffffff0f;--border-strong:#ffffff1c;--text-main:#f2f4f7;--text-body:#b6bcc6;--text-muted:#828a96;--text-strong:#fff;--primary:#ff7000;--primary-light:#ff8f2e;--primary-dark:#d95e00;--primary-soft:#ff70001f;--primary-softer:#ff700012;--primary-border:#ff700047;--primary-glow:#ff700033;--on-primary:#fff;--success:#3fbf7f;--success-soft:#3fbf7f21;--danger:#ef5d5d;--danger-soft:#ef5d5d21;--warning:#e3a008;--warning-soft:#e3a00821;--info:#5b92f0;--info-soft:#5b92f021;--script-bg:#1c1a17;--script-border:#ff700038;--script-text:#f0e7de;--kakao-bg:#1e1c12;--kakao-border:#fae10038;--kakao-text:#efe7be;--tip-bg:#191b20;--tip-border:var(--border-strong);--warning-bg:#ef5d5d17;--warning-text:#f3aeae;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-full:999px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--shadow-1:0 1px 2px #00000047;--shadow-2:0 12px 32px #0000006b;--fs-display:40px;--fs-h1:22px;--fs-h2:17px;--fs-h3:15px;--fs-body:15px;--fs-label:13px;--fs-caption:12px;--bar-bg:#101114db;--header-h:60px;--bar-h:132px;--content-w:560px;--safe-bottom:env(safe-area-inset-bottom,12px);--safe-top:env(safe-area-inset-top,0px)}body.light-mode{--bg-base:#f6f7f9;--bg-card:#fff;--bg-elevated:#fff;--bg-sunken:#eef0f3;--surface-hover:#edeff3;--border:#0f172a14;--border-strong:#0f172a24;--text-main:#14171c;--text-body:#4a515c;--text-muted:#79818e;--text-strong:#000;--primary-soft:#ff70001a;--primary-softer:#ff70000f;--primary-border:#ff70004d;--success:#16a163;--success-soft:#16a1631c;--danger:#dc4b4b;--danger-soft:#dc4b4b1a;--warning:#b57905;--warning-soft:#b579051c;--info:#2c6fdd;--info-soft:#2c6fdd1a;--script-bg:#fff9f3;--script-border:#ff700047;--script-text:#4a3524;--kakao-bg:#fffcea;--kakao-border:#bea50059;--kakao-text:#3b3712;--tip-bg:#f1f3f6;--tip-border:#0f172a1f;--warning-bg:#dc4b4b12;--warning-text:#a93131;--shadow-1:0 1px 2px #0f172a0f;--shadow-2:0 12px 32px #0f172a24;--bar-bg:#f6f7f9db}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;touch-action:manipulation}header,header *,.bottom-bar,.bottom-bar *,.login-screen,.login-screen *{-webkit-user-select:none;user-select:none;touch-action:none!important}html,body{background-color:var(--bg-base);font-variant-numeric:tabular-nums;width:100%;height:100%;color:var(--text-main);overscroll-behavior-y:none;font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Noto Sans KR,sans-serif;font-size:var(--fs-body);letter-spacing:-.01em;-webkit-font-smoothing:antialiased;margin:0;padding:0;line-height:1.7;transition:background-color .25s,color .25s;overflow:hidden}h1,h2,h3,h4,h5{letter-spacing:-.02em}strong{color:var(--text-strong);font-weight:700}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--r-full)}::-webkit-scrollbar-track{background:0 0}.icon{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.14em;flex:none;width:1em;height:1em;overflow:visible}.icon-sm{width:.875em;height:.875em}.icon-lg{width:1.25em;height:1.25em}.icon-xl{stroke-width:1.6px;width:28px;height:28px}.icon.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.55}}@keyframes fastPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(1.06)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}@keyframes borderBlink{0%,to{border-color:#ef5d5d40}50%{border-color:var(--danger)}}.btn{justify-content:center;align-items:center;gap:var(--s-2);min-height:44px;padding:0 var(--s-4);border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--text-main);font-family:inherit;font-size:var(--fs-label);white-space:nowrap;cursor:pointer;flex-shrink:0;font-weight:700;line-height:1;transition:background .15s,border-color .15s,color .15s,transform 80ms;display:inline-flex}.btn:active{background:var(--surface-hover);transform:scale(.97)}.btn-primary{background:var(--primary);color:var(--on-primary);border-color:#0000}.btn-primary:active{background:var(--primary-dark)}.btn-secondary{background:var(--bg-elevated);border-color:var(--border-strong);color:var(--text-main)}.btn-ghost{color:var(--text-body);background:0 0;border-color:#0000}.btn-ghost:active{background:var(--surface-hover)}.btn-danger{background:var(--danger);color:#fff;border-color:#0000}.btn-success{background:var(--success);color:#062015;border-color:#0000}.btn-outline-danger{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.btn-sm{min-height:36px;padding:0 var(--s-3);font-size:var(--fs-caption);border-radius:var(--r-sm)}.btn-lg{min-height:52px;padding:0 var(--s-5);font-size:var(--fs-h3);border-radius:var(--r-md)}.btn-block{width:100%;display:flex}.btn-icon{width:44px;min-width:44px;font-size:var(--fs-h2);padding:0}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;pointer-events:none}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s-4)}.card-header{justify-content:space-between;align-items:flex-start;gap:var(--s-3);margin-bottom:var(--s-3);display:flex}.card-title{font-size:var(--fs-h2);color:var(--text-main);margin:0;font-weight:800;line-height:1.35}.card-desc{font-size:var(--fs-label);color:var(--text-muted);margin:0 0 var(--s-3) 0;word-break:keep-all;line-height:1.65}.section-title{align-items:center;gap:var(--s-2);font-size:var(--fs-h2);color:var(--text-main);margin:var(--s-6) 0 var(--s-3) 0;font-weight:800;display:flex}.section-title .icon{color:var(--text-muted)}.section-num{border-radius:var(--r-sm);background:var(--primary-soft);width:22px;height:22px;color:var(--primary);font-size:var(--fs-caption);flex:none;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.badge{align-items:center;gap:var(--s-1);border-radius:var(--r-full);background:var(--surface-hover);color:var(--text-body);font-size:var(--fs-caption);white-space:nowrap;padding:3px 9px;font-weight:700;line-height:1.5;display:inline-flex}.badge-primary{background:var(--primary-soft);color:var(--primary)}.badge-success{background:var(--success-soft);color:var(--success)}.badge-danger{background:var(--danger-soft);color:var(--danger)}.badge-warning{background:var(--warning-soft);color:var(--warning)}.badge-info{background:var(--info-soft);color:var(--info)}.field{margin-bottom:var(--s-3)}.field-label{font-size:var(--fs-label);color:var(--text-body);margin-bottom:var(--s-2);font-weight:700;display:block}.input,.textarea,.rs-input,.rs-textarea,.calc-input,.inv-input,.apply-name-input,.admin-textarea,.admin-confirm-input,.login-input{background:var(--bg-sunken);border:1px solid var(--border-strong);border-radius:var(--r-md);width:100%;color:var(--text-main);font-family:inherit;font-size:var(--fs-body);box-sizing:border-box;outline:none;padding:13px 14px;font-weight:500;transition:border-color .15s,background .15s}.input::placeholder,.textarea::placeholder,.rs-input::placeholder,.rs-textarea::placeholder,.admin-textarea::placeholder,.admin-confirm-input::placeholder{color:var(--text-muted);font-weight:400}.input:focus,.textarea:focus,.rs-input:focus,.rs-textarea:focus,.calc-input:focus,.inv-input:focus,.apply-name-input:focus,.admin-textarea:focus,.admin-confirm-input:focus,.login-input:focus{border-color:var(--primary);background:var(--bg-elevated)}.textarea,.rs-textarea,.admin-textarea{resize:none;min-height:80px;line-height:1.6}input[type=file]{width:100%;font-size:var(--fs-label);color:var(--text-body);font-family:inherit}input[type=file]::file-selector-button{margin-right:var(--s-3);border-radius:var(--r-sm);border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--text-main);font-family:inherit;font-size:var(--fs-caption);cursor:pointer;padding:9px 14px;font-weight:700}.segmented,.time-select{background:var(--bg-sunken);border:1px solid var(--border);border-radius:var(--r-md);gap:2px;padding:3px;display:flex}.seg-item,.time-btn{border-radius:var(--r-sm);min-width:0;color:var(--text-muted);font-family:inherit;font-size:var(--fs-label);white-space:nowrap;cursor:pointer;background:0 0;border:none;flex:1;padding:8px 10px;font-weight:700;line-height:1;transition:background .15s,color .15s}.seg-item.active,.time-btn.active{background:var(--bg-elevated);color:var(--text-strong);box-shadow:var(--shadow-1)}.tabs,.tools-tabs{gap:var(--s-5);padding:0 var(--s-5);border-bottom:1px solid var(--border);scrollbar-width:none;flex-shrink:0;display:flex;overflow-x:auto}.tools-tabs::-webkit-scrollbar{display:none}.tab,.tool-tab{color:var(--text-muted);font-family:inherit;font-size:var(--fs-h3);white-space:nowrap;cursor:pointer;background:0 0;border:none;padding:14px 2px;font-weight:700;transition:color .15s;position:relative}.tab.active,.tool-tab.active{color:var(--text-main)}.tab.active:after,.tool-tab.active:after{content:"";background:var(--primary);border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:-1px;left:0;right:0}.tool-pane{padding:var(--s-4) 0 0 0;animation:.25s fadeIn;display:none}.tool-pane.active{display:block}.chip,.rs-chip{border-radius:var(--r-full);border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--text-body);font-family:inherit;font-size:var(--fs-label);white-space:nowrap;cursor:pointer;flex-shrink:0;align-items:center;padding:8px 14px;font-weight:700;transition:background .15s,color .15s,border-color .15s,transform 80ms;display:inline-flex}.chip:active,.rs-chip:active{background:var(--surface-hover);transform:scale(.96)}.chip.active,.rs-chip.active{background:var(--primary-soft);border-color:var(--primary-border);color:var(--primary)}.progress{border-radius:var(--r-full);background:var(--border);width:100%;height:3px;overflow:hidden}.progress-bar{border-radius:var(--r-full);background:var(--primary);width:100%;height:100%;transition:width .3s linear,background-color .3s}.progress-bar.warning{background:var(--danger)}.list-row{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md);display:flex}.list-row-main{flex-direction:column;gap:2px;min-width:0;display:flex}.list-row-title{font-size:var(--fs-h3);color:var(--text-main);word-break:keep-all;font-weight:700}.list-row-meta{font-size:var(--fs-caption);color:var(--text-muted);font-weight:500}.has-tip{position:relative}.has-tip:after{content:attr(data-tip);border-radius:var(--r-sm);background:var(--bg-elevated);border:1px solid var(--border-strong);box-shadow:var(--shadow-2);color:var(--text-main);font-size:var(--fs-caption);white-space:nowrap;opacity:0;pointer-events:none;z-index:400;padding:6px 10px;font-weight:600;transition:opacity .15s,transform .15s;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)translateY(-4px)}@media (hover:hover) and (pointer:fine){.has-tip:hover:after{opacity:1;transform:translate(-50%)translateY(0)}}.toast{left:50%;bottom:calc(var(--bar-h) + var(--safe-bottom) + var(--s-4));align-items:center;gap:var(--s-2);border-radius:var(--r-full);background:var(--bg-elevated);border:1px solid var(--border-strong);max-width:calc(100vw - 32px);box-shadow:var(--shadow-2);color:var(--text-main);font-size:var(--fs-label);opacity:0;visibility:hidden;pointer-events:none;z-index:500;padding:12px 18px;font-weight:700;transition:opacity .2s,transform .2s,visibility .2s;display:flex;position:fixed;transform:translate(-50%)translateY(8px)}.toast.active{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.toast .icon{color:var(--success)}.divider{background:var(--border);height:1px;margin:var(--s-4) 0;border:0}.login-screen{z-index:9999;padding:var(--s-5);background:var(--bg-base);justify-content:center;align-items:center;transition:opacity .35s,visibility .35s;display:flex;position:fixed;inset:0}.login-screen.hidden{opacity:0;visibility:hidden;pointer-events:none}.login-container{text-align:center;width:100%;max-width:340px}.login-logo{height:30px;margin-bottom:var(--s-6);opacity:.95}.login-title{color:var(--text-main);margin:0 0 var(--s-2) 0;font-size:26px;font-weight:800}.login-desc{font-size:var(--fs-body);color:var(--text-muted);margin:0 0 var(--s-5) 0}.login-input-wrap{position:relative}.login-input{text-align:center;letter-spacing:6px;margin-bottom:var(--s-2);padding:16px 52px;font-size:18px;font-weight:700}.login-input-toggle{border-radius:var(--r-sm);width:40px;height:40px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:18px;transition:color .15s,background .15s;display:flex;position:absolute;top:30px;right:6px;transform:translateY(-50%)}.login-input-toggle:active{background:var(--surface-hover);color:var(--text-main)}.login-btn{width:100%;min-height:52px;margin-top:var(--s-2);border-radius:var(--r-md);background:var(--primary);color:var(--on-primary);font-family:inherit;font-size:var(--fs-h3);cursor:pointer;border:none;font-weight:800;transition:background .15s,transform 80ms}.login-btn:active{background:var(--primary-dark);transform:scale(.98)}.login-error{min-height:20px;margin:var(--s-2) 0 0 0;color:var(--danger);font-size:var(--fs-label);font-weight:700}.shake{animation:.3s ease-in-out shake}header{z-index:100;height:calc(var(--header-h) + var(--safe-top));padding:var(--safe-top) var(--s-3) 0 var(--s-4);background:var(--bar-bg);-webkit-backdrop-filter:blur(16px)saturate(160%);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;transition:background-color .25s,border-color .25s;display:flex;position:fixed;top:0;left:0;right:0}.header-title{flex:0 auto;align-items:center;min-width:0;display:flex;overflow:hidden}.header-logo{object-fit:contain;width:auto;max-width:100%;height:24px;display:block}.header-actions{flex:none;align-items:center;gap:2px;display:flex}.header-sep{background:var(--border-strong);flex:none;width:1px;height:20px;margin:0 6px}.menu-btn{border-radius:var(--r-md);width:40px;height:40px;color:var(--text-body);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:19px;transition:background .15s,color .15s;display:inline-flex;position:relative}.menu-btn:active{background:var(--surface-hover);color:var(--text-main)}@media (hover:hover) and (pointer:fine){.menu-btn:hover{background:var(--surface-hover);color:var(--text-main)}}.menu-btn.accent{color:var(--primary)}.notice-badge{background:var(--danger);border:2px solid var(--bg-base);color:#0000;border-radius:50%;width:8px;height:8px;padding:0;font-size:0;transition:border-color .25s;display:none;position:absolute;top:7px;right:7px}.swiper{width:100%;height:100%;padding-top:calc(var(--header-h) + var(--safe-top));padding-bottom:calc(var(--bar-h) + var(--safe-bottom))}.swiper-slide{-webkit-overflow-scrolling:touch;height:100%;padding:var(--s-4) var(--s-4) var(--s-6) var(--s-4);overflow-y:auto}.swiper-pagination-bullets{bottom:calc(var(--bar-h) + var(--safe-bottom) + 8px)!important}.swiper-pagination-bullet{background:var(--border-strong);opacity:1;width:5px;height:5px;transition:width .25s,background .25s;margin:0 3px!important}.swiper-pagination-bullet-active{background:var(--primary);border-radius:var(--r-full);width:14px}.cue-card{box-shadow:none;margin:0 auto var(--s-4) auto;max-width:var(--content-w);background:0 0;border:none;padding:0}.cue-head,.card-header-main{margin-bottom:var(--s-4)}.cue-step{align-items:center;gap:var(--s-2);margin-bottom:var(--s-2);font-size:var(--fs-label);font-weight:700;line-height:1.4;display:flex}.cue-step-index{color:var(--text-main);font-size:var(--fs-h2);font-variant-numeric:tabular-nums;font-weight:800}.cue-step-total{color:var(--text-muted);font-variant-numeric:tabular-nums}.cue-step-group{padding-left:var(--s-2);border-left:1px solid var(--border-strong);color:var(--text-muted);margin-left:2px;font-weight:600}.card-title,h2.card-title{font-size:var(--fs-h1);color:var(--text-main);word-break:keep-all;margin:0;font-weight:800;line-height:1.32}.card-subtitle{margin-bottom:var(--s-2);color:var(--text-muted);font-size:var(--fs-caption);font-weight:700;display:inline-block}.section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s-4);margin-bottom:var(--s-3)}.section h4{align-items:center;gap:var(--s-2);margin:0 0 var(--s-3) 0;color:var(--text-main);font-size:var(--fs-h2);word-break:keep-all;font-weight:800;line-height:1.4;display:flex}.sec-num{border-radius:var(--r-sm);background:var(--bg-sunken);width:24px;height:24px;color:var(--text-body);font-size:var(--fs-label);flex:none;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.section ul{padding-left:var(--s-4);color:var(--text-body);margin:0}.section li{font-size:var(--fs-body);margin-bottom:var(--s-2);word-break:keep-all;line-height:1.72}.section li::marker{color:var(--text-muted)}.section li:last-child{margin-bottom:0}.section p{font-size:var(--fs-body);margin:0 0 var(--s-2) 0;color:var(--text-body);word-break:keep-all;line-height:1.72}.section ol{padding-left:var(--s-4);color:var(--text-body);font-size:var(--fs-body);margin:0;line-height:1.8}.section u{-webkit-text-decoration-color:var(--primary);text-decoration-color:var(--primary);text-underline-offset:4px}.script-box{margin:var(--s-3) 0 0 0;padding:var(--s-3) var(--s-4);border:1px solid var(--script-border);border-left:2px solid var(--primary);border-radius:var(--r-sm) var(--r-md) var(--r-md) var(--r-sm);background:var(--script-bg);color:var(--script-text);font-size:var(--fs-body);word-break:keep-all;font-weight:500;line-height:1.78;position:relative}.script-box:before{content:"호스트 멘트";margin-bottom:var(--s-2);color:var(--primary);letter-spacing:.06em;font-size:11px;font-weight:800;display:block}.script-box.kakao-box{border-color:var(--kakao-border);background:var(--kakao-bg);color:var(--kakao-text);border-left-color:#e9c900}.script-box.kakao-box:before{content:"단톡방 전송";color:#d9be00}body.light-mode .script-box.kakao-box:before{color:#8a7a00}.script-sub{margin-top:var(--s-2);color:var(--text-muted);font-size:var(--fs-label);word-break:keep-all;font-weight:500;line-height:1.6;display:block}.tip-box{margin-top:var(--s-4);padding:2px 0 2px var(--s-4);border:none;border-left:2px solid var(--border-strong);color:var(--text-muted);word-break:keep-all;background:0 0;border-radius:0;font-size:14px;font-weight:500;line-height:1.7}.tip-box strong{color:var(--text-body);font-weight:700}.warning-box{margin-top:var(--s-3);padding:var(--s-3) var(--s-4);border-radius:var(--r-md);background:var(--warning-bg);color:var(--warning-text);word-break:keep-all;border:1px solid #ef5d5d40;font-size:14px;font-weight:600;line-height:1.7}.warning-box strong{color:var(--danger)}.bottom-bar{z-index:100;gap:var(--s-3);padding:var(--s-3) var(--s-4) calc(var(--s-3) + var(--safe-bottom)) var(--s-4);background:var(--bar-bg);-webkit-backdrop-filter:blur(18px)saturate(160%);border-top:1px solid var(--border);flex-direction:column;transition:background-color .25s,border-color .25s;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-bar>*{width:100%;max-width:var(--content-w);margin-left:auto;margin-right:auto}.bar-row{align-items:center;gap:var(--s-3);display:flex}.bar-row-top{justify-content:space-between}.bar-row-top .time-select{flex:1;max-width:240px}.bar-row-main{justify-content:space-between}.timer-center{align-items:baseline;gap:var(--s-2);min-width:0;display:flex}.timer-display{font-size:var(--fs-display);font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--text-main);font-weight:800;line-height:1;transition:color .2s}.timer-display.warning{color:var(--danger);animation:1s infinite pulse}.flash-warning{color:var(--primary)!important;animation:.5s 6 fastPulse!important}.round-badge{padding:3px 3px 3px var(--s-3);border:1px solid var(--border);border-radius:var(--r-full);background:var(--bg-sunken);align-items:center;gap:2px;display:flex}.round-display{font-size:var(--fs-label);color:var(--text-main);font-variant-numeric:tabular-nums;margin-right:var(--s-1);font-weight:800}.round-reset-btn{width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:14px;transition:background .15s,color .15s;display:inline-flex}.round-reset-btn:active{background:var(--surface-hover);color:var(--text-main)}.timer-controls{align-items:center;gap:var(--s-2);display:flex}.timer-controls .btn-icon{width:46px;min-width:46px;height:46px;min-height:46px}#bellBtn{color:var(--text-body);transition:transform .1s,background .15s}#playPauseBtn{min-width:116px;height:52px;font-size:var(--fs-h3);font-weight:800}#playPauseBtn.is-running{background:var(--bg-elevated);border:1px solid var(--primary-border);color:var(--primary)}.sidebar-overlay{z-index:200;-webkit-backdrop-filter:blur(2px);opacity:0;pointer-events:none;background:#0000008c;transition:opacity .28s;position:fixed;inset:0}.sidebar-overlay.active{opacity:1;pointer-events:auto}.sidebar{z-index:201;background:var(--bg-card);border-left:1px solid var(--border);width:288px;padding-top:var(--safe-top);padding-bottom:var(--safe-bottom);flex-direction:column;transition:transform .3s cubic-bezier(.32,.72,0,1),background-color .25s;display:flex;position:fixed;top:0;bottom:0;right:-300px}.sidebar.active{transform:translate(-300px)}.sidebar-header{padding:var(--s-4) var(--s-3) var(--s-4) var(--s-5);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.sidebar-header h3{font-size:var(--fs-h2);color:var(--text-main);margin:0;font-weight:800}.close-btn{border-radius:var(--r-md);width:40px;height:40px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:19px;transition:background .15s,color .15s;display:inline-flex}.close-btn:active{background:var(--surface-hover);color:var(--text-main)}.sidebar-menu{min-height:0;padding:var(--s-2) 0 var(--s-4) 0;-webkit-overflow-scrolling:touch;flex:auto;overflow-y:auto}.menu-group{padding:var(--s-4) var(--s-5) var(--s-2) var(--s-5);color:var(--text-muted);letter-spacing:.08em;font-size:11px;font-weight:800}.menu-item{align-items:center;gap:var(--s-2);min-height:50px;padding:var(--s-3) var(--s-5);color:var(--text-body);cursor:pointer;word-break:keep-all;font-size:14.5px;font-weight:600;transition:background .15s,color .15s;display:flex;position:relative}.menu-item:active{background:var(--surface-hover)}.menu-item.active{background:var(--primary-softer);color:var(--text-main);font-weight:700}.menu-item.active:before{content:"";background:var(--primary);border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:0}.sidebar>.menu-item{border-top:1px solid var(--border);flex:none}.logout-btn{color:var(--danger)!important;font-weight:700!important}.security-modal,.notice-popup-modal{z-index:300;background:var(--bg-card);border:1px solid var(--border-strong);border-radius:var(--r-xl);width:calc(100% - 32px);max-width:480px;box-shadow:var(--shadow-2);opacity:0;visibility:hidden;transition:opacity .25s,transform .25s cubic-bezier(.32,.72,0,1),visibility .25s;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-46%)}.notice-popup-modal{z-index:305}.security-modal.active,.notice-popup-modal.active{opacity:1;visibility:visible;transform:translate(-50%,-50%)}.security-modal{padding:var(--s-5)}.security-header{align-items:center;gap:var(--s-2);margin-bottom:var(--s-3);color:var(--text-main);font-size:var(--fs-h2);font-weight:800;display:flex}.security-header .icon{color:var(--warning)}.security-content{font-size:var(--fs-body);color:var(--text-body);word-break:keep-all;line-height:1.8}.security-content .accent-danger{color:var(--danger);font-weight:700}.security-btn{width:100%;min-height:52px;margin-top:var(--s-5);border-radius:var(--r-md);background:var(--primary);color:var(--on-primary);font-family:inherit;font-size:var(--fs-h3);cursor:pointer;border:none;font-weight:800;transition:background .15s,transform 80ms}.security-btn:active{background:var(--primary-dark);transform:scale(.98)}.notice-popup-header{padding:var(--s-6) var(--s-5) var(--s-4) var(--s-5);text-align:center;border-bottom:1px solid var(--border)}.dialog-icon{width:52px;height:52px;margin-bottom:var(--s-3);background:var(--danger-soft);color:var(--danger);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.notice-popup-title{color:var(--text-main);font-size:var(--fs-h1);margin:0;font-weight:800}.notice-popup-date{margin-top:var(--s-2);color:var(--text-muted);font-size:var(--fs-label);font-weight:500}.notice-popup-body{padding:var(--s-6) var(--s-5);-webkit-overflow-scrolling:touch;max-height:48vh;color:var(--text-main);white-space:pre-wrap;word-break:keep-all;text-align:center;font-size:17px;font-weight:600;line-height:1.8;overflow-y:auto}.notice-popup-footer{gap:var(--s-2);padding:0 var(--s-5) var(--s-5) var(--s-5);display:flex}.notice-popup-btn{border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--bg-elevated);min-height:52px;color:var(--text-main);font-family:inherit;font-size:var(--fs-label);cursor:pointer;flex:1;font-weight:700;transition:background .15s,transform 80ms}.notice-popup-btn:active{transform:scale(.98)}.notice-popup-btn.primary{background:var(--primary);color:var(--on-primary);border-color:#0000}.bottom-sheet-modal{z-index:201;background:var(--bg-card);border-top:1px solid var(--border-strong);border-radius:var(--r-xl) var(--r-xl) 0 0;max-height:88dvh;box-shadow:var(--shadow-2);padding-bottom:var(--safe-bottom);flex-direction:column;transition:transform .34s cubic-bezier(.32,.72,0,1),background-color .25s;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(105%)}.bottom-sheet-modal.active{transform:translateY(0)}.bottom-sheet-modal:before{content:"";border-radius:var(--r-full);background:var(--border-strong);width:36px;height:4px;position:absolute;top:8px;left:50%;transform:translate(-50%)}.sheet-header{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-5) var(--s-3) var(--s-4) var(--s-5);border-bottom:1px solid var(--border);flex-shrink:0;display:flex}.sheet-header h3{align-items:center;gap:var(--s-2);color:var(--text-main);font-size:var(--fs-h2);margin:0;font-weight:800;display:flex}.sheet-header h3 .icon{color:var(--text-muted)}.sheet-content,.schedule-content{min-height:0;padding:var(--s-4) var(--s-5) var(--s-6) var(--s-5);-webkit-overflow-scrolling:touch;flex:auto;overflow-y:auto}.sheet-note{color:var(--text-body);margin:0 0 var(--s-4) 0;word-break:keep-all;font-size:14px;line-height:1.7}.install-block{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-4);margin-bottom:var(--s-3)}.install-block-title{align-items:center;gap:var(--s-2);margin-bottom:var(--s-3);color:var(--text-main);font-size:14px;font-weight:800;display:flex}.install-steps{padding-left:var(--s-4);color:var(--text-body);margin:0;font-size:14px;line-height:1.9}.install-steps .icon{color:var(--primary)}.checkbox-row{align-items:center;gap:var(--s-2);margin-top:var(--s-4);color:var(--text-muted);font-size:var(--fs-label);cursor:pointer;display:flex}.checkbox-row input{width:18px;height:18px;accent-color:var(--primary)}.calendar-wrapper{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s-4) var(--s-3);margin:0 auto var(--s-5) auto;width:100%;max-width:460px;overflow:hidden}.cal-header{padding:0 var(--s-2);margin-bottom:var(--s-4);color:var(--text-main);font-size:var(--fs-h2);justify-content:space-between;align-items:center;font-weight:800;display:flex}.cal-nav-btn{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg-card);width:36px;height:36px;color:var(--text-body);cursor:pointer;justify-content:center;align-items:center;font-size:15px;transition:background .15s,color .15s,transform 80ms;display:flex}.cal-nav-btn:active{background:var(--surface-hover);color:var(--text-main);transform:scale(.92)}.cal-grid{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.cal-day-name{font-size:var(--fs-caption);color:var(--text-muted);margin-bottom:var(--s-2);font-weight:700}.cal-cell{aspect-ratio:1/1.06;border-radius:var(--r-md);cursor:pointer;background:0 0;border:1px solid #0000;flex-direction:column;align-items:center;min-width:0;padding-top:8px;transition:background .15s,border-color .15s;display:flex;position:relative}.cal-cell.empty{pointer-events:none}.cal-cell.has-meeting{background:var(--bg-card)}.cal-cell.selected{border-color:var(--primary);background:var(--primary-soft)}.cal-cell.unassigned{border-color:var(--danger);animation:1.6s infinite borderBlink}.cal-num{width:30px;height:30px;color:var(--text-main);font-size:var(--fs-h3);font-variant-numeric:tabular-nums;z-index:2;justify-content:center;align-items:center;font-weight:700;display:flex}.cal-cell.today .cal-num{background:var(--primary);color:var(--on-primary);border-radius:50%}.cal-dots{flex-wrap:wrap;justify-content:center;gap:3px;width:100%;height:8px;margin-top:auto;margin-bottom:7px;padding:0 3px;display:flex}.cal-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.cal-dot.meeting{background:var(--text-muted);opacity:.55}.cal-dot.o{background:var(--primary)}.cal-dot.x{background:var(--danger)}.cal-legend{justify-content:center;gap:var(--s-4);margin-top:var(--s-4);padding-top:var(--s-3);border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-label);font-weight:600;display:flex}.cal-legend-item{align-items:center;gap:var(--s-1);display:flex}.schedule-month-title{margin-bottom:var(--s-3);color:var(--text-main);font-size:var(--fs-h2);justify-content:space-between;align-items:center;font-weight:800;display:flex}.view-all-btn{border:1px solid var(--border-strong);border-radius:var(--r-full);color:var(--text-body);font-family:inherit;font-size:var(--fs-caption);cursor:pointer;background:0 0;padding:7px 13px;font-weight:700;transition:background .15s,color .15s}.view-all-btn:active{background:var(--surface-hover);color:var(--text-main)}.schedule-item{gap:var(--s-3);padding:var(--s-4);margin-bottom:var(--s-2);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md);flex-direction:column;display:flex;position:relative;overflow:hidden}.schedule-item.past{opacity:.42}.schedule-item.past .schedule-date{color:var(--text-muted);text-decoration:line-through}.schedule-item.past .schedule-badge{background:var(--surface-hover)!important;color:var(--text-muted)!important}.schedule-date-row{padding-bottom:var(--s-3);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.schedule-date{font-size:var(--fs-h2);color:var(--text-main);font-weight:800}.schedule-badge{border-radius:var(--r-full);font-size:var(--fs-caption);padding:3px 9px;font-weight:700}.schedule-badge.weekday{background:var(--surface-hover);color:var(--text-body)}.schedule-badge.sat{background:var(--info-soft);color:var(--info)}.schedule-badge.sun{background:var(--danger-soft);color:var(--danger)}.schedule-meetings{gap:var(--s-2);flex-direction:column;display:flex}.meeting-row{justify-content:space-between;align-items:flex-start;gap:var(--s-3);display:flex}.meeting-region{align-items:center;gap:var(--s-2);color:var(--text-main);word-break:keep-all;font-size:14.5px;font-weight:700;display:inline-flex}.meeting-region:before{content:"";background:var(--text-muted);border-radius:50%;flex:none;width:4px;height:4px;display:inline-block}.time-badges{gap:var(--s-1);flex-wrap:wrap;justify-content:flex-end;max-width:62%;display:flex}.meeting-time{border-radius:var(--r-sm);background:var(--bg-sunken);color:var(--text-body);font-size:var(--fs-caption);font-variant-numeric:tabular-nums;padding:3px 9px;font-weight:600}.my-assign-card{padding:var(--s-4);margin-bottom:var(--s-3);border:1px solid var(--primary-border);border-radius:var(--r-md);background:var(--primary-softer)}.my-assign-title{align-items:center;gap:var(--s-2);margin-bottom:var(--s-2);color:var(--primary);font-size:var(--fs-label);font-weight:800;display:flex}.my-assign-row{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-2) 0;border-bottom:1px solid var(--border);display:flex}.my-assign-row:last-child{border-bottom:none;padding-bottom:0}.my-assign-region{color:var(--text-main);font-size:14.5px;font-weight:700}.meeting-time.mine{background:var(--primary-soft);color:var(--primary)}.loading-schedule{align-items:center;gap:var(--s-2);padding:var(--s-7) 0;color:var(--text-muted);font-size:var(--fs-label);text-align:center;flex-direction:column;display:flex}.notice-item{padding:var(--s-4);margin-bottom:var(--s-2);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md)}.notice-item-header{justify-content:space-between;align-items:flex-start;gap:var(--s-3);padding-bottom:var(--s-3);margin-bottom:var(--s-3);border-bottom:1px solid var(--border);display:flex}.notice-item-title{color:var(--text-main);font-size:var(--fs-h3);flex:1;font-weight:800;line-height:1.5}.notice-item-date{color:var(--text-muted);font-size:var(--fs-caption);white-space:nowrap;font-weight:500}.notice-item-body{color:var(--text-body);white-space:pre-wrap;word-break:keep-all;font-size:14px;font-weight:500;line-height:1.75}.calc-row{gap:var(--s-3);margin-bottom:var(--s-4);display:flex}.calc-input-group{gap:var(--s-2);flex-direction:column;flex:1;display:flex}.calc-label{font-size:var(--fs-label);color:var(--text-body);text-align:center;font-weight:700}.calc-input{text-align:center;font-variant-numeric:tabular-nums;padding:16px 12px;font-size:24px;font-weight:800}.calc-btn{justify-content:center;align-items:center;gap:var(--s-2);border-radius:var(--r-md);background:var(--primary);width:100%;min-height:52px;color:var(--on-primary);font-family:inherit;font-size:var(--fs-h3);cursor:pointer;border:none;font-weight:800;transition:background .15s,transform 80ms;display:flex}.calc-btn:active{background:var(--primary-dark);transform:scale(.98)}.calc-result{margin-top:var(--s-4);padding:var(--s-4);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-body);text-align:center;font-size:14px;line-height:1.7;display:none}.calc-result.active{animation:.3s fadeIn;display:block}.calc-result .accent-success{color:var(--success);font-weight:700}.calc-result .accent-danger{color:var(--danger);font-weight:700}.calc-result-head{font-size:var(--fs-h2);color:var(--text-main);margin-bottom:var(--s-3);font-weight:800}.calc-result-label{color:var(--primary);font-size:var(--fs-label);margin-bottom:var(--s-1);font-weight:800}.calc-result-body{text-align:left;font-size:14px;display:inline-block}.rs-group{padding:var(--s-4);margin-bottom:var(--s-3);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md)}.rs-label{justify-content:space-between;align-items:center;gap:var(--s-2);margin-bottom:var(--s-3);color:var(--text-main);font-size:var(--fs-label);font-weight:800;display:flex}.rs-label .icon{color:var(--text-muted)}.rs-grid{gap:var(--s-2);grid-template-columns:1fr 1fr;display:grid}.rs-input,.rs-textarea{padding:11px 12px;font-size:14px}.rs-textarea{min-height:68px}.rs-chip-group{margin-top:var(--s-4)}.rs-chip-label{align-items:center;gap:var(--s-1);margin-bottom:var(--s-2);color:var(--text-muted);font-size:var(--fs-caption);font-weight:700;display:flex}.rs-chip-scroll{gap:var(--s-2);padding-bottom:var(--s-2);-webkit-overflow-scrolling:touch;scrollbar-width:none;display:flex;overflow-x:auto}.rs-chip-scroll::-webkit-scrollbar{display:none}.rs-chip{font-size:var(--fs-caption);padding:7px 13px}.rs-counter-row{gap:var(--s-2);display:flex}.rs-counter{justify-content:space-between;align-items:center;gap:var(--s-2);padding:var(--s-1) var(--s-2);background:var(--bg-sunken);border:1px solid var(--border);border-radius:var(--r-md);flex:1;display:flex}.rs-counter-label{font-size:var(--fs-label);padding-left:var(--s-2);font-weight:800}.rs-counter-label.male{color:var(--info)}.rs-counter-label.female{color:var(--danger)}.rs-counter span[id^=rsCount]{text-align:center;min-width:28px;font-size:var(--fs-h2);color:var(--text-main);font-variant-numeric:tabular-nums;font-weight:800}.rs-counter button{border-radius:var(--r-sm);background:var(--bg-elevated);width:36px;height:36px;color:var(--text-main);cursor:pointer;border:none;justify-content:center;align-items:center;font-family:inherit;font-size:18px;font-weight:700;transition:background .15s;display:inline-flex}.rs-counter button:active{background:var(--surface-hover)}.rs-toggle{align-items:center;gap:var(--s-2);cursor:pointer;display:flex}.rs-toggle input{display:none}.rs-slider{border-radius:var(--r-full);background:var(--border-strong);flex:none;width:38px;height:22px;transition:background .25s;position:relative}.rs-slider:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .25s;position:absolute;top:2px;left:2px}.rs-toggle input:checked+.rs-slider{background:var(--success)}.rs-toggle input:checked+.rs-slider:after{transform:translate(16px)}.rs-toggle-text{font-size:var(--fs-caption);color:var(--text-muted);font-weight:700}.rs-toggle input:checked~.rs-toggle-text{color:var(--success)}.reset-form-btn{justify-content:center;align-items:center;gap:var(--s-2);width:100%;min-height:44px;margin-bottom:var(--s-3);border:1px solid var(--border-strong);border-radius:var(--r-md);color:var(--text-muted);font-family:inherit;font-size:var(--fs-label);cursor:pointer;background:0 0;font-weight:700;transition:background .15s,color .15s,border-color .15s;display:flex}.reset-form-btn:active{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.kakao-preview-wrapper{margin-top:var(--s-4);padding:var(--s-4);border-radius:var(--r-lg);background-color:#b2c7d9}.kakao-preview-header{align-items:center;gap:var(--s-2);margin-bottom:var(--s-3);display:flex}.kakao-avatar{border-radius:var(--r-md);object-fit:cover;background:#fff;width:34px;height:34px}.kakao-name{font-size:var(--fs-caption);color:#3b4a55;font-weight:700}.kakao-bubble{padding:var(--s-4);color:#1a1a1a;white-space:pre-wrap;word-break:keep-all;background-color:#fee500;border-radius:4px 16px 16px;font-size:14px;line-height:1.6;position:relative}.kakao-bubble:before{content:"";border-top:0 solid #0000;border-bottom:8px solid #0000;border-left:0 solid #0000;border-right:8px solid #fee500;position:absolute;top:0;left:-6px}.kakao-copy-btn{justify-content:center;align-items:center;gap:var(--s-2);width:100%;min-height:48px;margin-top:var(--s-3);border-radius:var(--r-md);color:#fee500;cursor:pointer;background:#371d1e;border:none;font-family:inherit;font-size:14px;font-weight:800;transition:background .15s,transform 80ms;display:flex}.kakao-copy-btn:active{background:#211;transform:scale(.98)}.apply-list{gap:var(--s-2);margin-bottom:var(--s-5);flex-direction:column;display:flex}.apply-item{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md);display:flex}.apply-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.apply-date{font-size:var(--fs-label);color:var(--primary);font-weight:800}.apply-region{color:var(--text-main);word-break:keep-all;font-size:14px;font-weight:700}.apply-actions{gap:var(--s-2);display:flex}.btn-apply{min-height:40px;padding:0 var(--s-4);border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--bg-sunken);color:var(--text-muted);font-family:inherit;font-size:var(--fs-label);cursor:pointer;font-weight:800;transition:background .15s,color .15s,border-color .15s}.btn-apply.o-btn.active{background:var(--success-soft);border-color:var(--success);color:var(--success)}.btn-apply.x-btn.active{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.confirmed-schedule-banner{padding:var(--s-4);margin-bottom:var(--s-4);border:1px solid var(--primary-border);border-radius:var(--r-md);background:var(--primary-softer);color:var(--text-main);word-break:keep-all;font-size:14px;font-weight:700;line-height:1.6;display:none}.confirmed-schedule-banner.active{animation:.3s fadeIn;display:block}.inv-section-title{margin:var(--s-5) 0 var(--s-3) 0;padding-bottom:var(--s-2);border-bottom:1px solid var(--border);color:var(--text-main);font-size:var(--fs-h3);justify-content:space-between;align-items:flex-end;font-weight:800;display:flex}.inv-grid{gap:var(--s-2);margin-bottom:var(--s-2);grid-template-columns:1fr 1fr;display:grid}.inv-item{gap:var(--s-2);padding:var(--s-3);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md);flex-direction:column;display:flex}.inv-label{font-size:var(--fs-caption);color:var(--text-body);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.inv-input-wrap{align-items:center;gap:var(--s-1);display:flex}.inv-input{text-align:center;font-size:var(--fs-h2);padding:9px;font-weight:800}.inv-unit{width:16px;color:var(--text-muted);font-size:var(--fs-caption);font-weight:600}.submit-inv-btn{justify-content:center;align-items:center;gap:var(--s-2);border-radius:var(--r-md);background:var(--primary);width:100%;min-height:52px;color:var(--on-primary);font-family:inherit;font-size:var(--fs-h3);cursor:pointer;border:none;font-weight:800;transition:background .15s,transform 80ms;display:flex}.submit-inv-btn:active{transform:scale(.98)}.host-chip{border-radius:var(--r-sm);font-size:var(--fs-caption);padding:5px 10px;font-weight:700;display:inline-block}.chip-o{background:var(--success-soft);color:var(--success);cursor:pointer;border:1px solid #3fbf7f4d;transition:background .15s}.chip-x{background:var(--danger-soft);color:var(--danger);border:1px solid #ef5d5d4d}.chip-assigned{background:var(--primary);color:var(--on-primary);cursor:pointer;border:1px solid #0000}#adminDashboardContent{background:var(--bg-base)}.admin-wrap{max-width:640px;padding:var(--s-5) var(--s-4) 96px var(--s-4);margin:0 auto}.admin-title{align-items:center;gap:var(--s-2);color:var(--text-main);font-size:var(--fs-h2);font-weight:800;display:flex}.admin-card{padding:var(--s-4);margin-bottom:var(--s-3);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:none}.admin-card-title{align-items:center;gap:var(--s-2);margin:0 0 var(--s-2) 0;color:var(--text-main);font-size:var(--fs-h2);font-weight:800;display:flex}.admin-card-title .icon{color:var(--text-muted)}.admin-edit-box{margin-top:var(--s-4);padding:var(--s-3);background:var(--bg-sunken);border-radius:var(--r-md);display:none}.admin-edit-box.active{animation:.25s fadeIn;display:block}.admin-textarea{min-height:96px;font-size:14px}.admin-confirm-input{font-size:14px;font-weight:600}.admin-save-btn{justify-content:center;align-items:center;gap:var(--s-2);border-radius:var(--r-md);background:var(--primary);width:100%;min-height:44px;color:var(--on-primary);cursor:pointer;border:none;font-family:inherit;font-size:14px;font-weight:800;transition:background .15s,transform 80ms;display:inline-flex}.admin-save-btn:active{background:var(--primary-dark);transform:scale(.98)}.admin-row{gap:var(--s-2);margin-bottom:var(--s-3);display:flex}.admin-row .admin-confirm-input,.admin-row .input{margin:0}.admin-scroll-list{gap:var(--s-2);max-height:300px;padding-right:var(--s-1);flex-direction:column;display:flex;overflow-y:auto}.admin-chip-list{gap:var(--s-2);flex-wrap:wrap;display:flex}.admin-log{margin-top:var(--s-3);padding:var(--s-3);background:var(--bg-sunken);border-radius:var(--r-md);max-height:200px;color:var(--text-body);font-size:var(--fs-caption);line-height:1.9;display:none;overflow-y:auto}.admin-empty{padding:var(--s-3);color:var(--text-muted);font-size:var(--fs-caption);text-align:center}.stack-2{gap:var(--s-2);flex-direction:column;display:flex}.row-2{gap:var(--s-2);display:flex}.row-2>*{flex:1}.mt-3{margin-top:var(--s-3)}.text-muted{color:var(--text-muted)}.accent-danger{color:var(--danger)}.accent-success{color:var(--success)}.accent-primary{color:var(--primary)}@media (width<=430px){header{padding-left:var(--s-3);padding-right:var(--s-2)}.header-logo{height:21px}.menu-btn{width:36px;height:36px;font-size:18px}.header-sep{margin:0 2px}}@media (width<=380px){.header-sep{display:none}.menu-btn{width:34px;height:34px}}@media (width<=360px){:root{--fs-display:34px;--bar-h:126px}#playPauseBtn{min-width:96px}.timer-controls .btn-icon{width:42px;min-width:42px;height:42px;min-height:42px}.swiper-slide,.bottom-bar{padding-left:var(--s-3);padding-right:var(--s-3)}.time-btn{font-size:var(--fs-caption);padding:8px 6px}}@media (width>=768px){.bottom-bar{padding-left:var(--s-6);padding-right:var(--s-6)}.bar-row-top .time-select{max-width:280px}.sheet-content,.schedule-content{padding-left:var(--s-6);padding-right:var(--s-6)}.bottom-sheet-modal{width:100%;max-width:680px;left:50%;right:auto;transform:translate(-50%,105%)}.bottom-sheet-modal.active{transform:translate(-50%)}}#root{width:100%;height:100%}.cue-viewport{width:100%;height:100%;padding-top:calc(var(--header-h) + var(--safe-top));padding-bottom:calc(var(--bar-h) + var(--safe-bottom));touch-action:pan-y;overflow:hidden}.cue-track{will-change:transform;height:100%;display:flex}.cue-slide{-webkit-overflow-scrolling:touch;width:100%;height:100%;padding:var(--s-4) var(--s-4) var(--s-6) var(--s-4);-webkit-user-select:none;user-select:none;touch-action:pan-y;flex:0 0 100%;overflow-y:auto}@media (width<=480px){.cue-slide{padding-left:var(--s-3);padding-right:var(--s-3)}}.cue-bullets{left:0;right:0;bottom:calc(var(--bar-h) + var(--safe-bottom) + 8px);z-index:40;pointer-events:none;justify-content:center;align-items:center;gap:6px;display:flex;position:fixed}.cue-bullet{border-radius:var(--r-full);background:var(--border-strong);pointer-events:auto;cursor:pointer;border:none;width:5px;height:5px;padding:0;transition:width .25s,background .25s}.cue-bullet.active{background:var(--primary);width:14px}.cue-empty{padding:calc(var(--header-h) + var(--safe-top) + 48px) var(--s-5) 0;text-align:center;color:var(--text-muted);font-size:var(--fs-label);line-height:1.8}.calc-autofill-btn{width:100%;min-height:40px;margin-bottom:var(--s-3);border:1px solid var(--primary-border);border-radius:var(--r-md);background:var(--primary-softer);color:var(--primary-light);font-family:inherit;font-size:var(--fs-label);cursor:pointer;justify-content:center;align-items:center;gap:6px;font-weight:700;display:flex}.calc-autofill-btn:active{background:var(--primary-soft)}.schedule-list{margin-top:var(--s-4)}.schedule-item.mine{border-color:var(--primary-border);background:var(--primary-softer)}.schedule-mine-badge{border-radius:var(--r-full);background:var(--primary-soft);color:var(--primary-light);font-size:var(--fs-caption);margin-left:auto;padding:2px 8px;font-weight:800}.meeting-sub{color:var(--text-muted);font-size:var(--fs-caption);margin-top:4px}.install-guide{color:var(--text-body);font-size:var(--fs-label)}.install-guide ol{margin:var(--s-2) 0 0 0;padding-left:20px}.install-guide li{margin-bottom:4px}button.menu-item{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;display:flex}button.cal-cell{font:inherit;border:0;padding:0}.roster-summary{gap:var(--s-4);padding:var(--s-3) var(--s-4);margin-bottom:var(--s-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-card);color:var(--text-muted);font-size:var(--fs-label);display:flex}.roster-summary strong{color:var(--text-main);font-weight:800}.roster-row{justify-content:space-between;align-items:center;gap:var(--s-2);border-bottom:1px solid var(--border);padding:9px 0;display:flex}.roster-row:last-child{border-bottom:none}.roster-info{align-items:center;gap:8px;min-width:0;display:flex}.roster-name{color:var(--text-main);font-weight:700;font-size:var(--fs-body)}.roster-birth{color:var(--text-muted);font-size:var(--fs-caption)}.roster-actions{flex:none;gap:6px;display:flex}.roster-btn{border:1px solid var(--border-strong);border-radius:var(--r-sm);min-height:34px;color:var(--text-body);font-family:inherit;font-size:var(--fs-caption);cursor:pointer;background:0 0;align-items:center;gap:4px;padding:0 10px;font-weight:700;display:inline-flex}.roster-btn.on{border-color:var(--primary-border);background:var(--primary-soft);color:var(--primary-light)}.roster-btn.danger.on{border-color:var(--danger);background:var(--danger-soft);color:var(--danger)}.rs-chip.active{border-color:var(--primary-border);background:var(--primary-soft);color:var(--primary-light)}.close-desc{color:var(--text-body);font-size:var(--fs-label);line-height:1.7}.close-desc strong{color:var(--danger)}.sidebar-profile{padding:var(--s-4);border-bottom:1px solid var(--border);background:var(--bg-card)}.sidebar-profile-name{color:var(--text-main);font-weight:800;font-size:var(--fs-body)}.sidebar-profile-sub{color:var(--text-muted);font-size:var(--fs-caption);word-break:break-all;margin-top:2px}.sidebar-profile-regions{color:var(--primary-light);font-size:var(--fs-caption);align-items:center;gap:4px;margin-top:8px;font-weight:700;display:flex}
