:root{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Apple SD Gothic Neo,Pretendard,Avenir Next,Helvetica Neue,sans-serif;font-size:16.8px;color-scheme:light;--bg-gradient: radial-gradient(circle at 18% 14%, rgba(255, 233, 176, .82), transparent 18%), radial-gradient(circle at 86% 78%, rgba(198, 110, 34, .18), transparent 24%), linear-gradient(145deg, #f6efe6 0%, #eedfcc 48%, #e4cfb6 100%);--glass-bg: rgba(255, 251, 245, .82);--glass-border: rgba(78, 53, 32, .08);--glass-shadow: 0 18px 42px rgba(96, 67, 38, .1), 0 2px 4px rgba(0, 0, 0, .03);--accent-color: #c99523;--accent-gradient: linear-gradient(135deg, #f8da83 0%, #d49a26 50%, #8e5617 100%);--accent-glow: rgba(212, 154, 38, .26);--accent-glow-strong: rgba(125, 77, 22, .28);--text-primary: #241b15;--text-secondary: #6d6156;--text-muted: #9b8f83;--sidebar-bg: rgba(255, 249, 243, .78);--sidebar-border: rgba(78, 53, 32, .08);--sidebar-active-bg: rgba(212, 154, 38, .12);--sidebar-active-text: #8f5917;--sidebar-hover-bg: rgba(212, 154, 38, .06);--card-bg: rgba(255, 252, 247, .92);--freq-modal-bg: rgba(255, 252, 247, .97);--card-border: rgba(78, 53, 32, .08);--card-stripe: #d1a040;--card-shadow: 0 12px 36px rgba(96, 67, 38, .08), 0 1px 3px rgba(0, 0, 0, .04);--input-bg: rgba(255, 255, 255, .88);--input-border: rgba(138, 95, 35, .18);--input-focus: rgba(212, 154, 38, .32);--divider: rgba(78, 53, 32, .08);--pill-active-bg: rgba(212, 154, 38, .12);--pill-active-border: rgba(212, 154, 38, .3)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-gradient);color:var(--text-primary);font-family:inherit;line-height:1.45;display:flex;place-items:center;min-height:100vh;margin:0;overflow:hidden;position:relative;transition:background .8s ease,color .35s ease,filter .8s ease}body:before{content:"";position:absolute;top:-18%;right:-6%;width:72vw;height:72vw;background:radial-gradient(circle,rgba(255,224,147,.28) 0%,rgba(212,154,38,.08) 42%,transparent 72%);pointer-events:none;z-index:0}body:after{content:"";position:absolute;bottom:-18%;left:-8%;width:52vw;height:52vw;background:radial-gradient(circle,rgba(184,103,28,.12) 0%,transparent 65%);pointer-events:none;z-index:0}#root{width:100vw;height:100vh;position:relative;z-index:1}body.theme-dark{color-scheme:dark;--bg-gradient: radial-gradient(ellipse at 78% 16%, rgba(244, 198, 92, .18) 0%, transparent 34%), radial-gradient(ellipse at 12% 86%, rgba(111, 56, 20, .2) 0%, transparent 42%), linear-gradient(160deg, #0b090d 0%, #120f15 42%, #1a1316 100%);--glass-bg: rgba(25, 18, 21, .72);--glass-border: rgba(245, 210, 113, .1);--glass-shadow: 0 14px 40px rgba(0, 0, 0, .56), inset 0 1px 0 rgba(245, 210, 113, .04);--accent-color: #f1c65c;--accent-gradient: linear-gradient(135deg, #f9e8af 0%, #f0bf49 48%, #aa6b19 100%);--accent-glow: rgba(240, 191, 73, .2);--accent-glow-strong: rgba(240, 191, 73, .26);--text-primary: #f6ede0;--text-secondary: #bcae9f;--text-muted: #847568;--sidebar-bg: rgba(22, 17, 19, .82);--sidebar-border: rgba(245, 210, 113, .08);--sidebar-active-bg: rgba(240, 191, 73, .12);--sidebar-active-text: #f3cd73;--sidebar-hover-bg: rgba(240, 191, 73, .06);--card-bg: rgba(27, 20, 22, .78);--freq-modal-bg: rgba(27, 20, 22, .94);--card-border: rgba(245, 210, 113, .12);--card-stripe: #f0bf49;--card-shadow: 0 10px 32px rgba(0, 0, 0, .52), 0 0 0 1px rgba(245, 210, 113, .06);--input-bg: rgba(20, 15, 17, .84);--input-border: rgba(240, 191, 73, .18);--input-focus: rgba(240, 191, 73, .28);--divider: rgba(245, 210, 113, .08);--pill-active-bg: rgba(240, 191, 73, .12);--pill-active-border: rgba(240, 191, 73, .28)}body.theme-dark:before{background:radial-gradient(ellipse at center,rgba(245,210,113,.16) 0%,rgba(245,210,113,.04) 42%,transparent 72%);top:-16%;right:-5%;width:60vw;height:60vw}body.theme-dark:after{background:radial-gradient(circle,rgba(130,62,20,.18) 0%,transparent 60%);bottom:-14%;left:5%;width:40vw;height:40vw}body.theme-dynamic{--accent-glow-strong: rgba(212, 154, 38, .22)}body.theme-dynamic:before,body.theme-dynamic:after{transition:background .9s ease,opacity .9s ease}body.theme-dynamic[data-dynamic-phase=morning]{color-scheme:light;--bg-gradient: radial-gradient(circle at 18% 16%, rgba(255, 231, 168, .88), transparent 18%), radial-gradient(circle at 82% 76%, rgba(221, 161, 72, .16), transparent 24%), linear-gradient(148deg, #f7f0e7 0%, #efe1cc 46%, #e6d1ba 100%);--glass-bg: rgba(255, 250, 243, .84);--glass-border: rgba(98, 70, 40, .08);--glass-shadow: 0 18px 42px rgba(96, 67, 38, .09), 0 2px 4px rgba(0, 0, 0, .03);--accent-color: #cd9727;--accent-gradient: linear-gradient(135deg, #f8dd8d 0%, #d89d26 48%, #926019 100%);--accent-glow: rgba(216, 157, 38, .22);--text-primary: #261d16;--text-secondary: #73675b;--text-muted: #9c8f82;--sidebar-bg: rgba(255, 249, 242, .76);--sidebar-border: rgba(98, 70, 40, .08);--sidebar-active-bg: rgba(216, 157, 38, .12);--sidebar-active-text: #925e17;--sidebar-hover-bg: rgba(216, 157, 38, .06);--card-bg: rgba(255, 252, 247, .92);--freq-modal-bg: rgba(255, 252, 247, .97);--card-border: rgba(98, 70, 40, .08);--card-stripe: #d4a243;--card-shadow: 0 12px 34px rgba(96, 67, 38, .08), 0 1px 3px rgba(0, 0, 0, .04);--input-bg: rgba(255, 255, 255, .9);--input-border: rgba(138, 95, 35, .18);--input-focus: rgba(212, 154, 38, .26);--divider: rgba(98, 70, 40, .08);--pill-active-bg: rgba(216, 157, 38, .12);--pill-active-border: rgba(216, 157, 38, .28)}body.theme-dynamic[data-dynamic-phase=morning]:before{background:radial-gradient(circle,rgba(255,223,146,.3) 0%,rgba(216,157,38,.08) 44%,transparent 72%)}body.theme-dynamic[data-dynamic-phase=morning]:after{background:radial-gradient(circle,rgba(194,114,47,.12) 0%,transparent 65%)}body.theme-dynamic[data-dynamic-phase=day]{color-scheme:light;--bg-gradient: radial-gradient(circle at 16% 10%, rgba(255, 244, 211, .9), transparent 20%), radial-gradient(circle at 84% 78%, rgba(159, 210, 255, .16), transparent 24%), linear-gradient(145deg, #fffaf1 0%, #f5ead8 48%, #e9dccb 100%);--glass-bg: rgba(255, 253, 249, .88);--glass-border: rgba(98, 70, 40, .08);--glass-shadow: 0 18px 42px rgba(110, 85, 52, .08), 0 2px 4px rgba(0, 0, 0, .03);--accent-color: #be8b1f;--accent-gradient: linear-gradient(135deg, #f7e39d 0%, #cf9320 50%, #8f6a2f 100%);--accent-glow: rgba(207, 147, 32, .18);--text-primary: #2a211b;--text-secondary: #74685f;--text-muted: #a09388;--sidebar-bg: rgba(255, 252, 247, .72);--sidebar-border: rgba(98, 70, 40, .08);--sidebar-active-bg: rgba(207, 147, 32, .12);--sidebar-active-text: #8a641a;--sidebar-hover-bg: rgba(207, 147, 32, .05);--card-bg: rgba(255, 254, 251, .9);--freq-modal-bg: rgba(255, 254, 251, .97);--card-border: rgba(98, 70, 40, .08);--card-stripe: #cfa04f;--card-shadow: 0 12px 30px rgba(110, 85, 52, .07), 0 1px 3px rgba(0, 0, 0, .03);--input-bg: rgba(255, 255, 255, .92);--input-border: rgba(128, 102, 60, .14);--input-focus: rgba(207, 147, 32, .22);--divider: rgba(98, 70, 40, .08);--pill-active-bg: rgba(207, 147, 32, .1);--pill-active-border: rgba(207, 147, 32, .24)}body.theme-dynamic[data-dynamic-phase=day]:before{background:radial-gradient(circle,rgba(255,236,184,.24) 0%,rgba(207,147,32,.06) 42%,transparent 72%)}body.theme-dynamic[data-dynamic-phase=day]:after{background:radial-gradient(circle,rgba(120,174,232,.14) 0%,transparent 62%)}body.theme-dynamic[data-dynamic-phase=sunset]{color-scheme:light;--bg-gradient: radial-gradient(circle at 18% 12%, rgba(255, 203, 129, .44), transparent 18%), radial-gradient(circle at 82% 78%, rgba(179, 80, 43, .18), transparent 28%), linear-gradient(150deg, #f4dfcb 0%, #eac7aa 42%, #d8a684 100%);--glass-bg: rgba(255, 245, 236, .76);--glass-border: rgba(109, 60, 35, .1);--glass-shadow: 0 16px 36px rgba(120, 68, 40, .1), 0 2px 4px rgba(0, 0, 0, .04);--accent-color: #b96a1d;--accent-gradient: linear-gradient(135deg, #ffd89a 0%, #de8a2d 48%, #9e4f1a 100%);--accent-glow: rgba(222, 138, 45, .2);--accent-glow-strong: rgba(171, 89, 35, .22);--text-primary: #311f18;--text-secondary: #7f6151;--text-muted: #a58675;--sidebar-bg: rgba(255, 244, 235, .72);--sidebar-border: rgba(109, 60, 35, .1);--sidebar-active-bg: rgba(222, 138, 45, .13);--sidebar-active-text: #9e5219;--sidebar-hover-bg: rgba(222, 138, 45, .06);--card-bg: rgba(255, 247, 241, .84);--freq-modal-bg: rgba(255, 247, 241, .95);--card-border: rgba(109, 60, 35, .1);--card-stripe: #da8b3d;--card-shadow: 0 14px 34px rgba(120, 68, 40, .09), 0 1px 3px rgba(0, 0, 0, .04);--input-bg: rgba(255, 250, 245, .86);--input-border: rgba(181, 100, 48, .16);--input-focus: rgba(222, 138, 45, .24);--divider: rgba(109, 60, 35, .1);--pill-active-bg: rgba(222, 138, 45, .11);--pill-active-border: rgba(222, 138, 45, .24)}body.theme-dynamic[data-dynamic-phase=sunset]:before{background:radial-gradient(circle,rgba(255,201,123,.28) 0%,rgba(232,126,52,.08) 42%,transparent 72%)}body.theme-dynamic[data-dynamic-phase=sunset]:after{background:radial-gradient(circle,rgba(180,86,52,.16) 0%,transparent 60%)}body.theme-dynamic[data-dynamic-phase=night]{color-scheme:dark;--bg-gradient: radial-gradient(ellipse at 76% 14%, rgba(182, 131, 55, .16) 0%, transparent 30%), radial-gradient(ellipse at 14% 84%, rgba(81, 46, 28, .2) 0%, transparent 42%), linear-gradient(160deg, #0d0a0d 0%, #151016 42%, #1d1518 100%);--glass-bg: rgba(28, 21, 23, .74);--glass-border: rgba(230, 188, 98, .08);--glass-shadow: 0 14px 38px rgba(0, 0, 0, .54), inset 0 1px 0 rgba(245, 210, 113, .03);--accent-color: #e9ba53;--accent-gradient: linear-gradient(135deg, #f9e5ae 0%, #e9ba53 48%, #9d6a24 100%);--accent-glow: rgba(233, 186, 83, .18);--accent-glow-strong: rgba(233, 186, 83, .22);--text-primary: #f4ebe0;--text-secondary: #b7a697;--text-muted: #85776b;--sidebar-bg: rgba(23, 18, 19, .8);--sidebar-border: rgba(230, 188, 98, .08);--sidebar-active-bg: rgba(233, 186, 83, .11);--sidebar-active-text: #f0cc79;--sidebar-hover-bg: rgba(233, 186, 83, .05);--card-bg: rgba(30, 23, 25, .8);--freq-modal-bg: rgba(30, 23, 25, .95);--card-border: rgba(230, 188, 98, .1);--card-stripe: #e0af4c;--card-shadow: 0 10px 28px rgba(0, 0, 0, .5), 0 0 0 1px rgba(230, 188, 98, .04);--input-bg: rgba(22, 17, 19, .82);--input-border: rgba(233, 186, 83, .14);--input-focus: rgba(233, 186, 83, .22);--divider: rgba(230, 188, 98, .08);--pill-active-bg: rgba(233, 186, 83, .12);--pill-active-border: rgba(233, 186, 83, .24)}body.theme-dynamic[data-dynamic-phase=night]:before{background:radial-gradient(ellipse at center,rgba(214,168,77,.14) 0%,rgba(214,168,77,.03) 42%,transparent 72%);top:-16%;right:-5%;width:60vw;height:60vw}body.theme-dynamic[data-dynamic-phase=night]:after{background:radial-gradient(circle,rgba(112,58,33,.18) 0%,transparent 60%);bottom:-14%;left:5%;width:40vw;height:40vw}body.theme-dynamic[data-dynamic-phase]:before{background:var(--dynamic-before-bg)}body.theme-dynamic[data-dynamic-phase]:after{background:var(--dynamic-after-bg)}.app-container{display:flex;width:100vw;height:100vh;background:transparent;overflow:hidden}.sidebar{width:190px;min-width:190px;background:var(--sidebar-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-right:1px solid var(--sidebar-border);box-shadow:2px 0 20px #0000000d;display:flex;flex-direction:column;padding:18px 10px 12px;transition:all .3s ease;z-index:10}.sidebar-header{display:flex;align-items:center;gap:8px;padding:0 3px 10px;margin-bottom:2px;border-bottom:1px solid var(--divider)}.sidebar-brand-image{width:40px;height:40px;border-radius:11px;flex-shrink:0;box-shadow:0 18px 32px var(--accent-glow-strong)}.sidebar-title{font-size:.9rem;font-weight:800;letter-spacing:0;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0}.sidebar-subtitle{margin-top:2px;color:var(--text-secondary);font-size:.68rem;line-height:1.25}.sidebar-cover{position:relative;overflow:hidden;margin:6px 4px 14px;border-radius:22px;border:1px solid var(--card-border);background:#ffffff14;box-shadow:var(--card-shadow)}.sidebar-cover-image{display:block;width:100%;aspect-ratio:1.28 / 1;object-fit:cover}.sidebar-cover-copy{position:absolute;inset:auto 0 0;padding:16px 14px 14px;background:linear-gradient(180deg,#0b080a00,#0b080ad6 78%);color:#fff7ea}.sidebar-cover-copy strong{display:block;font-size:.86rem;line-height:1.4;font-weight:700}.sidebar-cover-kicker{display:inline-flex;margin-bottom:8px;padding:4px 9px;border-radius:999px;background:#f5d27129;border:1px solid rgba(245,210,113,.24);color:#f8de99;font-size:.65rem;letter-spacing:.12em;text-transform:uppercase}.sidebar-nav{display:flex;flex-direction:column;gap:3px;flex-grow:1;padding-top:6px}.nav-item{display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:8px;cursor:pointer;color:var(--text-secondary);font-size:.78rem;font-weight:600;transition:all .18s cubic-bezier(.4,0,.2,1);border:1px solid transparent;-webkit-user-select:none;user-select:none}.nav-item:hover{background:var(--sidebar-hover-bg);color:var(--text-primary)}.nav-item.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text);border-color:var(--pill-active-border);border-left:3px solid var(--accent-color);box-shadow:0 0 0 1px var(--pill-active-bg)}.nav-item.active svg{filter:drop-shadow(0 0 4px var(--accent-glow))}.main-content{flex-grow:1;position:relative;overflow-y:auto;padding:26px 22px 18px;background:transparent}.main-content::-webkit-scrollbar,.tasks-content-area::-webkit-scrollbar{width:5px}.main-content::-webkit-scrollbar-track,.tasks-content-area::-webkit-scrollbar-track{background:transparent}.main-content::-webkit-scrollbar-thumb,.tasks-content-area::-webkit-scrollbar-thumb{background:var(--divider);border-radius:10px}.tab-title{font-size:1.34rem;font-weight:800;letter-spacing:0;margin-bottom:4px;color:var(--text-primary);line-height:1.2}.app-header-greeting h1{background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-size:1.44rem;font-weight:800;letter-spacing:0;line-height:1.1;margin-bottom:4px}.app-header-greeting p{color:var(--text-secondary);font-size:.78rem;margin-bottom:12px}.glass-card{background:var(--card-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--card-border);box-shadow:var(--card-shadow);border-radius:11px;padding:11px;position:relative;border-left:3px solid var(--card-stripe);transition:box-shadow .2s ease,transform .2s ease}.glass-card:hover{box-shadow:var(--card-shadow),0 5px 18px var(--accent-glow),0 0 0 1px var(--card-border);transform:translateY(-1px)}body.theme-dark .glass-card{border-left-color:var(--card-stripe);box-shadow:var(--card-shadow)}.btn{padding:10px 22px;border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer;border:none;transition:all .18s cubic-bezier(.34,1.56,.64,1);display:inline-flex;align-items:center;justify-content:center;gap:7px;font-family:inherit}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:0 2px 12px var(--accent-glow)}.btn-primary:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 6px 20px var(--accent-glow)}.btn-primary:active{transform:translateY(0) scale(.99)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary{background:var(--glass-bg);color:var(--text-primary);border:1px solid var(--glass-border)}.btn-secondary:hover{background:var(--sidebar-hover-bg);transform:translateY(-1px)}.btn-danger{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.btn-danger:hover{background:#ef444433;transform:translateY(-1px)}.btn-outline-primary{background:transparent;color:var(--accent-color);border:1.5px solid var(--accent-color)}.btn-outline-primary:hover{background:var(--sidebar-active-bg);transform:translateY(-1px)}.icon-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:6px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .15s ease;font-family:inherit}.icon-btn:hover{color:var(--accent-color);background:var(--sidebar-active-bg)}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:.7rem;font-weight:700;background:var(--accent-gradient);color:#fff;letter-spacing:.5px}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .35s cubic-bezier(.4,0,.2,1) forwards}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000059;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:100;display:flex;align-items:center;justify-content:center}.modal-content{width:90%;max-width:500px;position:relative;padding:40px}.close-modal-btn{position:absolute;top:18px;right:18px}.modal-title{color:var(--text-primary);margin-bottom:24px;font-size:1.4rem;font-weight:700}.onboarding-steps{display:flex;flex-direction:column;gap:18px}.step-item{display:flex;gap:14px;align-items:flex-start}.step-number{background:var(--accent-gradient);color:#fff;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-weight:700;font-size:.85rem;flex-shrink:0;box-shadow:0 2px 8px var(--accent-glow)}.step-text strong{display:block;color:var(--text-primary);margin-bottom:3px;font-size:1rem}.step-text p{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0}.skeleton-loader{color:var(--text-muted);font-style:italic;animation:pulse 1.5s infinite;display:inline-block;font-size:.95rem}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.login-page{min-height:100vh;display:grid;place-items:center;padding:32px 20px;background:radial-gradient(circle at 22% 45%,rgba(240,191,73,.12),transparent 24%),#111;color:#202020}.login-card{width:min(400px,100%);padding:34px 30px 28px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:#fbfbfa;box-shadow:0 24px 64px #00000057}.login-title{margin:0 0 22px;color:#1b1b1b;font-size:26px;line-height:1.2}.login-fields{display:grid;gap:8px}.login-field{position:relative;display:block}.login-input{width:100%;height:48px;padding:0 14px;border:1px solid #d8d8d5;border-radius:6px;outline:none;background:#fff;color:#1f1f1f;font:inherit;transition:border-color .16s ease,box-shadow .16s ease}.login-input::placeholder{color:#a2a2a0}.login-input:focus{border-color:#797976;box-shadow:0 0 0 3px #11111114}.login-password-input{padding-right:48px}.login-password-toggle{position:absolute;top:50%;right:12px;display:grid;width:28px;height:28px;place-items:center;padding:0;border:0;background:transparent;color:#aaa;cursor:pointer;transform:translateY(-50%)}.login-password-toggle:hover,.login-password-toggle:focus-visible{color:#333}.login-options{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0 26px;color:#5f5f5c;font-size:13px}.login-remember{display:inline-flex;align-items:center;gap:7px;cursor:pointer}.login-remember input{width:17px;height:17px;margin:0;accent-color:#151515}.login-text-button,.login-links button{padding:0;border:0;background:transparent;color:#6d6d69;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.login-text-button:hover,.login-text-button:focus-visible,.login-links button:hover,.login-links button:focus-visible{color:#111}.login-text-button:disabled{cursor:default;opacity:.5}.login-submit{width:100%;min-height:46px;padding:11px 18px;border:1px solid #292929;border-radius:999px;background:#111;color:#fff;font:inherit;font-weight:700;cursor:pointer;transition:background .16s ease,transform .16s ease}.login-submit:hover:not(:disabled),.login-submit:focus-visible:not(:disabled){background:#2a2a2a;transform:translateY(-1px)}.login-submit:disabled{cursor:wait;opacity:.58}.login-links{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:24px;color:#686864;font-size:13px}.login-link-divider{width:1px;height:13px;background:#c7c7c4}.login-message{margin:18px 0 0;color:#5f5f5c;font-size:13px;line-height:1.5;text-align:center}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:520px){.login-page{padding:20px 14px}.login-card{padding:28px 22px 24px}}.settings-container{height:100%;display:flex;flex-direction:column;align-items:flex-start;padding:0 clamp(14px,3vw,42px)}.settings-card{width:min(640px,100%);max-width:640px;padding:18px 22px}.settings-card .form-section{margin-bottom:18px}.settings-card .btn{padding:8px 14px;border-radius:9px;font-size:.78rem;gap:6px}.settings-card .icon-btn{padding:5px;border-radius:7px}.section-title{font-size:.98rem;color:var(--text-primary);margin-bottom:4px;font-weight:700}.section-desc{color:var(--text-secondary);font-size:.78rem;line-height:1.42;margin-bottom:6px}.section-note{margin:0 0 14px;color:var(--text-muted);font-size:.72rem;line-height:1.38}.times-list{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.time-row{display:flex;align-items:center;gap:10px}.time-input-wrapper{display:flex;align-items:center;gap:8px;background:var(--input-bg);border:1px solid var(--glass-border);border-radius:10px;padding:8px 12px;transition:all .2s ease;min-width:184px}.time-input-wrapper:focus-within{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-glow)}.time-icon-btn{background:transparent;border:none;padding:0;cursor:pointer;display:flex;align-items:center;flex-shrink:0;border-radius:6px;transition:background .15s ease}.time-icon-btn:hover .time-icon,.time-icon-btn.active .time-icon{color:var(--accent-color);filter:drop-shadow(0 0 4px var(--accent-glow))}.time-input-wrapper.editing{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-glow)}.time-display-static{font-size:.9rem;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:0;flex:1}.time-edit-controls{display:flex;align-items:center;gap:4px;flex:1}.time-dropdown{border:1px solid var(--glass-border);border-radius:7px;background:var(--input-bg);color:var(--text-primary);font-family:inherit;font-size:.82rem;font-weight:700;padding:3px 5px;cursor:pointer;outline:none;transition:border-color .2s ease,box-shadow .2s ease;appearance:none;-webkit-appearance:none;text-align:center;min-width:40px}.time-dropdown:hover,.time-dropdown:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-glow)}.ampm-select{min-width:46px}.ampm-select.badge-am{background:var(--pill-active-bg);color:var(--accent-color);border-color:var(--accent-color)}.ampm-select.badge-pm{background:#3b82f61f;color:#3b82f6;border-color:#3b82f6}body.theme-dark .ampm-select.badge-pm{background:#3b82f62e;color:#60a5fa;border-color:#60a5fa}.time-sep{font-size:.95rem;font-weight:700;color:var(--text-muted);margin:0 1px;padding-bottom:4px}.ampm-clickable{border:none;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;font-family:inherit}.ampm-clickable:hover{transform:scale(1.08);box-shadow:0 2px 8px var(--accent-glow)}.ampm-badge{padding:2px 7px;border-radius:6px;font-size:.62rem;font-weight:700;letter-spacing:.6px;flex-shrink:0}.ampm-badge.badge-am{background:var(--pill-active-bg);color:var(--accent-color)}.ampm-badge.badge-pm{background:#3b82f61f;color:#3b82f6}body.theme-dark .ampm-badge.badge-pm{background:#3b82f62e;color:#60a5fa}.theme-select{width:100%;max-width:230px;padding:9px 12px;background:var(--input-bg);border:1px solid var(--glass-border);border-radius:10px;color:var(--text-primary);font-family:inherit;font-size:.84rem;font-weight:500;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%232d3436' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}.theme-select:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-glow)}.form-actions{margin-top:24px;padding-top:18px;border-top:1px solid var(--divider);display:flex;justify-content:flex-end}.planner-container{display:flex;flex-direction:column;gap:9px;height:100%;min-height:0}.planner-calendar{display:flex;justify-content:space-between;padding:7px 11px;border-radius:10px}.planner-cal-day{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 8px;border-radius:9px;cursor:pointer;transition:all .2s ease;position:relative}.planner-cal-day:hover:not(.disabled){background:var(--sidebar-hover-bg)}.planner-cal-day.disabled{opacity:.4;cursor:not-allowed}.planner-cal-day.selected{background:var(--sidebar-active-bg)}.cal-day-name{font-size:.66rem;font-weight:500;color:var(--text-secondary)}.planner-cal-day.selected .cal-day-name{color:var(--sidebar-active-text)}.cal-day-num-wrapper{display:flex;align-items:center;justify-content:center;height:22px;width:22px}.cal-day-num{font-size:.88rem;font-weight:600;color:var(--text-primary)}.cal-indicator{position:absolute;bottom:0;width:3px;height:3px;border-radius:50%;background:var(--accent-color)}.planner-layout{display:flex;gap:11px;flex-grow:1;min-height:0;overflow:hidden}.planner-main{flex:1;display:flex;flex-direction:column;gap:8px;min-height:0;overflow:hidden}.planner-header{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.planner-header h2+.freq-tasks-trigger-btn{margin-left:auto}.planner-header h2{margin:0;font-size:.92rem;color:var(--text-primary)}.badge-readonly{font-size:.66rem;padding:2px 6px;border:1px solid var(--glass-border);border-radius:9px;color:var(--text-secondary);background:var(--sidebar-hover-bg)}.planner-task-list{flex:1 1 0;min-height:0;overflow-y:auto;padding:10px;border-radius:10px;transition:border-color .2s ease,box-shadow .2s ease;position:relative}.planner-task-list.drag-delete-zone{border:2px solid #e05555!important;box-shadow:0 0 0 3px #e0555526}.planner-task-list.drag-delete-zone:after{content:"🗑️ 놓으면 삭제";position:absolute;top:8px;right:12px;font-size:.75rem;color:#e05555;font-weight:600;pointer-events:none;animation:fadeIn .15s ease}.planner-task-list.unfinished-drop-target{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-glow)}.planner-task-list.unfinished-drop-target:after{content:"놓으면 오늘의 할 일로 이동";position:absolute;top:8px;right:10px;padding:4px 8px;border-radius:999px;background:var(--sidebar-active-bg);color:var(--accent-color);font-size:.68rem;font-weight:700;pointer-events:none;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.task-files-container,.planner-file-group{display:flex;flex-direction:column;gap:5px}.file-group-title{margin:0 0 12px;font-size:.85rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--divider);padding-bottom:4px}.planner-tasks{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:5px}.planner-task-item{display:flex;align-items:center;gap:7px;padding:6px 8px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:7px;transition:all .2s ease;group:task-row;cursor:grab;position:relative}.planner-task-item:active{cursor:grabbing}.planner-task-item:hover{background:var(--pill-active-bg);border-color:var(--accent-color);box-shadow:0 2px 8px #0000000d}.planner-task-item.drag-over-top{border-top:2px solid var(--accent-color)}.planner-task-item.drag-over-bottom{border-bottom:2px solid var(--accent-color)}.planner-task-item.dragging{opacity:.5;box-shadow:0 8px 16px #0000001a;transform:scale(1.02)}.drag-handle{color:var(--text-muted);cursor:grab;opacity:.5;transition:opacity .2s;display:flex;align-items:center;justify-content:center}.planner-task-item:hover .drag-handle{opacity:1}.task-delete-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;opacity:0;transition:opacity .2s,color .2s;display:flex;align-items:center;justify-content:center;margin-left:auto}.planner-task-item:hover .task-delete-btn{opacity:1}.task-delete-btn:hover{color:#ff4d4f;background:#ff4d4f1a}.planner-task-item.checked{opacity:.6}.planner-task-item.checked .task-text{text-decoration:line-through;color:var(--text-muted)}.past-task-sections{display:flex;flex-direction:column;gap:12px}.past-task-section{display:flex;flex-direction:column;gap:7px}.past-task-section+.past-task-section{padding-top:9px;border-top:1px solid var(--divider)}.past-task-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.past-task-section-header h3{margin:0;font-size:.78rem;color:var(--text-primary)}.past-task-section-header span{min-width:22px;padding:1px 6px;border-radius:999px;background:var(--sidebar-active-bg);color:var(--accent-color);font-size:.66rem;font-weight:700;text-align:center}.past-task-list{gap:4px}.past-task-item,.past-task-item:active{cursor:default}.past-task-item:hover{background:var(--input-bg);border-color:var(--input-border);box-shadow:none}.past-task-item .task-text{cursor:default}.past-task-icon{display:flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0}.past-task-item.past-unfinished{border-left:3px solid #e05555}.past-task-item.past-unfinished .past-task-icon{color:#e05555}.task-check-btn{background:none;border:none;padding:0;display:flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:color .2s}.task-check-btn:hover:not(:disabled){color:var(--accent-color)}.task-check-btn .done{color:var(--accent-color)}.task-check-btn:disabled{cursor:not-allowed;opacity:.5}.task-text{flex-grow:1;font-size:.78rem;color:var(--text-primary);line-height:1.34;cursor:text}.planner-task-item .task-text{font-size:.82rem}.task-inline-input{flex-grow:1;font-size:.84rem;color:var(--text-primary);background:var(--input-bg);border:1px solid var(--accent-color);border-radius:4px;padding:4px 7px;outline:none;box-shadow:0 0 0 2px var(--accent-glow)}.task-edit-trigger{background:none;border:none;color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity .2s;padding:4px}.planner-task-item:hover .task-edit-trigger{opacity:1}.task-edit-trigger:hover{color:var(--accent-color)}.quick-add-bar{display:flex;align-items:center;gap:7px;flex-shrink:0;padding:7px 9px;border-radius:9px;background:var(--input-bg);border:1px solid var(--input-border)}.quick-add-bar:focus-within{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-glow)}.quick-add-icon{color:var(--accent-color);flex-shrink:0}.quick-add-bar input{flex-grow:1;background:transparent;border:none;font-size:.82rem;color:var(--text-primary);outline:none}.quick-add-bar input::placeholder{color:var(--text-muted)}.quick-add-btn{background:var(--accent-color);color:#fff;border:none;width:24px;height:24px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.quick-add-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px var(--accent-glow-strong)}.quick-add-btn:disabled{background:var(--divider);color:var(--text-muted);cursor:not-allowed}.planner-sidebar{width:198px;display:flex;flex-direction:column;gap:7px;flex-shrink:0}.widget-card{padding:9px;border-radius:10px}.widget-title{margin:0 0 7px;font-size:.76rem;font-weight:600;color:var(--text-primary);text-align:center}.widget-donut-center{display:flex;justify-content:center;margin-bottom:7px}.donut-wrapper{position:relative;display:grid;place-items:center}.donut-svg{display:block}.donut-progress{transition:stroke-dashoffset .35s ease}.donut-center-label{position:absolute;inset:21%;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:999px;background:var(--input-bg);border:1px solid var(--glass-border);box-shadow:inset 0 1px 8px #0000000a;pointer-events:none}.donut-pct{color:var(--text-primary);font-size:.88rem;font-weight:800;line-height:1}.donut-symbol{margin-left:1px;font-size:.62em;font-weight:700;color:var(--text-secondary)}.donut-sub{margin-top:2px;color:var(--text-secondary);font-size:.56rem;font-weight:700;line-height:1}.widget-stats-row{display:flex;justify-content:space-around;padding-top:7px;border-top:1px solid var(--divider)}.w-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.w-stat span{font-size:.86rem;font-weight:700;color:var(--text-primary)}.w-stat label{font-size:.62rem;color:var(--text-secondary)}.streak-header{display:flex;align-items:center;gap:6px}.streak-widget-button{width:100%;border:1px solid var(--glass-border);text-align:left;color:inherit;font:inherit;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.streak-widget-button:hover{border-color:var(--accent-color);box-shadow:0 8px 22px var(--accent-glow);transform:translateY(-1px)}.streak-widget-button:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.streak-modal{width:360px;max-width:90vw;padding:0;overflow:hidden;border:1px solid var(--glass-border);border-radius:14px;background:var(--freq-modal-bg, var(--card-bg));box-shadow:0 20px 60px #0000004d}.streak-modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;border-bottom:1px solid var(--divider)}.streak-modal-title{display:flex;align-items:center;gap:7px}.streak-modal-title h3{margin:0;font-size:.94rem;font-weight:800;color:var(--text-primary)}.streak-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:15px}.streak-stat-card{display:flex;min-height:90px;flex-direction:column;justify-content:center;gap:4px;padding:13px;border:1px solid var(--input-border);border-radius:10px;background:var(--input-bg)}.streak-stat-card.highlight{border-color:var(--accent-color);background:var(--pill-active-bg)}.streak-stat-card.wide{grid-column:1 / -1;min-height:82px}.streak-stat-label{color:var(--text-secondary);font-size:.68rem;font-weight:700}.streak-stat-card strong{color:var(--text-primary);font-size:1.45rem;line-height:1}.streak-stat-card.wide strong{font-size:1.14rem}.streak-stat-card small{color:var(--text-muted);font-size:.64rem;font-weight:700}.ds-fire-btn{display:flex;align-items:center;justify-content:center;gap:5px;width:100%;padding:7px;border-radius:8px;font-size:.72rem;font-weight:600;border:1px solid var(--glass-border);cursor:pointer;transition:all .2s ease;background:var(--glass-bg);color:var(--text-primary)}.ds-fire-btn:hover:not(.fired){background:var(--input-bg);border-color:var(--accent-color);box-shadow:0 4px 12px var(--accent-glow)}.ds-fire-btn.fired{background:#8bc34a1a;border-color:#8bc34a4d;color:#558b2f;cursor:default}.fire-icon{color:#ff6a00}.fire-icon-done{color:#689f38}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:12px}.unfinished-widget{padding:9px;overflow:hidden}.unfinished-widget h3{margin:0;font-size:.78rem;line-height:1.2}.unfinished-tasks-widget{max-height:124px;overflow-y:auto;padding-right:2px;gap:4px}.unfinished-task-row{align-items:flex-start;gap:5px;padding:5px 6px;cursor:grab;transition:border-color .2s ease,background .2s ease,transform .2s ease}.unfinished-task-row:active{cursor:grabbing}.unfinished-task-row.dragging{border-color:var(--accent-color);background:var(--sidebar-active-bg)}.unfinished-task-row .drag-handle{width:12px;padding-top:1px;flex-shrink:0}.unfinished-task-text{font-size:.72rem;line-height:1.28;word-break:keep-all;overflow-wrap:anywhere}.unfinished-migrate-btn{width:21px;height:21px;padding:0;margin-left:1px;flex-shrink:0;align-self:center}.unfinished-empty-praise{text-align:center;padding:10px 6px;color:var(--text-secondary)}.unfinished-empty-emoji{margin-bottom:5px;font-size:1.32rem;line-height:1}.unfinished-empty-copy{max-width:150px;margin:0 auto;font-size:.7rem;line-height:1.35;word-break:keep-all}.unfinished-list{display:flex;flex-direction:column;gap:5px;max-height:160px;overflow-y:auto}.unfinished-task-btn{display:flex;align-items:center;gap:6px;padding:6px 8px;background:var(--input-bg);border:1px solid var(--glass-border);border-radius:6px;color:var(--text-primary);font-size:.74rem;text-align:left;cursor:pointer;transition:all .2s ease}.unfinished-task-btn:hover{background:var(--sidebar-hover-bg);border-color:var(--accent-color);box-shadow:0 2px 8px var(--accent-glow)}.migrate-icon{color:var(--accent-color);flex-shrink:0}.planner-view-tabs{display:flex;align-items:center;gap:3px;padding:3px;border-radius:7px;margin-bottom:0}.tab-row-freq-btn{margin-left:auto}.view-tab-btn{display:flex;align-items:center;gap:4px;padding:5px 8px;background:transparent;border:1px solid transparent;border-radius:6px;color:var(--text-secondary);font-size:.7rem;font-weight:600;cursor:pointer;transition:all .2s ease}.view-tab-btn:hover{background:var(--sidebar-hover-bg)}.view-tab-btn.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text);border-color:var(--pill-active-border)}.planner-view-content{flex-grow:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.weekly-planner-container{display:flex;gap:9px;height:100%;overflow-x:auto;padding-bottom:7px}.weekly-day-col{flex:0 0 calc(25% - 7px);min-width:calc(25% - 7px);display:flex;flex-direction:column;padding:11px;border-radius:10px}.weekly-day-col.today-col{border:1px solid var(--accent-color);background:var(--card-bg);box-shadow:0 4px 16px var(--accent-glow)}.weekly-day-header{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:8px;border-bottom:1px solid var(--divider);margin-bottom:8px}.w-day-name{font-size:.78rem;font-weight:600;color:var(--text-secondary)}.w-day-num{font-size:1rem;font-weight:700;color:var(--text-primary)}.weekly-task-list{display:flex;flex-direction:column;gap:6px;overflow-y:auto}.w-empty{font-size:.74rem;color:var(--text-muted);text-align:center;margin-top:20px}.w-task-item{display:flex;align-items:flex-start;gap:4px;background:var(--input-bg);padding:7px;border-radius:5px;font-size:.76rem;color:var(--text-primary);border:1px solid var(--glass-border)}.w-task-item.checked{opacity:.5;text-decoration:line-through}.w-task-check{font-weight:700;color:var(--accent-color);flex-shrink:0}.weekly-task-item{display:flex;align-items:center;gap:6px;padding:7px 8px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:6px;position:relative;font-size:.76rem;color:var(--text-primary);cursor:grab;transition:opacity .15s,box-shadow .15s,transform .15s;-webkit-user-select:none;user-select:none}.weekly-task-item:hover{box-shadow:0 2px 8px var(--accent-glow);border-color:var(--accent-color)}.weekly-task-item.dragging{opacity:.4;transform:scale(.97);cursor:grabbing}.weekly-task-item.checked{opacity:.45;text-decoration:line-through}.weekly-grip{color:var(--text-muted);flex-shrink:0}.weekly-day-col.drag-over-day{border:2px dashed var(--accent-color)!important;background:var(--pill-active-bg)!important;transition:background .15s,border .15s}.weekly-planner-wrapper{display:flex;flex-direction:column;height:100%;gap:7px;overflow:hidden}.weekly-planner-topbar{display:flex;align-items:center;gap:6px;flex-shrink:0}.freq-tasks-trigger-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:6px;color:var(--text-secondary);font-size:.72rem;font-weight:600;cursor:pointer;transition:all .2s ease;flex-shrink:0}.freq-tasks-trigger-btn:hover{background:var(--sidebar-hover-bg);border-color:var(--accent-color);color:var(--accent-color)}.freq-modal-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.freq-modal{background:var(--freq-modal-bg, var(--card-bg));border:1px solid var(--glass-border);border-radius:16px;width:418px;max-width:90vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;overflow:hidden}.freq-modal-weekly{width:506px}.freq-modal-header{display:flex;align-items:center;justify-content:space-between;padding:17px 22px;border-bottom:1px solid var(--divider);flex-shrink:0}.freq-modal-header h3{margin:0;font-size:1.05rem;font-weight:700;color:var(--text-primary);display:flex;align-items:center}.freq-bulk-toolbar{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:9px 18px;border-bottom:1px solid var(--divider);flex-shrink:0}.freq-toolbar-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:31px;padding:6px 10px;border:1px solid var(--glass-border);border-radius:7px;background:var(--glass-bg);color:var(--text-secondary);font-size:.76rem;font-weight:700;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.freq-toolbar-btn:hover:not(:disabled){background:var(--sidebar-hover-bg);border-color:var(--accent-color);color:var(--accent-color)}.freq-toolbar-btn.danger{color:#d65a4a}.freq-toolbar-btn.danger:hover:not(:disabled){border-color:#d65a4a73;background:#d65a4a17;color:#c64436}.freq-toolbar-btn:disabled{opacity:.45;cursor:not-allowed}.freq-task-list{flex:1;overflow-y:auto;padding:13px 18px;display:flex;flex-direction:column;gap:7px;min-height:60px;max-height:242px}.freq-empty{text-align:center;color:var(--text-muted);font-size:.85rem;padding:20px 0}.freq-task-item{display:flex;align-items:center;gap:11px;padding:10px 13px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;cursor:pointer;transition:all .15s ease}.freq-task-item:hover{background:var(--sidebar-hover-bg);border-color:var(--accent-color)}.freq-task-item.selected{background:var(--pill-active-bg);border-color:var(--accent-color)}.freq-task-item input[type=checkbox]{flex-shrink:0;width:16px;height:16px;accent-color:var(--accent-color);cursor:pointer}.freq-task-label{flex:1;font-size:.94rem;color:var(--text-primary)}.freq-remove-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px 4px;border-radius:4px;display:flex;align-items:center;opacity:0;transition:opacity .15s,color .15s}.freq-task-item:hover .freq-remove-btn{opacity:1}.freq-remove-btn:hover{color:#ff4d4f}.freq-add-new{display:flex;align-items:center;gap:8px;padding:8px 16px;border-top:1px solid var(--divider);flex-shrink:0}.freq-add-new input{flex:1;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;padding:8px 12px;font-size:.85rem;color:var(--text-primary);outline:none;transition:border-color .2s}.freq-add-new input:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-glow)}.freq-add-new input::placeholder{color:var(--text-muted)}.freq-add-new-btn{background:var(--accent-color);color:#fff;border:none;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:opacity .2s}.freq-add-new-btn:disabled{opacity:.4;cursor:not-allowed}.freq-day-selector{padding:10px 16px 4px;border-top:1px solid var(--divider);flex-shrink:0}.freq-day-label{margin:0 0 8px;font-size:.8rem;color:var(--text-secondary);font-weight:500}.freq-day-buttons{display:flex;gap:6px;flex-wrap:wrap}.freq-day-btn{position:relative;padding:6px 10px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;font-size:.82rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .15s ease;min-width:36px;text-align:center}.freq-day-btn:hover:not(.disabled):not(:disabled){border-color:var(--accent-color);color:var(--accent-color)}.freq-day-btn.selected{background:var(--accent-color);border-color:var(--accent-color);color:#fff}.freq-day-btn.disabled,.freq-day-btn:disabled{opacity:.35;cursor:not-allowed}.freq-day-dot{position:absolute;bottom:3px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:currentColor}.freq-select-all-btn{padding:6px 12px;font-size:.78rem}.freq-modal-footer{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--divider);flex-shrink:0}.freq-cancel-btn{flex:1;padding:10px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:8px;color:var(--text-secondary);font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s}.freq-cancel-btn:hover{background:var(--sidebar-hover-bg)}.freq-apply-btn{flex:2;padding:10px;background:var(--accent-color);border:none;border-radius:8px;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .2s,transform .2s}.freq-apply-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.freq-apply-btn:disabled{opacity:.4;cursor:not-allowed}.monthly-planner-container{display:flex;flex-direction:column;height:100%;min-height:0;padding:13px 13px 20px;border-radius:11px;overflow-y:auto;overscroll-behavior:contain}.monthly-header{display:flex;justify-content:center;align-items:center;gap:13px;margin-bottom:11px;flex-shrink:0}.monthly-header h2{margin:0;font-size:1.06rem;color:var(--text-primary);min-width:150px;text-align:center}.monthly-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:22px repeat(6,minmax(84px,auto));gap:7px;flex:0 0 auto;min-height:min-content}.m-day-header{text-align:center;font-size:.74rem;font-weight:600;color:var(--text-secondary);padding-bottom:4px}.m-day-cell{background:var(--input-bg);border:1px solid var(--glass-border);border-radius:7px;padding:7px;display:flex;flex-direction:column;min-height:84px;overflow:hidden}.m-day-cell.other-month{opacity:.4;background:transparent}.m-day-cell.today{border:1px solid var(--accent-color);box-shadow:inset 0 0 0 1px var(--accent-glow)}.m-date-num{font-size:.82rem;font-weight:600;color:var(--text-primary);margin-bottom:4px;display:flex;justify-content:space-between}.m-fire-dot{font-size:.74rem}.m-task-preview{display:flex;flex-direction:column;gap:3px}.m-preview-item{font-size:.68rem;color:var(--text-primary);background:var(--sidebar-hover-bg);padding:3px 5px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-preview-item.checked{opacity:.5;text-decoration:line-through}.m-preview-more{font-size:.64rem;color:var(--accent-color);font-weight:600;text-align:center;margin-top:1px}.archive-container{display:flex;flex-direction:column;gap:10px;height:100%}.archive-tabs-nav{display:flex;gap:7px;margin-bottom:2px}.archive-tab-btn{padding:6px 11px;background:transparent;border:1px solid var(--glass-border);border-radius:7px;color:var(--text-secondary);font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s ease}.archive-tab-btn:hover{background:var(--sidebar-hover-bg);color:var(--text-primary)}.archive-tab-btn.active{background:var(--pill-active-bg);border-color:var(--pill-active-border);color:var(--text-primary)}.files-list-card{flex-grow:1;overflow-y:auto;padding:16px 18px}.pane-title{margin:0 0 5px;font-size:.98rem;font-weight:700;color:var(--text-primary)}.pane-desc{margin:0 0 14px;font-size:.78rem;color:var(--text-secondary);line-height:1.5}.files-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.file-item{display:flex;justify-content:space-between;align-items:center;padding:11px 12px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;cursor:pointer;transition:all .2s ease}.file-item:hover{border-color:var(--accent-color);box-shadow:0 4px 12px var(--accent-glow);transform:translateY(-2px)}.file-info{display:flex;flex-direction:column;gap:4px;overflow:hidden}.file-date{font-size:.66rem;color:var(--text-muted);display:flex;align-items:center;gap:4px}.file-name{font-size:.8rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.accordion-list{display:flex;flex-direction:column;gap:8px}.archive-summary-groups{display:flex;flex-direction:column;gap:16px}.archive-section-title{margin:0 0 7px;color:var(--text-primary);font-size:.82rem;font-weight:700}.accordion-item{border:1px solid var(--glass-border);border-radius:9px;overflow:hidden}.accordion-header{display:flex;justify-content:space-between;align-items:center;padding:11px 13px;background:var(--sidebar-hover-bg);cursor:pointer;-webkit-user-select:none;user-select:none}.accordion-title{font-weight:600;font-size:.84rem;color:var(--text-primary)}.archive-accordion-title{display:flex;flex-direction:column;gap:4px;min-width:0}.archive-title-meta{color:var(--text-secondary);font-size:.68rem;line-height:1.25}.accordion-body{padding:12px;background:var(--glass-bg);border-top:1px solid var(--glass-border)}.empty-state-mini{text-align:center;padding:22px;color:var(--text-muted);font-style:italic;background:var(--input-bg);border-radius:9px;font-size:.78rem;border:1px dashed var(--input-border)}.empty-state-mini.compact{padding:10px;font-size:.74rem}.archive-date-summary{display:flex;flex-direction:column;gap:12px}.archive-summary-metrics{display:flex;flex-wrap:wrap;gap:6px}.archive-summary-metrics span{padding:4px 7px;border:1px solid var(--glass-border);border-radius:999px;color:var(--text-secondary);background:var(--input-bg);font-size:.68rem;line-height:1.2}.archive-task-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.archive-task-section{border:1px solid var(--glass-border);border-radius:7px;padding:10px;background:var(--input-bg)}.archive-task-section h4,.archive-source-files h4{margin:0 0 8px;color:var(--text-primary);font-size:.78rem}.archive-task-list{display:flex;flex-direction:column;gap:5px;margin:0;padding:0;list-style:none}.archive-task-row{display:flex;align-items:flex-start;gap:6px;color:var(--text-primary);font-size:.78rem;line-height:1.34}.archive-task-icon{flex-shrink:0;margin-top:1px;color:var(--text-secondary)}.archive-task-icon.done{color:var(--accent-color)}.archive-source-files{display:flex;flex-direction:column;gap:6px}.activity-log-list{display:flex;flex-direction:column;gap:8px}.activity-log-row{display:flex;gap:8px;align-items:flex-start;padding:10px;border:1px solid var(--glass-border);border-radius:7px;background:var(--input-bg)}.activity-log-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:var(--sidebar-active-bg);color:var(--accent-color);flex-shrink:0}.activity-log-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.activity-log-copy strong{color:var(--text-primary);font-size:.78rem;line-height:1.35}.activity-log-copy span{color:var(--text-secondary);font-size:.66rem;line-height:1.3}.modal-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{width:100%;max-width:560px;max-height:85vh;display:flex;flex-direction:column;position:relative;padding:24px;overflow-y:auto}.close-modal-btn{position:absolute;top:16px;right:16px;color:var(--text-muted)}.close-modal-btn:hover{color:var(--text-primary);background:var(--sidebar-hover-bg)}.modal-title{margin:0 0 6px;font-size:1.08rem;color:var(--text-primary)}.file-preview-meta{font-size:.72rem;color:var(--text-secondary);margin-bottom:14px}.file-preview-content{background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;padding:12px;font-family:monospace;font-size:.78rem;line-height:1.6;color:var(--text-primary);white-space:pre-wrap;overflow-y:auto;max-height:400px}
