@font-face{font-family:Caveat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/da4b870ab52b3094-s.2uxt0u9yugpfw.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/86d70b7c76b6ec6e-s.2zeei6axiu3qn.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/11cc37d7380d16b4-s.27211fhlic14m.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/a85fe84266768609-s.p.00hx3ibfyf9qx.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Caveat;font-style:normal;font-weight:700;font-display:swap;src:url(../media/da4b870ab52b3094-s.2uxt0u9yugpfw.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat;font-style:normal;font-weight:700;font-display:swap;src:url(../media/86d70b7c76b6ec6e-s.2zeei6axiu3qn.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-weight:700;font-display:swap;src:url(../media/11cc37d7380d16b4-s.27211fhlic14m.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat;font-style:normal;font-weight:700;font-display:swap;src:url(../media/a85fe84266768609-s.p.00hx3ibfyf9qx.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Caveat Fallback;src:local(Arial);ascent-override:124.77%;descent-override:38.99%;line-gap-override:0.0%;size-adjust:76.94%}.caveat_6d719ccb-module__bJYSoq__className{font-family:Caveat,Caveat Fallback;font-style:normal}.caveat_6d719ccb-module__bJYSoq__variable{--font-caveat:"Caveat", "Caveat Fallback"}
:root{--bg:#f1ece3;--panel:#faf6ee;--line:#e2d9cb;--text:#2a2320;--muted:#8a7f72;--accent:#e8452c;--accent-soft:#fae3dc;--accent-foreground:#fff;--photo-bg:#e6ded0;--cardw:min(100%, 440px, 62vh);--iconbtn:clamp(42px, 7vh, 54px);--shutter:clamp(56px, 9.5vh, 74px);--pending:#f8cfc4;--cell:#ebe4d7;--cell-text:#b3a795}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;margin:0}html{height:100dvh}body{background:var(--bg);color:var(--text);height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);overscroll-behavior:none;flex-direction:column;font:15px/1.4 -apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Pretendard,system-ui,sans-serif;display:flex;overflow:hidden}header{width:100%;max-width:var(--cardw);flex-direction:column;flex:none;justify-content:center;align-items:center;gap:2px;margin:0 auto;padding:12px 16px;display:flex;position:relative}header h1{color:var(--accent);font-family:var(--font-caveat),"Caveat","Bradley Hand","Segoe Script",cursive;text-transform:uppercase;letter-spacing:2px;align-items:center;gap:.05em;margin:0;font-size:clamp(24px,6.5vh,34px);font-weight:700;line-height:1;display:flex}header h1 .mark{flex:none;width:1.6em;height:1.6em;margin-top:-.15em}main{width:100%;min-height:0;max-width:var(--cardw);flex:auto;justify-content:center;align-items:center;margin:0 auto;padding:0 16px 16px;display:flex}footer{width:100%;max-width:var(--cardw);flex-direction:column;flex:none;gap:10px;margin:0 auto;padding:0 16px 20px;display:flex}.card{aspect-ratio:4/5;background:var(--panel);border:1px solid var(--line);border-radius:18px;width:100%;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 6px 24px #2a232012;container-type:inline-size}.card .shot{background:var(--photo-bg);position:absolute;inset:0 0 24%;overflow:hidden}.card video,.card img.photo{object-fit:cover;width:100%;height:100%;display:block}.card video{transform:scaleX(var(--mirror,1))}.card .empty{color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:20px 24px 12cqw;font-size:13px;line-height:1.5;display:flex;position:absolute;inset:0 0 24%}.card .empty strong{color:var(--text);font-size:15px}.card .empty .allow{border-radius:999px;flex:none;margin-top:4px;padding:12px 20px}.card .empty .sub{color:var(--cell-text);font-size:12px}.camtip{z-index:1;cursor:pointer;color:#fff;font:inherit;background:#0000008c;border:0;border-radius:12px;padding:8px 12px;font-size:12px;line-height:1.45;position:absolute;top:14cqw;left:4cqw;right:4cqw}.card .empty .spinner{width:30px;height:30px}.card .result{z-index:2;object-fit:contain;background:var(--panel);width:100%;height:100%;display:block;position:absolute;inset:0}.titlebar{z-index:1;cursor:text;color:#fff;align-items:center;gap:2.04cqw;padding:4.07cqw 4.07cqw 0;display:flex;position:absolute;top:0;left:0;right:0}.titlebar .ticon{filter:drop-shadow(0 .2cqw .6cqw #00000073);flex:none;width:6.67cqw;height:6.67cqw;display:flex}.titlebar .ticon svg{width:100%;height:100%}.titlebar input{appearance:none;color:#fff;text-shadow:0 .2cqw .8cqw #00000080;caret-color:#fff;text-overflow:ellipsis;background:0 0;border:0;border-radius:0;outline:0;flex:1;min-width:0;margin:0;padding:0;font-family:inherit;font-size:6.67cqw;font-weight:800;line-height:1.1}.titlebar input::placeholder{color:#fffc}.titlebar .tedit{opacity:.85;filter:drop-shadow(0 .2cqw .6cqw #00000073);flex:none;width:4.4cqw;height:4.4cqw;transition:opacity .15s}.titlebar:focus-within .tedit{opacity:0}.cats{scrollbar-width:none;width:100%;max-width:var(--cardw);flex:none;gap:10px;min-height:60px;margin:0 auto;padding:14px 16px 10px;display:flex;overflow-x:auto}.cats::-webkit-scrollbar{display:none}.cats>:first-child{margin-left:auto}.cats>:last-child{margin-right:auto}.cat{cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background:0 0;border:0;flex:none;padding:0}.cat .ic{background:var(--accent-soft);width:36px;height:36px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex;position:relative}.cat .ic svg{width:18px;height:18px}.cat[aria-pressed=true] .ic{background:var(--accent);color:var(--accent-foreground)}.cat:active .ic{transform:scale(.94)}.cat:focus-visible{outline:none}.cat:focus-visible .ic{outline:2px solid var(--accent);outline-offset:2px}.cat .done{background:var(--accent-foreground);width:15px;height:15px;color:var(--accent);border:1.5px solid var(--accent);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-3px;right:-3px}.cat .done svg{width:9px;height:9px}.cat.add .ic{border:1.5px dashed var(--accent);background:0 0}.sheet-backdrop{z-index:40;background:#2a232052;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--panel);width:100%;max-width:440px;max-height:88dvh;padding:18px 18px calc(18px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;overflow:auto;box-shadow:0 -8px 30px #2a23201f}.sheet-body{flex-direction:column;gap:16px;display:flex}.sheet h2{margin:0;font-size:16px;font-weight:800}.sheet-note{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.sheet-note.warn{color:var(--accent)}.sheet .namefield{border:0;border-bottom:1.5px solid var(--line);width:100%;font:inherit;color:var(--text);caret-color:var(--accent);background:0 0;border-radius:0;outline:0;padding:8px 0;font-size:17px;font-weight:700}.sheet .namefield:focus{border-bottom-color:var(--accent)}.sheet .namefield::placeholder{color:var(--cell-text);font-weight:600}.iconpick{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.iconpick button{aspect-ratio:1;cursor:pointer;background:var(--accent-soft);color:var(--accent);border:0;border-radius:14px;justify-content:center;align-items:center;padding:0;display:flex}.iconpick button svg{width:48%;height:48%}.iconpick button[aria-pressed=true]{background:var(--accent);color:var(--accent-foreground)}.sheet-actions{gap:8px;display:flex}.sheet-actions .danger{color:var(--accent)}.sheet-actions .cancel{margin-left:auto}.sheet-actions .btn.primary{flex:none;padding:14px 24px}.sheet-actions .btn:not(.ghost):not(.primary){flex:none;padding:14px 20px}.account-btn{border:1px solid var(--line);background:var(--panel);width:34px;height:34px;color:var(--muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:50%;right:16px;overflow:hidden;transform:translateY(-50%)}.account-btn svg{width:18px;height:18px}.account-btn:has(.avatar){border-color:#0000}.avatar{object-fit:cover;background:var(--accent-soft);color:var(--accent);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:800;line-height:1;display:flex}.login-list{flex-direction:column;gap:10px;display:flex}.login{cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;height:50px;font-size:15px;font-weight:700;display:flex}.login svg{flex:none;width:20px;height:20px}.login.kakao{color:#000000d9;background:#fee500}.login.google{color:#1f1f1f;background:#fff;border-color:#dadce0}.login:disabled{opacity:.6}.account-info{align-items:center;gap:12px;display:flex}.account-name{font-weight:800}.account-email{color:var(--muted);font-size:13px}.band{background:var(--panel);align-items:center;gap:2.6cqw;height:24%;padding:0 4.2cqw;display:flex;position:absolute;bottom:0;left:0;right:0}.datebox{aspect-ratio:1;background:var(--accent-soft);border-radius:2cqw;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:.4cqw;width:15.5%;display:flex}.datebox .yy{color:var(--muted);letter-spacing:.04em;font-size:2.3cqw;line-height:1}.datebox .mm{color:var(--accent);font-size:6.6cqw;font-weight:800;line-height:1}.bandmain{flex-direction:column;flex:1;gap:1.2cqw;min-width:0;display:flex}.streakrow{justify-content:space-between;align-items:baseline;gap:2cqw;min-height:3cqw;line-height:1.1;display:flex}.streakrow .since{color:var(--cell-text);font-size:2.2cqw;font-weight:600}.streakrow .streak{color:var(--accent);margin-left:auto;font-size:2.6cqw;font-weight:700}.brand{pointer-events:none;color:#fff;white-space:nowrap;filter:drop-shadow(0 .19cqw .74cqw #00000073);align-items:center;gap:.37cqw;display:flex;position:absolute;bottom:calc(24% + 2.78cqw);left:50%;transform:translate(-50%)}.brand svg{flex:none;width:5.93cqw;height:5.93cqw}.brand span{font-family:var(--font-caveat),"Caveat",cursive;letter-spacing:.185cqw;font-size:5.37cqw;font-weight:700;line-height:1}.grid{flex-direction:column;gap:1cqw;display:flex}.row{grid-template-columns:repeat(16,minmax(0,1fr));gap:.7cqw;display:grid}.cell{aspect-ratio:1;background:var(--cell);color:var(--cell-text);-webkit-user-select:none;user-select:none;border-radius:.8cqw;justify-content:center;align-items:center;font-size:1.8cqw;display:flex;overflow:hidden}.cell.on{background:var(--accent);color:var(--accent-foreground);font-weight:700}.cell.pending{background:var(--pending);color:var(--accent);font-weight:700;animation:1.4s ease-in-out infinite pendingPulse}@keyframes pendingPulse{50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.cell.pending{animation:none}}.cell.blank{background:0 0}.actions{justify-content:center;align-items:center;gap:8px;display:flex}button{font:inherit}.btn{border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer;border-radius:14px;flex:1;padding:14px 12px;font-weight:700}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-foreground)}.btn.ghost{color:var(--muted);flex:none;padding:14px 16px}.btn.icon{width:var(--iconbtn);height:var(--iconbtn);color:var(--text);flex:none;justify-content:center;align-items:center;padding:0;display:flex}.btn.icon svg{width:calc(var(--iconbtn) * .45);height:calc(var(--iconbtn) * .45)}.btn.shutter{width:var(--shutter);height:var(--shutter);background:var(--accent);border-color:var(--accent);color:var(--accent-foreground);border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:flex}.btn.shutter svg{width:calc(var(--shutter) * .43);height:calc(var(--shutter) * .43)}.btn.shutter:active{transform:scale(.94)}.actions.live{justify-content:space-between;padding:0 4px}.actions.done .btn.primary{height:var(--iconbtn);border-radius:14px;flex:1}.btn:disabled{opacity:.4}.toast{z-index:45;max-width:min(90vw,400px);left:50%;bottom:calc(env(safe-area-inset-bottom) + var(--shutter) + 36px);background:var(--text);color:var(--panel);text-align:center;border-radius:12px;padding:10px 16px;font-size:13px;position:fixed;transform:translate(-50%)}.langs{align-items:center;gap:6px;display:flex}.langs-label{color:var(--muted);flex:1;font-size:13px}.langs button{border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer;border-radius:999px;padding:8px 14px;font-weight:600}.langs button[aria-checked=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-foreground)}.overlay{z-index:50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#f1ece3db;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:fixed;inset:0}.spinner{border:3px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;width:38px;height:38px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.overlay .olabel{color:var(--muted);font-size:13px;font-weight:600}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2s}}
