:root{--plate:#0c101d;--plate-raised:#151a28;--plate-high:#1d2434;--hairline:#bdc7db1a;--hairline-strong:#bdc7db33;--text:#eef2f6;--text-soft:#a0abba;--text-faint:#657186;--led:#ffa929;--led-glow:#ffa92947;--done:#43db94;--done-soft:#43db9424;--warn:#f3685e;--warn-soft:#f3685e24;--recycle:#6ac1e7;--recycle-soft:#6ac1e726;--focus:#52a3ff;--font-display:"IBM Plex Sans KR", system-ui, sans-serif;--font-serif:"Noto Serif KR", serif;--font-body:"IBM Plex Sans KR", system-ui, sans-serif;--font-num:"IBM Plex Mono", ui-monospace, monospace;--font-led:"DotGothic16", ui-monospace, monospace;--gutter:20px;--radius:18px;--radius-sm:12px;--ease:cubic-bezier(.22, 1, .36, 1);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--plate)}body{background:radial-gradient(120% 60% at 50% -10%, #151d32 0%, var(--plate) 60%) fixed;color:var(--text);font:400 16px/1.55 var(--font-body);word-break:keep-all;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;margin:0}h1,h2,h3,p,ol,ul,figure{margin:0}ol,ul{padding:0;list-style:none}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:8px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}:root{--shadow-1:0 1px 2px #04071040, 0 8px 24px -16px #04071099;--shadow-2:0 2px 4px #0407104d, 0 24px 48px -24px #040710cc;--glow-led:0 0 0 1px #ffa9298c, 0 6px 18px -8px #ffa92980;--radius-lg:24px;--dur:.32s}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.rise{animation:rise-in var(--dur) var(--ease) both}.num{font-family:var(--font-num);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:600;line-height:1}.rise:nth-child(2){animation-delay:50ms}.rise:nth-child(3){animation-delay:.1s}.rise:nth-child(4){animation-delay:.15s}.rise:nth-child(5){animation-delay:.2s}button,a,.bcard,.door,.row{transition:transform .12s var(--ease), background-color .2s var(--ease), box-shadow .2s var(--ease), opacity .2s var(--ease)}.empty-ill{text-align:center;padding:44px var(--gutter) 36px;justify-items:center;gap:6px;display:grid}.empty-ill svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;opacity:.55;width:132px;height:124px;animation:rise-in .5s var(--ease) both;margin-bottom:10px}.empty-ill .ill-dash{stroke-dasharray:4 5;opacity:.7}.empty-ill .ill-plate{fill:#0c101d59}.empty-ill .ill-led{stroke:#ffa929;opacity:.35}.empty-ill .ill-amber{stroke:#ffa929;fill:#ffa92940}.empty-ill__title{font-size:17px;font-weight:600}.empty-ill__lead{opacity:.7;max-width:300px;font-size:14px}.empty-ill>.cta,.empty-ill>button{margin-top:14px}.zoom{aspect-ratio:4/3;touch-action:none;-webkit-user-select:none;user-select:none;cursor:zoom-in;background:#0c101d;border-radius:16px;width:100%;position:relative;overflow:hidden}.zoom.is-zoomed{cursor:grab}.zoom img{object-fit:contain;transform-origin:50%;will-change:transform;pointer-events:none;width:100%;height:100%;transition:transform 80ms linear;display:block}.zoom__reset{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0000008c;border-radius:999px;min-height:34px;padding:0 12px;font-size:13px;font-weight:600;position:absolute;bottom:10px;right:10px}:root{--font-body:-apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--font-display:var(--font-body);--font-serif:var(--font-body);--font-num:var(--font-body);--font-led:var(--font-body);--plate:#14251e;--plate-raised:#1d3329;--plate-high:#294538;--text:#f4f5ec;--text-soft:#c0d0c4;--text-faint:#a7baad;--hairline:#334c3f;--hairline-strong:#53705c;--led:#d8e8bb;--led-glow:transparent;--done:#b7dbab;--done-soft:#2a4835;--warn:#ffa89c;--warn-soft:#4a2e2a;--recycle:#b9d9cf;--recycle-soft:#2c4943;--focus:#c18a63;--radius:16px;--radius-lg:20px;--shadow-1:none;--shadow-2:none;--glow-led:inset 0 0 0 1px var(--led)}html{background:#f7f7f2}body{font-family:var(--font-body);background:#f7f7f2}button,a,input,summary{touch-action:manipulation}button:disabled{cursor:default}input,textarea,select{font-family:var(--font-body)}body .app{--hall:#f7f7f2;--hall-deep:#f0f1e9;--door:#fff;--ink:#263d34;--ink-soft:#596d60;--ink-faint:#65786b;--rule:#d5ddd2;--ok:#345d42;--ok-soft:#e9f0e3;--bad:#a23832;--bad-soft:#fff0eb;--recycle:#386859;--recycle-soft:#e6efe7;--shadow-card:none;--shadow-hero:none;background:var(--hall);color:var(--ink);padding-bottom:calc(104px + var(--safe-bottom))}body .app__inner{max-width:560px;padding:calc(26px + var(--safe-top)) 24px 0}body .app .top{border-bottom:1px solid var(--rule);align-items:center;margin-bottom:28px;padding-bottom:22px}body .app .top__home{font-size:12px;font-weight:400}body .app .top__home strong{letter-spacing:-.045em;margin-bottom:4px;font-size:19px;display:block}body .app .tag{background:var(--hall-deep);white-space:nowrap;padding:5px 9px;font-size:10px}body .app h1.page,body .app .join h1{letter-spacing:-.055em;font-size:32px;font-weight:600;line-height:1.3}body .app h1.page{margin-bottom:24px}body .app .page-intro{color:var(--ink-soft);margin:-12px 0 24px;font-size:14px;line-height:1.7}body .app .eyebrow{letter-spacing:.09em;color:var(--ink-soft);margin-bottom:10px;font-size:11px}body .app h2.block{letter-spacing:-.02em;color:var(--ink);margin:30px 0 12px;font-size:14px;font-weight:600}body .app .card,body .app .plan,body .app .guide,body .app .kpi,body .app .linkrow,body .app .log{border:1px solid var(--rule);box-shadow:none;background:#fff;border-radius:12px}body .app .card{padding:22px}body .app .guide{padding:0}body .app .row{box-shadow:none;border-radius:10px;padding:18px 14px}body .app .rows{background:var(--rule);border:1px solid var(--rule);border-radius:12px;gap:1px;overflow:hidden}body .app .row.is-off{background:var(--hall);border:0}body .app .row.is-today .row__date b{color:var(--ok)}body .app .row__end,body .app .kv dd{overflow-wrap:anywhere}body .app .tonight{box-shadow:none;background:#284d3c;border-radius:6px 32px 6px 6px;padding:26px 24px}body .app .tonight .led{color:#f4f5e9;text-shadow:none;font-size:42px;font-weight:500}body .app .tonight .led.is-miss{color:#ffd2c6}body .app .tonight .led .icon{stroke-width:1.2px;width:42px;height:42px}body .app .tonight__state,body .app .tonight__msg,body .app .tonight__unit{color:#d8e2d6}body .app .tonight__state strong{color:#fff;font-size:16px}body .app .tonight__msg{margin-top:18px;font-size:14px;line-height:1.8}body .app .tonight .chip{color:#f0f3e8;background:#3b5e4d;border:0}body .app .tonight .pill{border-radius:8px;min-height:52px;font-size:14px}body .app .tonight .pill--solid{color:#263d34;box-shadow:none;background:#f0f3e7}body .app .tonight .pill--line{color:#fff;border-color:#839f8b}body .app .tonight__row{flex-wrap:wrap}body .app .quota__slots i{background:#46684b;width:20px;height:6px}body .app .quota__slots i.is-used{background:0 0}body .app .quota__slots i.is-over{background:var(--bad)}body .app .day{box-shadow:none;background:0 0;border-radius:8px}body .app .day.is-today{background:var(--ink);box-shadow:none;color:#fff;border-color:#0000}body .app .day.is-today b{color:#fff}body .app .day.is-today i{background:#d8e8bb}body .app .cta{min-height:54px;box-shadow:none;border-width:1px;border-radius:8px;font-size:15px}body .app .cta--solid{color:#fff;background:#284d3c;border-color:#284d3c}body .app .cta--line{border-color:var(--rule);background:0 0}body .app .cta--danger{border-color:var(--bad);color:var(--bad)}body .app .cta--text{min-height:44px;color:var(--ink-soft);background:0 0;border:0;font-size:13px}body .app .field input,body .app .bigfield input{border:1px solid var(--rule);letter-spacing:0;border-radius:8px;min-height:56px;font-size:20px;font-weight:500}body .app input:focus-visible{outline-offset:3px;outline:2px solid #98613f}body .app .agree input,body .app .switch input{min-height:20px}body .app .notice{background:var(--hall-deep);border-radius:8px;font-size:13px;line-height:1.75}body .app .sheet{background:var(--hall);border-radius:24px 24px 0 0;box-shadow:0 -12px 60px #13261d26}body .app .sheet .stack{gap:10px}body .app .tabs{background:var(--hall);padding:8px 20px calc(12px + var(--safe-bottom));border-top:1px solid var(--rule)}body .app .tabs nav{max-width:520px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-radius:0;gap:4px;padding:0}body .app .tabs a{min-height:58px;color:var(--ink-soft);border-radius:8px;padding:10px 0;font-size:11px}body .app .tabs a.active{color:var(--ink);background:#e8eddf}body .app .tabs a.active .icon{stroke-width:2.3px}body .app .join__head{min-height:44px;margin-bottom:30px}body .app .join__step{color:var(--ink-soft);box-shadow:none;text-shadow:none;white-space:nowrap;background:0 0;padding:0;font-size:13px}body .app .join-progress{background:var(--rule);border-radius:2px;height:3px;margin:-10px 0 32px;overflow:hidden}body .app .join-progress span{background:var(--ink);height:100%;display:block}body .app .join .sub{color:var(--ink-soft);margin-top:12px;font-size:14px;line-height:1.8}body .app .join .foot{gap:10px}body .app #join-step-building,body .app #join-step-plan{padding-bottom:120px}body .app #join-step-building>.foot,body .app #join-step-plan>.foot{z-index:8;max-width:560px;padding:16px 24px calc(16px + var(--safe-bottom));background:var(--hall);border-top:1px solid var(--rule);margin:0 auto;position:fixed;bottom:0;left:0;right:0}body .app .tiles{gap:8px}body .app .tile-b{border:1px solid var(--rule);border-radius:8px;min-height:78px}body .app .tile-b:before{background:#e9eee3}body .app .tile-b[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:#e9eee3}body .app .plan{grid-template-columns:1fr auto;gap:10px;padding:20px}body .app .plan[aria-pressed=true]{background:#edf2e7;border-color:#284d3c;box-shadow:inset 0 0 0 1px #284d3c}body .app .plan__name{font-size:15px}body .app .plan__price{font-variant-numeric:tabular-nums;font-size:24px}body .app .plan__desc{font-size:12px;line-height:1.8}body .app .plans{gap:12px}body .app .price-line,body .app .receipt{border:1px solid var(--rule);box-shadow:none;background:#fff;border-radius:8px}body .app .bigplate{background:#284d3c;border-radius:6px 28px 6px 6px}body .app .bigplate .led{color:#f4f5e9}body .app .entry-photo{object-fit:cover;object-position:70% 70%;border-radius:4px 38px 4px 4px;width:100%;height:210px;margin:0 0 28px;display:block}body .app #entry h1{font-size:34px}body .app .entry-note{color:var(--ink-soft);margin-top:20px;font-size:12px;line-height:1.8}body .app .entry-home{text-underline-offset:4px;align-items:center;min-height:44px;font-size:12px;text-decoration:underline;display:inline-flex}body .app .kpi{padding:22px}body .app .kpi b{letter-spacing:-.04em;font-size:30px;font-weight:500}body .app .kpi span{font-size:12px}body .app .doorchip{border-radius:8px}body .app .doorchip b{color:var(--ink);background:#e5ebdc;border-radius:6px}body .app .doorchip.is-done b{background:var(--ok);color:#fff}body .app .doorchip.is-bad b{background:var(--bad);color:#fff}body .app .mini,body .app .opt{border-radius:8px;min-height:44px}body .app .empty-ill .ill-amber,body .app .empty-ill .ill-led{stroke:#587747;fill:#e5ebdc}body .app .empty-ill .ill-plate{fill:#e9eee3}.loading-state,.mfa-panel{color:#263d34;background:#f7f7f2;flex-direction:column;gap:20px;max-width:560px;min-height:100dvh;margin:0 auto;padding:40px 24px;display:flex}.mfa-panel input{border:1px solid #9eafa3;border-radius:8px;width:100%;min-height:56px;padding:12px;font-size:24px}.mfa-panel button{color:#fff;background:#284d3c;border-radius:8px;min-height:52px;padding:12px 20px}.mfa-secret{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.kpis{overflow-wrap:anywhere}:is(body:has(.work),html:has(.work)){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#14251e}body .work{background:var(--plate);max-width:560px}body .work .bar{background:var(--plate);border-bottom:1px solid var(--hairline);margin-bottom:22px}body .work .bar__title{color:var(--text);flex-wrap:wrap;font-size:14px}body .work .work-heading{padding:0 var(--gutter) 20px}body .work .work-heading p{letter-spacing:.08em;color:var(--text-soft);margin-bottom:6px;font-size:11px}body .work .work-heading h1{letter-spacing:-.05em;font-size:30px;font-weight:500}body .work .hero__plate{border:1px solid var(--hairline-strong);box-shadow:none;background:#213c2e;border-radius:6px 28px 6px 6px;padding:24px}body .work .hero__count{color:var(--text);text-shadow:none;font-size:66px;font-weight:500}body .work .hero__pay{border-color:var(--hairline-strong)}body .work .hero__pay strong{color:var(--led)}body .work .bcard,body .work .next{background:var(--plate-raised);border:1px solid var(--hairline);box-shadow:none;border-radius:12px}body .work .bcard.is-next{background:#274333;border-color:#97b187}body .work .next--head{border-radius:0 0 20px 20px;margin-top:-22px}body .work .fbtn b{background:var(--plate);box-shadow:inset 0 0 0 1px var(--hairline-strong);border-radius:10px;font-weight:500}body .work .fbtn.is-next b{background:var(--led);color:#21351e;text-shadow:none;box-shadow:none}body .work .fbtn.is-done b{background:var(--done-soft);color:var(--done)}body .work .fbtn.is-miss b{background:var(--warn-soft);color:var(--warn)}body .work .bcard__go,body .work .shoot,body .work .btn--primary{background:var(--led);color:#21351e;box-shadow:none;border-radius:10px}body .work .bgroup .bcard{border-radius:12px 12px 0 0}body .work .bgroup .bcard__go{border-radius:0 0 12px 12px;min-height:64px}body .work .led{text-shadow:none}body .work .door.is-current .door__floor{box-shadow:inset 0 0 0 1px var(--led)}body .work .door.is-current .door__body{border-color:var(--led)}body .work .door__body{border-radius:10px}body .work .actionbar{background:var(--plate);border-top:1px solid var(--hairline)}body .work .actionbar__inner{max-width:520px}body .work .shoot{min-height:72px}body .work .sheet{background:var(--plate-raised);border-radius:24px 24px 0 0;box-shadow:0 -20px 60px #09170f66}body .work .shift-controls{margin:0 var(--gutter) 24px;grid-template-columns:1fr 1fr;gap:10px;display:grid}body .work .shift-controls .btn{min-height:60px;font-size:14px}body .work .btn,body .work .reasons .btn{border-radius:10px;min-height:56px}body .work .swipe__under--right{background:var(--led);color:#21351e}body .work .swipe__under--left{background:var(--warn-soft);color:var(--warn)}@media (width>=960px){body .app.admin .app__inner{max-width:none;padding:44px 40px 0 280px}body .app.admin .top{margin-bottom:28px;display:flex}body .app.admin .tabs{background:#edf0e6;border-top:0;width:236px;padding:30px 18px}body .app.admin .tabs nav{gap:6px;display:grid}body .app.admin .tabs a{min-height:46px;padding:12px;font-size:14px}body .app.admin .tabs a.active{color:#fff;background:#284d3c}body .app.admin .side__brand{letter-spacing:-.05em;margin-bottom:36px;font-size:24px}body .app.admin .side__brand small{margin-top:8px;font-size:11px;font-weight:400}body .app.admin .side h3{color:#596d60;margin-top:28px}body .app.admin .sheet{border-radius:20px}}@media (width<=380px){body .app__inner{padding-left:18px;padding-right:18px}body .app .plan{grid-template-columns:1fr}body .app .plan__price{font-size:22px}body .app .tonight{padding:22px 18px}body .app .tonight .led{font-size:36px}body .app .quota__slots{gap:4px}body .app .quota__slots i{width:15px}body .work .bar{gap:6px}body .work .sync{padding:6px;font-size:11px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
