:root{--t1:#1d1e22;--t2:#6a6d75;--t3:#a4a6ac;--line:#1e190f14;--glass:#ffffff8c;--glass-edge:#ffffffbf;--lift:0 1px 2px #281e0a1a, 0 18px 36px -14px #281e0a38;--lifted:0 2px 4px #281e0a1a, 0 36px 60px -16px #281e0a59;--del:#e5484d;--now:#f0604d;--hand:"Gamja Flower", "Pretendard", sans-serif;--sans:"Pretendard", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", sans-serif;--num:"Inter", var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0;overflow:hidden}.sheet,.panel{scrollbar-width:none}.sheet::-webkit-scrollbar{display:none}.panel::-webkit-scrollbar{display:none}body{font-family:var(--sans);color:var(--t1);overscroll-behavior:none;background:#f4f3f1}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}input,textarea{font:inherit;color:inherit}.app{max-width:440px;height:100dvh;margin:0 auto;position:relative;overflow:hidden}.head{left:20px;right:20px;top:calc(env(safe-area-inset-top) + 14px);z-index:5;align-items:center;gap:10px;height:44px;display:flex;position:absolute}.head .date{flex:1;align-items:baseline;gap:8px;display:flex}.head .date b{letter-spacing:-.9px;font-size:28px;font-weight:700}.head .date span{color:var(--t2);font-size:15px;font-weight:500}.pill{background:var(--glass);border:1px solid var(--glass-edge);height:34px;box-shadow:var(--lift);border-radius:17px;align-items:center;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex}.avatar{border:2px solid #fff;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.slot{border:2px dashed var(--t3);width:38px;height:38px;color:var(--t2);background:#ffffff80;border-radius:50%;justify-content:center;align-items:center;font-size:20px;display:inline-flex}.who{border-radius:50%;transition:transform .18s,box-shadow .18s;position:relative}.who.drop{box-shadow:0 0 0 3px #fff, 0 0 0 6px color-mix(in srgb, var(--pc) 55%, transparent)}.who.over{box-shadow:0 0 0 3px #fff, 0 0 18px 8px var(--pc);transform:scale(1.35)}.who.pinged{animation:.9s ease-out ping}@keyframes ping{0%{box-shadow:0 0 0 0 var(--pc);transform:scale(1.2)}to{transform:scale(1);box-shadow:0 0 0 18px #0000}}.typing{height:18px;box-shadow:var(--lift);background:#fff;border-radius:9px;align-items:center;gap:3px;padding:0 6px;display:flex;position:absolute;top:36px;right:-4px}.typing i{border-radius:2px;width:4px;height:4px;animation:1.2s infinite blink}.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}@keyframes blink{0%,to{opacity:.25}50%{opacity:1}}.sheet{left:12px;right:12px;top:calc(env(safe-area-inset-top) + 140px);bottom:calc(env(safe-area-inset-bottom) + 84px);background:var(--glass);border:1px solid var(--glass-edge);border-radius:30px;position:absolute;overflow:hidden auto;box-shadow:0 20px 50px -20px #3c325a40}.canvas{transform-origin:0 0;position:relative}.glow{pointer-events:none;border-radius:999px;position:absolute}.sheet,.sheet *{-webkit-user-select:none;user-select:none}.piece{touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;transition:box-shadow .2s,transform .2s;position:absolute}.piece.lifted{z-index:30;transition:none;transform:scale(1.05)}.piece.target{outline:2px solid var(--target,#8cc8ff);outline-offset:6px;border-radius:22px}.card{box-shadow:var(--lift);background:#fff;border-radius:20px}.hand{font-family:var(--hand);white-space:pre-wrap;word-break:keep-all;font-size:18px;line-height:26px}.hl{border-radius:4px;padding:0 3px}.badge{height:22px;font:700 12px var(--num);vertical-align:2px;border-radius:11px;align-items:center;margin-left:6px;padding:0 8px;display:inline-flex}.ask{height:24px;box-shadow:var(--lift);font:600 12px var(--sans);background:#fff;border-radius:12px;align-items:center;gap:5px;padding:0 9px;display:inline-flex}.done-circle{vertical-align:middle;background:#fff;border-radius:11px;width:22px;height:22px;margin-left:8px;display:inline-block}.check-row{align-items:center;gap:8px;min-height:28px;display:flex}.box{border:1.5px solid var(--t3);color:#fff;border-radius:6px;flex:none;justify-content:center;align-items:center;width:16px;height:16px;font-size:11px;display:inline-flex}.sep{color:var(--t2);align-items:center;gap:10px;font-size:12px;font-weight:600;display:flex}.sep:before,.sep:after{content:"";background:#1e190f1f;flex:1;height:1px}.caret{vertical-align:-4px;width:2px;height:20px;margin-left:2px;animation:1s infinite blink;display:inline-block}.media{border-radius:14px;gap:3px;display:grid;overflow:hidden}.media img{object-fit:cover;width:100%;height:118px;display:block}.composer{left:16px;right:16px;bottom:max(calc(env(safe-area-inset-bottom) + 18px), calc(var(--kb,0px) + 8px));box-shadow:var(--lift);z-index:20;background:#fff;border-radius:27px;position:absolute}.composer .editable{white-space:pre-wrap;word-break:keep-all;-webkit-user-select:text;user-select:text;outline:0;width:100%;padding:15px 20px;font-size:16px;line-height:24px;overflow-y:auto}.composer .editable:empty:before{content:attr(data-ph);color:var(--t3);font-family:var(--sans);pointer-events:none;font-size:16px}.composer.open .editable{font-family:var(--hand);padding-bottom:6px;font-size:19px;line-height:26px}.composer .editable img{max-height:60px}.composer .row{justify-content:space-between;align-items:center;padding:0 12px 10px 14px;display:flex}.quiet{height:30px;color:var(--t2);background:#1e190f0f;border-radius:15px;align-items:center;gap:6px;padding:0 12px 0 10px;font-size:13px;font-weight:600;display:inline-flex}.quiet.on{background:var(--t1);color:#fff}.go{background:var(--t1);color:#fff;border-radius:18px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:inline-flex}.tools{flex-wrap:wrap;gap:8px;padding:0 12px 12px;display:flex}.tools button{background:#f0f1f4;border-radius:16px;height:32px;padding:0 14px;font-size:14px;font-weight:600}.tools button.on{background:var(--t1);color:#fff}.confirms{z-index:19;flex-direction:column;gap:8px;display:flex;position:absolute;left:16px;right:16px}.confirm{white-space:nowrap;background:#fff;border-radius:15px;align-items:center;gap:8px;height:44px;padding:0 6px 0 14px;display:flex;box-shadow:0 1px 2px #281e0a14,0 8px 20px -8px #281e0a33}.confirm b{font:700 15px var(--num);letter-spacing:-.3px;flex:none}.confirm em{color:var(--t1);text-overflow:ellipsis;flex:1;min-width:0;font-size:14px;font-style:normal;font-weight:600;overflow:hidden}.confirm small{color:var(--t2);flex:none;font-size:12px;font-weight:500}.btns{flex:none;gap:4px;display:flex}.btn{background:#1e190f0f;border-radius:16px;height:32px;padding:0 12px;font-size:13px;font-weight:600}.btn.picked{box-shadow:inset 0 0 0 2px var(--t1)}.dim{z-index:25;background:#28243c47;position:absolute;inset:0}.menu{z-index:40;width:230px;box-shadow:var(--lifted);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffeb;border-radius:18px;position:absolute;overflow:hidden}.menu button{justify-content:space-between;align-items:center;width:100%;height:48px;padding:0 16px;font-size:16px;font-weight:500;display:flex}.menu button+button{border-top:1px solid var(--line)}.toast{left:50%;bottom:calc(env(safe-area-inset-bottom) + 86px);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--glass-edge);height:40px;color:var(--t2);z-index:45;box-shadow:var(--lift);white-space:nowrap;background:#ffffffe0;border-radius:20px;align-items:center;gap:10px;padding:0 6px 0 16px;font-size:13px;font-weight:500;animation:3s forwards toast;display:flex;position:absolute;transform:translate(-50%)}.toast button{background:#1e190f0f;border-radius:15px;height:30px;padding:0 12px;font-size:13px;font-weight:600}@keyframes toast{0%{opacity:0;transform:translate(-50%,8px)}8%,80%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,4px)}}.panel{bottom:0;left:0;right:0;top:calc(env(safe-area-inset-top) + 8px);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-top:1px solid var(--glass-edge);z-index:50;padding:0 16px calc(env(safe-area-inset-bottom) + 30px);background:#fafafcf0;border-radius:34px 34px 0 0;animation:.35s cubic-bezier(.2,.9,.3,1.1) up;position:absolute;overflow-y:auto;box-shadow:0 -20px 60px #28243c2e}@keyframes up{0%{transform:translateY(100%)}to{transform:none}}.grab{touch-action:none;width:100%;padding:8px 0 14px;display:block}.panel .ptitle{touch-action:none}.grab:after{content:"";background:#1e190f33;border-radius:3px;width:40px;height:5px;margin:0 auto;display:block}.ptitle{align-items:baseline;gap:8px;margin-bottom:14px;padding:0 8px;display:flex}.ptitle b{letter-spacing:-.9px;font-size:28px;font-weight:700}.ptitle span{color:var(--t2);font-size:15px;font-weight:500}.dd{background:#fff;border-radius:14px;align-items:center;gap:10px;height:40px;margin-bottom:8px;padding:0 14px;font-size:14px;display:flex;box-shadow:0 1px 2px #281e0a14,0 6px 16px -8px #281e0a2e}.dd .tt{text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.dd .tm{color:var(--t2);flex:none;font-size:12px;font-weight:500}.dd b{font:700 15px var(--num);letter-spacing:-.3px;flex:none}.sec{color:var(--t2);align-items:center;gap:6px;margin:18px 8px 8px;font-size:13px;font-weight:700;display:flex}.item{height:56px;box-shadow:var(--lift);text-align:left;background:#fff;border-radius:18px;align-items:center;gap:12px;width:100%;margin-bottom:10px;padding:0 14px 0 8px;display:flex}.item .bub{border-radius:14px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}.item .tt{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:16px;font-weight:600;overflow:hidden}.item .tm{color:var(--t2);font-size:13px;font-weight:600}.item .ck{border-radius:11px;flex:none;width:22px;height:22px}.item.done{opacity:.45}.past{background:var(--glass);border:1px solid var(--glass-edge);height:40px;color:var(--t2);border-radius:20px;justify-content:space-between;align-items:center;width:100%;padding:0 14px;font-size:13px;font-weight:600;display:flex}.nowline{color:var(--now);align-items:center;margin:4px 0;font-size:13px;font-weight:600;display:flex}.nowline:before{content:"";background:var(--now);border-radius:5px;width:10px;height:10px}.nowline span{background:#f0604d59;flex:1;height:2px;margin-right:8px}.group{box-shadow:var(--lift);background:#fff;border-radius:20px;margin:0 8px 14px;overflow:hidden}.group>*{text-align:left;justify-content:space-between;align-items:center;width:100%;min-height:52px;padding:0 16px;font-size:15px;display:flex}.group>*+*{border-top:1px solid var(--line)}.group .v{color:var(--t2)}.switch{background:#1e190f24;border-radius:14px;flex:none;width:46px;height:28px;transition:background .2s;position:relative}.switch i{background:#fff;border-radius:11px;width:22px;height:22px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.switch.on{background:var(--sw,#34c759)}.switch.on i{transform:translate(18px)}.group input[type=color]{background:0 0;border:0;width:30px;height:30px;padding:0}.group input[type=date]{color:var(--t2);background:0 0;border:0}.center{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:32px;display:flex;position:absolute;inset:0}.logo{width:108px;height:72px;margin-bottom:26px;position:relative}.logo i{opacity:.88;border-radius:36px;width:72px;height:72px;position:absolute;top:0}.title{letter-spacing:-1.2px;font-size:36px;font-weight:700}.sub{color:var(--t2);margin-top:8px;font-size:16px}.bottom{left:32px;right:32px;bottom:calc(env(safe-area-inset-bottom) + 40px);flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute}.bigbtn{border-radius:26px;justify-content:center;align-items:center;width:100%;height:52px;font-size:16px;font-weight:600;display:flex}.fine{color:var(--t3);text-align:center;margin-top:6px;font-size:11px}.link{color:var(--t2);padding:10px;font-size:15px;font-weight:600}.colors{gap:28px;margin-top:36px;display:flex}.colors button{width:96px;height:96px;box-shadow:var(--lift);border-radius:48px;position:relative}.colors button.on{box-shadow:0 0 0 4px #fff, var(--lifted)}.colors .mark{position:absolute;top:-6px;right:-6px}.code{font:700 32px var(--num);letter-spacing:6px;margin:18px 0 6px}.codein{border:1px solid var(--glass-edge);text-align:center;width:100%;height:52px;font:700 20px var(--num);letter-spacing:4px;text-transform:uppercase;background:#ffffffb3;border-radius:26px;outline:0}.err{color:var(--del);margin-top:8px;font-size:13px}.iconbtn{width:38px;height:38px;color:var(--t1);background:#1e190f0f;border-radius:19px;justify-content:center;align-items:center;display:inline-flex}.week{left:14px;right:14px;top:calc(env(safe-area-inset-top) + 70px);z-index:4;justify-content:space-between;height:62px;display:flex;position:absolute}.wday{flex-direction:column;align-items:center;gap:3px;width:44px;display:flex}.wk{color:var(--t3);font-size:11px;font-weight:500}.wn{width:32px;height:32px;font:600 16px var(--num);color:var(--t1);border-radius:16px;justify-content:center;align-items:center;display:flex}.wn.today{background:var(--t1);color:#fff}.wdots{align-items:center;gap:3px;height:6px;display:flex}.wdots i{border-radius:3px;width:5px;height:5px}.composer{display:block}.cicons{z-index:2;gap:4px;height:38px;display:flex;position:absolute;top:8px;right:12px}.cicons button{width:38px;height:38px;color:var(--t2);border-radius:19px;justify-content:center;align-items:center;display:inline-flex}.cicons button.on{background:var(--t1);color:#fff}.composer .editable{padding-right:140px!important}
