.screen{min-height:var(--app-h);padding:calc(5px + var(--safe-top)) 20px 0;width:100%;max-width:var(--app-width);flex-direction:column;margin:0 auto;display:flex}.screen.with-nav{padding-bottom:calc(100px + var(--safe-bottom))}.topbar{justify-content:space-between;align-items:center;height:40px;display:flex}.topbar-back{align-items:center;gap:6px;min-height:44px;margin-left:-6px;padding-right:10px;font-size:17px;font-weight:600;display:flex}.wordmark{align-items:center;gap:8px;display:flex}.wordmark-text{font-family:var(--font-display);color:var(--red);font-size:26px;line-height:1}.wordmark-badge{font-family:var(--font-display);color:var(--bg);background:var(--text);border-radius:6px;padding:4px 6px 3px;font-size:12px;line-height:1}.avatar{background:var(--text);width:36px;height:36px;color:var(--bg);border-radius:999px;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.avatar.sm{background:var(--chip);width:28px;height:28px;color:var(--text);font-size:12px}.av2{letter-spacing:-.02em;white-space:nowrap;font-size:.8em}.title{font-family:var(--font-display);font-size:26px;line-height:1}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);padding:16px}.card.flush{padding:0 16px}.row{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;min-height:48px;font-size:15px;display:flex}.row:last-child{border-bottom:0}.row.tappable{text-align:left;width:100%}.chip{height:26px;color:var(--muted-2);background:var(--chip);white-space:nowrap;border-radius:999px;align-items:center;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.chip.urgent{color:var(--red-text);background:var(--red-tint)}.pill{background:var(--card);border:1px solid var(--line-2);height:38px;color:var(--muted-2);border-radius:999px;align-items:center;padding:0 14px;font-size:13px;font-weight:500;display:inline-flex}.pill.on{background:var(--text);border-color:var(--text);color:#fff;font-weight:600}.btn{border-radius:var(--r-btn);justify-content:center;align-items:center;gap:8px;width:100%;height:52px;padding:0 16px;font-size:16px;font-weight:600;transition:transform 80ms;display:inline-flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.55;cursor:default}.btn.primary{background:var(--red);color:#fff}.btn.outline{background:var(--card);border:1.5px solid var(--line-2);color:var(--text)}.btn.sm{height:44px;font-size:15px}.btn.send{font-size:14px}.btn.xs{border-radius:var(--r-sm);width:auto;height:40px;padding:0 14px;font-size:13px}.choice{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.choice-btn{border-radius:var(--r-btn);height:52px;font-family:var(--font-display);background:var(--card);border:1.5px solid var(--line-2);color:var(--muted);justify-content:center;align-items:center;gap:6px;font-size:20px;line-height:1;transition:transform 80ms;display:flex}.choice-btn:active{transform:scale(.98)}.choice-btn.eat{color:var(--red)}.choice-btn.eat.on{background:var(--red);border-color:var(--red);color:#fff}.choice-btn.skip.on{background:var(--text);border-color:var(--text);color:#fff}.choice.decided .choice-btn:not(.on){opacity:.45;border-color:var(--line-2);color:var(--muted)}.choice-btn:disabled{opacity:.6}.choice-status{align-items:center;gap:6px;min-height:20px;margin-top:10px;font-size:14px;font-weight:600;display:flex}.choice-status.eat{color:var(--red)}.choice-status.skip{color:var(--text)}.choice-status.none{color:var(--muted);font-weight:500}.meal-card.chose-eat{border-color:var(--red)}.meal-card.chose-skip{border-color:var(--text)}.label{color:var(--muted-2);font-size:13px;font-weight:600}.field{flex-direction:column;gap:6px;display:flex}.input,.textarea,.select{background:var(--card);border:1.5px solid var(--line-2);border-radius:var(--r-input);width:100%;height:48px;color:var(--text);appearance:none;outline:none;padding:0 14px;font-size:16px;transition:border-color .15s}.input:focus,.textarea:focus,.select:focus{border-color:var(--text)}.input::placeholder,.textarea::placeholder{color:var(--placeholder)}.textarea{resize:vertical;height:auto;min-height:120px;padding:12px 14px;line-height:23px}.select-wrap{position:relative}.select-wrap svg{pointer-events:none;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.muted{color:var(--muted)}.muted-2{color:var(--muted-2)}.error{color:var(--red-text);font-size:13px;line-height:20px}.notice{background:var(--chip);border-radius:var(--r-btn);color:var(--muted-2);padding:14px 16px;font-size:13px;line-height:20px}.link{color:var(--red-text);font-size:14px;font-weight:600}.link.quiet{color:var(--text);text-underline-offset:3px;text-decoration:underline}.week{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.week-day{flex-direction:column;align-items:center;gap:6px;display:flex}.week-day .wd{color:var(--muted);font-size:12px;line-height:14px}.week-day .num{width:36px;height:36px;color:var(--text);border-radius:999px;justify-content:center;align-items:center;font-size:15px;font-weight:600;display:flex}.week-day.past .num{color:var(--muted)}.week-day.today .wd{color:var(--text);font-weight:600}.week-day.today .num{background:var(--red);color:#fff;font-weight:700}.week-day.selected:not(.today) .num{box-shadow:inset 0 0 0 1.5px var(--text)}.week-day .dot{background:0 0;border-radius:999px;width:5px;height:5px}.week-day.checked .dot{background:var(--dot)}.week-day.today.checked .dot{background:var(--red)}.week-day.duty .wd{background:var(--chip);color:var(--text);border-radius:999px;margin:-2px 0;padding:2px 7px;font-weight:600}.week-legend{text-align:center;margin:8px 0 0;font-size:12px;line-height:16px}.duty-cal{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.duty-wd{text-align:center;color:var(--muted);font-size:12px;line-height:20px}.duty-wd.sun{color:var(--red-text)}.duty-day{min-height:52px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:0;display:flex}.duty-day .n{font-size:15px;font-weight:600;line-height:18px}.duty-day .t{color:var(--muted-2);font-size:11px;line-height:14px}.duty-day.red .n{color:var(--red-text)}.duty-day.past .n,.duty-day.past .t{opacity:.55}.duty-day.mine{background:var(--chip)}.duty-day.mine .t{color:var(--text);font-weight:600}.duty-day.today{box-shadow:inset 0 0 0 1.5px var(--text)}html[data-text=large] .duty-day .n{font-size:17px}html[data-text=large] .duty-day .t{font-size:12px}.duty-team{border-bottom:1px solid var(--line-soft);flex-direction:column;gap:3px;padding:12px 16px;display:flex}.duty-team:last-child{border-bottom:0}.duty-team .dt-team{color:var(--muted-2);font-size:13px;line-height:18px}.duty-team .dt-names{color:var(--text);font-size:15px;line-height:23px}html[data-text=large] .duty-team .dt-names{font-size:17px;line-height:26px}.meal-card{flex-direction:column;gap:10px;display:flex}.meal-title{font-family:var(--font-display);font-size:22px;line-height:1}.menu-lines{flex-direction:column;gap:2px;font-size:15px;line-height:21px;display:flex}.menu-lines .main{font-weight:600}.menu-lines .side{color:var(--text-2)}.empty-box,.locked-box{border-radius:var(--r-btn);background:var(--chip);align-items:center;gap:10px;min-height:52px;padding:11px 14px;display:flex}.locked-box{justify-content:space-between}.meta{color:var(--muted);justify-content:space-between;align-items:center;font-size:13px;display:flex}.meta-rate{color:var(--muted);margin:-6px 0 0;font-size:13px}.meta-rate b{color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.more-btn{color:var(--muted);align-items:center;display:inline-flex}.rate-line{flex-direction:column;gap:4px;display:flex}.rate-head{justify-content:space-between;align-items:center;display:flex}.rate-q{color:var(--text);font-size:15px;font-weight:600}.rate-skip{color:var(--muted-2);font-size:13px}html[data-text=large] .rate-q{font-size:17px}html[data-text=large] .rate-skip{font-size:15px}.fold-toggle{color:var(--muted-2);align-items:center;gap:3px;font-size:13px;font-weight:600;display:inline-flex;position:relative}html[data-text=large] .fold-toggle{font-size:15px}.fold-toggle:after{content:"";position:absolute;inset:-14px -8px}.fold-toggle svg{transition:transform .2s}.fold-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.about-p{color:var(--text-2);margin:0;font-size:16px;line-height:27px}.grain{background:var(--card);border:1px solid var(--line-2);pointer-events:none;z-index:5;border-radius:50%;animation:2.6s cubic-bezier(.35,.1,.6,1) forwards grain-fall;position:absolute;top:-24px}@keyframes grain-fall{0%{opacity:0;transform:translateY(0)}8%{opacity:1}85%{opacity:1}to{opacity:0;transform:translateY(94vh)}}.like-btn{min-height:40px;color:var(--muted);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:5px;margin-left:-6px;padding:0 8px 0 6px;font-size:13px;transition:color .12s,transform .12s;display:inline-flex}.like-btn.sm{font-size:12px}.like-btn.on{color:var(--red-text)}.like-btn:active{transform:scale(.92)}.feed-item{border-bottom:1px solid var(--line-soft);flex-direction:column;gap:4px;padding:14px 0;display:flex}.feed-item:last-child{border-bottom:0}.feed-head{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:15px;font-weight:600;line-height:22px;display:-webkit-box;overflow:hidden}.feed-excerpt{color:var(--text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:21px;display:-webkit-box;overflow:hidden}.feed-meta{color:var(--muted);align-items:center;gap:12px;font-size:13px;display:flex}.role-mark{vertical-align:-2px;color:var(--text);align-items:center;margin-right:3px;display:inline-flex}.champ-mark{vertical-align:-1px;margin-right:3px;line-height:1;display:inline-block}.pname{--ch:.892em;white-space:nowrap;flex-shrink:0;display:inline-block}.pname.w3{width:calc(3 * var(--ch))}.pname.split:first-letter{margin-right:var(--ch)}.bottom-nav{width:100%;max-width:var(--app-width);height:calc(64px + var(--safe-bottom));padding:8px 8px calc(4px + var(--safe-bottom));background:var(--card);border-top:1px solid var(--line);z-index:10;view-transition-name:bottom-nav;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav a{color:var(--nav-idle);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;font-size:11px;font-weight:500;text-decoration:none;transition:transform .12s,color .12s;display:flex}.bottom-nav a span{white-space:nowrap}.bottom-nav a:active{transform:scale(.92)}.bottom-nav a.active{color:var(--text);font-weight:600}.stat{flex-direction:column;gap:6px;display:flex}.stat .num{font-family:var(--font-display);align-items:baseline;gap:4px;display:flex}.stat .num b{font-size:44px;font-weight:400;line-height:1}.stat .num span{color:var(--muted);font-size:18px;line-height:1}.segment{background:var(--chip);border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));padding:3px;display:grid}.segment button{height:38px;color:var(--muted);border-radius:11px;font-size:14px;font-weight:500}.segment button.on{background:var(--card);border:1px solid var(--line);color:var(--text);font-weight:600}.segment.mini{border-radius:11px;padding:3px}.segment.mini button{border-radius:8px;height:34px;padding:0 12px;font-size:13px}.segment button{position:relative}.segment button:before{content:"";position:absolute;inset:-3px 0}.segment.mini button:before{inset:-5px 0}.toggle{background:var(--line-2);border-radius:999px;flex-shrink:0;width:46px;height:28px;transition:background .15s;position:relative}.toggle:before,button.muted:before,button.link:before,a.link:before,.like-btn:before,a.avatar:before{content:"";position:absolute;inset:-10px -8px}button.muted,button.link,a.link,.like-btn,a.avatar{position:relative}.toggle.on{background:var(--red)}.no-device .toggle.on{background:var(--muted)}.toggle:after{content:"";background:#fff;border-radius:999px;width:22px;height:22px;transition:left .15s;position:absolute;top:3px;left:3px}.toggle.on:after{left:21px}.steps{flex-direction:column;padding:4px 16px;display:flex}.step{border-bottom:1px solid var(--line-soft);align-items:center;gap:14px;height:64px;display:flex}.step:last-child{border-bottom:0}.step .n{background:var(--chip);width:32px;height:32px;font-family:var(--font-display);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:flex}.step .t{flex-grow:1;font-size:15px;font-weight:600}.stack{flex-direction:column;display:flex}.gap-4{gap:4px}.gap-6{gap:6px}.gap-8{gap:8px}.gap-10{gap:10px}.gap-12{gap:12px}.gap-14{gap:14px}.gap-16{gap:16px}.mt-4{margin-top:4px}.mt-6{margin-top:6px}.mt-8{margin-top:8px}.mt-10{margin-top:10px}.mt-12{margin-top:12px}.mt-14{margin-top:14px}.mt-16{margin-top:16px}.mt-18{margin-top:18px}.mt-20{margin-top:20px}.mt-24{margin-top:24px}.mt-28{margin-top:28px}.mt-36{margin-top:36px}.center-note{text-align:center;color:var(--muted-2);font-size:14px}.fade-in{animation:.22s fade-in}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}html[data-text=large] .screen{font-size:17px}html[data-text=large] .like-btn{font-size:16px}html[data-text=large] .row{min-height:54px;font-size:17px}html[data-text=large] .menu-lines{font-size:17px;line-height:25px}html[data-text=large] .meal-title{font-size:25px}html[data-text=large] .meta,html[data-text=large] .meta-rate{font-size:15px}html[data-text=large] .title{font-size:29px}html[data-text=large] .label{font-size:15px}html[data-text=large] .notice{font-size:15px;line-height:23px}html[data-text=large] .chip{height:28px;font-size:13px}html[data-text=large] .pill{height:38px;font-size:15px}html[data-text=large] .btn{height:56px;font-size:18px}html[data-text=large] .btn.sm{height:48px;font-size:17px}html[data-text=large] .btn.xs{height:38px;font-size:14px}html[data-text=large] .choice-btn{height:58px;font-size:23px}html[data-text=large] .choice-status{font-size:17px}html[data-text=large] .input,html[data-text=large] .textarea,html[data-text=large] .select{font-size:18px}html[data-text=large] .input,html[data-text=large] .select{height:52px}html[data-text=large] .week-day .wd{font-size:13px}html[data-text=large] .week-day .num{width:38px;height:38px;font-size:17px}html[data-text=large] .bottom-nav a{font-size:12px}html[data-text=large] .stat .num b{font-size:48px}html[data-text=large] .stat .stat-sub{font-size:14px;line-height:18px}html[data-text=large] .segment button{height:42px;font-size:15px}html[data-text=large] .topbar-back{font-size:18px}html[data-text=large] .center-note{font-size:15px}html[data-text=large] .error{font-size:14px}html[data-text=large] .small{font-size:15px}html[data-text=large] .segment.mini button{height:40px;font-size:14px}button,a,.bottom-nav,.week-day,.choice-btn,.segment,.toggle,.pill,.chip{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}img{-webkit-touch-callout:none}.btn,.choice-btn,.pill,.week-day,.row.tappable,.segment button,.toggle{transition:transform .12s cubic-bezier(.2,.8,.2,1),background-color .15s,border-color .15s,color .15s,opacity .15s}.btn:active,.choice-btn:active{transition-duration:60ms;transform:scale(.97)}.pill:active,.segment button:active{transform:scale(.95)}.week-day:active .num{transform:scale(.9)}.week-day .num{transition:transform .12s,background-color .15s,color .15s}.row.tappable:active,.card.flush a.row:active{background:var(--chip);margin:0 -16px;padding-left:16px;padding-right:16px}.card.stat,.topbar-back,.avatar,.sheet-close,.link,details.unchecked>summary{transition:transform .12s cubic-bezier(.2,.8,.2,1),opacity .12s,background-color .15s}.card.stat:active{transition-duration:60ms;transform:scale(.97)}.avatar:active{transition-duration:60ms;transform:scale(.92)}.topbar-back:active,.sheet-close:active,.link:active,details.unchecked>summary:active{opacity:.55;transition-duration:60ms}.choice-btn.on{animation:.22s cubic-bezier(.2,.8,.2,1) pop}@keyframes pop{0%{transform:scale(.96)}55%{transform:scale(1.03)}to{transform:scale(1)}}.overlay{z-index:20;touch-action:none;background:#2a262473;justify-content:center;align-items:flex-end;animation:.2s overlay-in;display:flex;position:fixed;inset:0}.sheet{background:var(--bg);width:100%;max-width:var(--app-width);max-height:calc(var(--app-h) * .88);overscroll-behavior:contain;touch-action:pan-y;padding:16px 20px calc(24px + var(--safe-bottom));border-radius:20px 20px 0 0;flex-direction:column;gap:12px;animation:.28s cubic-bezier(.2,.8,.2,1) sheet-up;display:flex;overflow-y:auto}.sheet-grab{background:var(--line-2);border-radius:2px;flex-shrink:0;width:36px;height:4px;margin:-4px auto 4px}.sheet-head{justify-content:space-between;align-items:center;display:flex}.sheet-title{font-size:17px;font-weight:600}.sheet-close{min-height:44px;color:var(--muted);align-items:center;margin:-8px 0;padding:0 0 0 16px;font-size:14px;font-weight:600;display:inline-flex}.small{font-size:13px}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-up{0%{opacity:.6;transform:translateY(24px)}to{opacity:1;transform:none}}.fixed-bar{width:100%;max-width:var(--app-width);background:var(--card);border-top:1px solid var(--line);padding:12px 20px calc(20px + var(--safe-bottom));z-index:10;gap:8px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.skeleton{background:var(--chip);border-radius:10px;animation:1.2s ease-in-out infinite skeleton-pulse}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.55}}::view-transition-old(root){animation-duration:.2s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}::view-transition-new(root){animation-duration:.2s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}::view-transition-group(root){animation-duration:0s}::view-transition-image-pair(root){animation-duration:0s}html[data-nav=push]::view-transition-old(root){animation-name:vt-out-left}html[data-nav=push]::view-transition-new(root){animation-name:vt-in-right}html[data-nav=pop]::view-transition-old(root){animation-name:vt-out-right}html[data-nav=pop]::view-transition-new(root){animation-name:vt-in-left}html[data-nav=none]::view-transition-old(root){animation:none}html[data-nav=none]::view-transition-new(root){animation:none}html[data-nav=none]::view-transition-group(bottom-nav){animation:none}html[data-nav=none]::view-transition-old(bottom-nav){animation:none}html[data-nav=none]::view-transition-new(bottom-nav){animation:none}::view-transition-group(bottom-nav){animation-duration:.18s}::view-transition-old(bottom-nav){animation-duration:.18s}::view-transition-new(bottom-nav){animation-duration:.18s}@keyframes vt-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes vt-out-left{0%{opacity:1;transform:translate(0)}to{opacity:.6;transform:translate(-28%)}}@keyframes vt-in-left{0%{opacity:.6;transform:translate(-28%)}to{opacity:1;transform:translate(0)}}@keyframes vt-out-right{0%{transform:translate(0)}to{transform:translate(100%)}}@supports (view-transition-name:root){html[data-vt="1"] .fade-in{animation:none}}.byline{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.byline .who{align-items:center;gap:8px;min-width:0;display:flex}.byline .who .avatar{flex-shrink:0}.byline .who .name{text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;max-width:62%;overflow:hidden}.byline .who .team{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.byline .when{flex-shrink:0}.post-body{color:var(--text-2);white-space:pre-wrap;margin:14px 0 0;font-size:15px;line-height:24px}.reply-body{white-space:pre-wrap;margin:6px 0 0;font-size:14px;line-height:21px}html[data-text=large] .post-body{font-size:18px;line-height:28px}html[data-text=large] .reply-body{font-size:17px;line-height:26px}html[data-text=large] .byline .name{font-size:16px}html[data-text=large]{--muted:#70665f}html[data-text=large] .btn.send{font-size:17px}.siktan{touch-action:none;-webkit-user-select:none;user-select:none;background:var(--bg);flex:1;min-height:0;position:relative;overflow:hidden}.siktan canvas{touch-action:none;-webkit-tap-highlight-color:transparent;width:100%;height:100%;display:block}.siktan-snd{border:1px solid var(--line);width:44px;height:44px;color:var(--muted);touch-action:manipulation;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffb8;border-radius:14px;place-items:center;font-size:19px;line-height:1;display:grid;position:absolute;top:10px;left:10px}.siktan-snd:active{transform:scale(.94)}.game-screen{height:var(--app-h);min-height:0;padding:calc(10px + var(--safe-top)) 0 calc(64px + var(--safe-bottom));overflow:hidden}.game-screen,.game-screen *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.game-head{justify-content:space-between;align-items:baseline;padding:0 20px 6px;display:flex}.game-head h1{font-family:var(--font-display);margin:0;font-size:26px;font-weight:400;line-height:1.2}.game-head .rank-pill{color:var(--muted);font-size:13px}.game-head .rank-pill b{color:var(--red-text);font-weight:600}.siktan-rank{border:1px solid var(--line);touch-action:pan-y;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff0;border-radius:18px;max-height:44%;padding:12px 14px;position:absolute;bottom:12px;left:12px;right:12px;overflow-y:auto}.siktan-rank h2{justify-content:space-between;align-items:baseline;margin:0 0 6px;font-size:14px;font-weight:600;display:flex}.siktan-rank h2 small{color:var(--muted);font-size:12px;font-weight:400}.siktan-rank .nudge{background:var(--red-tint);color:var(--red-text);border-radius:12px;margin:0 0 8px;padding:8px 10px;font-size:13px;text-decoration:none;display:block}.siktan-rank ol{margin:0;padding:0;list-style:none}.siktan-rank li{border-top:1px solid var(--line-soft);grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;padding:5px 0;font-size:14px;line-height:22px;display:grid}.siktan-rank ol.has-marks li{grid-template-columns:24px 22px minmax(0,1fr) auto}.siktan-rank li .mark{display:none}.siktan-rank ol.has-marks li .mark{justify-content:center;align-items:center;height:22px;display:inline-flex}.siktan-rank li .mark .champ-mark{vertical-align:0;margin-right:0}.siktan-rank li:first-child{border-top:0}.siktan-rank li .no{color:var(--muted);font-variant-numeric:tabular-nums}.siktan-rank li .who{white-space:nowrap;align-items:baseline;gap:8px;min-width:0;display:flex;overflow:hidden}.siktan-rank li .who .pname:not(.w3){text-overflow:ellipsis;flex-shrink:1;min-width:0;overflow:hidden}.siktan-rank li .who small{color:var(--muted);text-overflow:ellipsis;font-size:12px;overflow:hidden}.siktan-rank li .n{font-variant-numeric:tabular-nums}.siktan-rank li.me{color:var(--red-text);font-weight:600}.siktan-rank .empty{color:var(--muted);margin:4px 0 0;font-size:13px}html[data-text=large] .siktan-rank li{font-size:16px}html[data-text=large] .siktan-rank .nudge{font-size:15px}.siktan-rank .champ-line{background:var(--chip);color:var(--text-2);border-radius:12px;margin:0 0 8px;padding:8px 10px;font-size:13px}.siktan-rank .champ-line b{color:var(--text);font-weight:600}.siktan-rank .champ-line small{color:var(--muted);margin-top:3px;font-size:12px;display:block}.siktan-rank .champ-line .champ-title{line-height:22px;display:block}.siktan-rank .champ-line .champ-row{flex-wrap:wrap;align-items:center;gap:2px 14px;line-height:22px;display:flex}.siktan-rank .champ-line .podium{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.unchecked{border-top:1px solid var(--line-soft);margin-top:10px;padding-top:8px}.unchecked summary{cursor:pointer;color:var(--muted-2);align-items:center;gap:6px;min-height:32px;font-size:13px;list-style:none;display:flex}.unchecked summary::-webkit-details-marker{display:none}.unchecked summary:after{content:"▾";color:var(--muted);margin-left:auto}.unchecked[open] summary:after{content:"▴"}.unchecked summary b{color:var(--text);font-weight:600}.unchecked-list{grid-template-columns:max-content minmax(0,1fr);align-items:baseline;gap:4px 12px;display:grid}.unchecked-list p{color:var(--text-2);margin:0;font-size:13px;line-height:20px;display:contents}.unchecked-list .names{flex-wrap:wrap;gap:2px 1.5em;min-width:0;display:flex}.unchecked-list .team{color:var(--muted);font-size:12px;line-height:20px}.week-nav{background:var(--card);border:1px solid var(--line-2);width:38px;height:38px;color:var(--text);border-radius:10px;place-items:center;display:grid}.stats-wrap{overflow-x:auto}.stats-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:13px}.stats-table th,.stats-table td{text-align:right;border-top:1px solid var(--line-soft);white-space:nowrap;padding:7px 8px}.stats-table th:first-child,.stats-table td:first-child{text-align:left;padding-left:16px}.stats-table th:last-child,.stats-table td:last-child{padding-right:16px}.stats-table thead th{color:var(--muted-2);border-top:0;font-size:12px;font-weight:600}.stats-table tr.weekend td{color:var(--muted)}.stats-table td.warn{color:var(--red-text)}.stats-table tfoot td{border-top:2px solid var(--line-2);font-weight:600}html[data-text=large] .stats-table,html[data-text=large] .unchecked summary,html[data-text=large] .unchecked-list p{font-size:15px}.teams-total td:first-child .muted{font-size:12px}.teams-dept{padding:0}.teams-dept>summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 8px;min-height:48px;padding:12px 16px;list-style:none;display:grid}.teams-dept>summary::-webkit-details-marker{display:none}.teams-dept .dept-name{min-width:0;font-size:15px;font-weight:600}.teams-dept .dept-size{color:var(--muted);align-items:center;gap:4px;font-size:13px;display:inline-flex}.teams-dept .dept-size svg{transition:transform .15s}.teams-dept[open] .dept-size svg{transform:rotate(180deg)}.teams-dept .dept-line{color:var(--muted-2);grid-column:1/-1;font-size:13px;line-height:18px}.teams-rows{--pick-w:64px;border-top:1px solid var(--line-soft);padding:0 16px 4px}.teams-row{grid-template-columns:minmax(0, 1fr) repeat(var(--meals,2), var(--pick-w));border-bottom:1px solid var(--line-soft);align-items:center;column-gap:8px;min-height:40px;font-size:14px;display:grid}.teams-row:last-child{border-bottom:0}.teams-row.head{min-height:30px;color:var(--muted-2);font-size:12px;font-weight:600}.teams-row .who{flex-wrap:wrap;align-items:baseline;column-gap:6px;min-width:0;display:flex}.teams-row .name{font-weight:500}.teams-tag{color:var(--muted);font-size:12px}.teams-row .pick.eat{color:var(--red-text);font-weight:600}.teams-row .pick.skip{color:var(--text);font-weight:600}.teams-row .pick.none{color:var(--muted)}.teams-row .pick.state{grid-column:2/-1}.teams-row[data-state=unregistered] .name,.teams-row[data-state=inactive] .name{color:var(--muted)}.teams-off>summary{min-height:40px;color:var(--muted-2);cursor:pointer;align-items:center;gap:4px;font-size:13px;list-style:none;display:flex}.teams-off>summary::-webkit-details-marker{display:none}.teams-off>summary svg{transition:transform .2s}.teams-off[open]>summary svg{transform:rotate(180deg)}.teams-off[open]>summary{border-bottom:1px solid var(--line-soft)}.teams-row[data-duty=off] .name{color:var(--muted)}html[data-text=large] .teams-rows{--pick-w:74px}html[data-text=large] .teams-row{font-size:16px}html[data-text=large] .teams-dept .dept-name{font-size:17px}html[data-text=large] .teams-dept .dept-line,html[data-text=large] .teams-row.head{font-size:14px}.day-swipe{touch-action:pan-y pinch-zoom}.day-viewport{overflow-x:clip}.day-track{will-change:transform;position:relative}.day-pane{display:flow-root}.day-pane.side{pointer-events:none;filter:blur(8px);opacity:.55;width:100%;transition:filter .28s cubic-bezier(.32,.72,0,1),opacity .28s cubic-bezier(.32,.72,0,1);position:absolute;top:0;left:0}.day-track.commit .day-pane.side{filter:blur();opacity:1}.day-pane.side.next{transform:translate(100%)}.day-pane.side.prev{transform:translate(-100%)}.day-pane.from-right{animation:.28s cubic-bezier(.32,.72,0,1) day-from-right}.day-pane.from-left{animation:.28s cubic-bezier(.32,.72,0,1) day-from-left}@keyframes day-from-right{0%{opacity:.2;transform:translate(48px)}60%{opacity:1}to{opacity:1;transform:none}}@keyframes day-from-left{0%{opacity:.2;transform:translate(-48px)}60%{opacity:1}to{opacity:1;transform:none}}.ptr{pointer-events:none;flex:none;height:0;transition:height .28s cubic-bezier(.32,.72,0,1);position:relative}.ptr[data-state=hold],.ptr[data-state=done]{height:52px}.ptr-ind{opacity:0;width:24px;height:24px;margin-left:-12px;transition:opacity .15s;position:absolute;bottom:14px;left:50%}.ptr[data-state] .ptr-ind{opacity:1}.ptr[data-state=done] .ptr-ind{opacity:0}.ptr-ind svg{width:24px;height:24px;display:block}.ptr-ind line{stroke:var(--muted);stroke-width:2.2px;stroke-linecap:round;opacity:clamp(0, calc(var(--p,0) * 12 - var(--i)), 1)}.ptr[data-state=arm] .ptr-ind,.ptr[data-state=hold] .ptr-ind{animation:1s steps(12,end) infinite ptr-spin}.ptr[data-state=arm] .ptr-ind line,.ptr[data-state=hold] .ptr-ind line{opacity:calc(.2 + .8 * var(--i) / 11)}@keyframes ptr-spin{to{transform:rotate(360deg)}}:root{--bg:#fff8f1;--card:#fff;--line:#f0e6de;--line-2:#e4d8ce;--line-soft:#f5ede6;--text:#2a2624;--text-2:#5c534e;--muted:#7a6f67;--muted-2:#6e625b;--placeholder:#b8aca4;--nav-idle:#7a6f67;--red:#da3822;--red-dark:#c0301c;--red-tint:#fdebe6;--red-text:#b8301c;--chip:#f4ede6;--dot:#d9cec5;--r-card:20px;--r-btn:16px;--r-input:14px;--r-sm:12px;--font-body:"IBM Plex Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;--font-display:"Jua", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;word-break:keep-all;overflow-wrap:break-word;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{touch-action:manipulation;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior:contain none;overscroll-behavior-x:none;scroll-behavior:smooth}body{min-height:var(--app-h)}:root{--app-width:480px;--app-h:100dvh}@media (width>=760px) and (height>=700px){:root{--app-width:390px;--app-h:800px}body{background:#efe6dd}#root{background:var(--bg);border:10px solid #2a2624;border-radius:44px;width:390px;height:800px;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 30px 80px #2a262447}.app-scroll{overscroll-behavior:contain;scrollbar-width:none;height:100%;overflow:hidden auto}.app-scroll::-webkit-scrollbar{display:none}}#root{min-height:var(--app-h)}a{color:var(--red)}a:hover{color:var(--red-dark)}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}svg{flex-shrink:0;display:block}.display{font-family:var(--font-display);font-weight:400}
