.bottom-nav-label{font-family:var(--font-brand);font-weight:var(--brand-weight);color:inherit;letter-spacing:.06em}*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f7f5f0;--bg2:#f0ede6;--bg3:#e8e4dc;--surface:#fff;--surface2:#faf8f4;--border:rgba(100,150,105,.15);--border2:rgba(100,150,105,.28);--text:#1a2e1c;--text2:#4a6e4e;--text3:#8aae8e;--accent:#7a9e7e;--accent2:#9ec2a2;--accent3:#eef5ee;--teal:#5a9b7e;--teal2:#ebf6f0;--coral:#c25f45;--coral2:#fceee8;--amber:#c49245;--amber2:#fdf6e8;--sage:#5a8e5e;--sage2:#e8f4e8;--shadow-sm:0 1px 4px rgba(50,100,55,.07),0 1px 2px rgba(50,100,55,.04);--shadow:0 2px 12px rgba(50,100,55,.1),0 1px 4px rgba(50,100,55,.05);--radius-sm:0.75rem;--radius:1rem;--radius-lg:1.5rem;--font-brand:"Pretendard",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--brand-color:#4a7558;--brand-weight:300;--brand-spacing:0.3em;--font-ui:"Pretendard",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-display:"Gowun Batang","Apple SD Gothic Neo",serif;--font-numeric:"Pretendard",-apple-system,sans-serif;--fs-display:clamp(1.75rem,3vw + 1rem,2.25rem);--fs-h2:1.5rem;--fs-title:1.0625rem;--fs-body:1rem;--fs-caption:0.875rem;--fs-chip:0.8125rem;--fs-label:0.6875rem;--lh-tight:1.15;--lh-display:1.28;--lh-ui-en:1.5;--lh-ui-ko:1.7;--lh-body:1.75}@media (prefers-color-scheme:dark){:root{--bg:#f7f5f0;--bg2:#f0ede6;--bg3:#e8e4dc;--surface:#fff;--surface2:#faf8f4;--border:rgba(100,150,105,.15);--border2:rgba(100,150,105,.28);--text:#1a2e1c;--text2:#4a6e4e;--text3:#8aae8e;--accent:#7a9e7e;--accent2:#9ec2a2;--accent3:#eef5ee;--teal:#5a9b7e;--teal2:#ebf6f0;--coral:#c25f45;--coral2:#fceee8;--amber:#c49245;--amber2:#fdf6e8;--sage:#5a8e5e;--sage2:#e8f4e8;--shadow-sm:0 1px 4px rgba(50,100,55,.07);--shadow:0 2px 12px rgba(50,100,55,.1)}}html{font-size:16px}@media (min-width:768px){html{font-size:20px}}@media (min-width:1280px){html{font-size:22px}}@media (min-width:1600px){html{font-size:24px}}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:lang(ko){line-height:var(--lh-ui-ko)}button,input,select,textarea{font-family:var(--font-ui)}.date,.num,.percent,.stat-value,[data-numeric],time{font-family:var(--font-numeric);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}button{-webkit-tap-highlight-color:transparent}.app-desktop{display:none}.app-mobile{display:block}@media (min-width:768px){.app-desktop{display:flex;min-height:100vh}.app-mobile{display:none}}.sidebar{width:220px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:32px 16px 24px;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto}@media (min-width:768px){.sidebar{width:320px;padding:36px 24px 28px}}@media (min-width:1280px){.sidebar{width:340px;padding:40px 28px 32px}}.sidebar-logo{display:flex;align-items:center;gap:10px;padding:4px 8px 8px;margin-bottom:28px;cursor:pointer;border-radius:var(--radius-sm);transition:background .15s;overflow:visible;min-height:80px;height:auto}.sidebar-logo:hover{background:var(--bg2)}@media (min-width:768px){.sidebar-logo{gap:14px;margin-bottom:36px;min-height:100px}}.sidebar-logo-mark{font-size:18px;color:var(--sage)}.sidebar-logo-name{font-family:var(--font-brand);font-style:normal;font-weight:var(--brand-weight);font-size:1rem;color:var(--brand-color);letter-spacing:var(--brand-spacing);text-transform:uppercase}.sidebar-nav{display:flex;flex-direction:column;gap:4px;flex:1 1}.sidebar-nav-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--radius-sm);background:none;border:none;cursor:pointer;width:100%;text-align:left;color:var(--text3);font-size:var(--fs-caption);transition:all .15s ease;font-family:var(--font-ui)}.sidebar-nav-item:hover{background:var(--bg2);color:var(--text2)}.sidebar-nav-item.active{background:var(--sage2);color:var(--brand-color);font-weight:400;letter-spacing:.04em}.sidebar-nav-icon{font-size:13px;width:18px;text-align:center;flex-shrink:0}@media (min-width:768px){.sidebar-nav{gap:6px}.sidebar-nav-item{padding:12px 16px;gap:14px}.sidebar-nav-icon{font-size:16px;width:22px}}.sidebar-bottom{display:flex;flex-direction:column;gap:10px;padding-top:16px;border-top:1px solid var(--border)}@media (min-width:768px){.sidebar-bottom{gap:12px;padding-top:20px}}.sidebar-add-btn{width:100%;padding:10px 14px;background:var(--sage);border:none;border-radius:var(--radius-sm);color:#fff;font-size:var(--fs-caption);font-weight:500;cursor:pointer;text-align:left;font-family:var(--font-ui);transition:opacity .15s}.sidebar-add-btn:hover{opacity:.88}@media (min-width:768px){.sidebar-add-btn{padding:13px 18px}}.sidebar-actions{display:flex;gap:8px}.sidebar-ghost-btn{flex:1 1;padding:7px 10px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text3);font-size:var(--fs-label);cursor:pointer;font-family:var(--font-ui);transition:all .15s}.sidebar-ghost-btn:hover{background:var(--bg2);color:var(--text2)}@media (min-width:768px){.sidebar-ghost-btn{padding:9px 12px}}.desktop-main{flex:1 1;min-width:0;overflow-y:auto;height:100vh}.desktop-right{width:280px;flex-shrink:0;padding:36px 20px;border-left:1px solid var(--border);overflow-y:auto;height:100vh;position:-webkit-sticky;position:sticky;top:0}@media (min-width:768px){.desktop-right{width:320px;padding:40px 24px}}@media (min-width:1280px){.desktop-right{width:360px;padding:44px 28px}}@media (max-width:1100px){.desktop-right{display:none}}div[style*="position: fixed"][style*="bottom: 0"],div[style*="position:fixed"][style*="bottom:0"]{z-index:100!important}input[type=range]{accent-color:var(--sage)}