@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800;900&display=swap";:root{--mustard:#e8a020;--mustard-light:#f5c355;--mustard-dark:#c4831a;--orange:#d4621a;--orange-dark:#a84912;--bg-base:#0c0702;--bg-card:#180f04cc;--bg-input:#0c0702b3;--bg-hover:#e8a0200f;--border-subtle:#e8a0201f;--border-medium:#e8a02040;--border-strong:#e8a02080;--text-primary:#fffdf5;--text-secondary:#c9a86a;--text-muted:#7a6040;--glow-mustard:#e8a02033;--glow-orange:#d4621a40;--shadow-card:0 20px 60px #0009, 0 1px 0 #e8a02014 inset;--grad-brand:linear-gradient(135deg, #e8a020 0%, #d4621a 100%);--grad-bg:linear-gradient(160deg, #0c0702 0%, #150b02 50%, #0c0702 100%);--grad-card-top:linear-gradient(180deg, #e8a0200a 0%, transparent 60%);--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--radius-xl:28px;--font:"Outfit", sans-serif}*,:before,:after{box-sizing:border-box;-webkit-font-smoothing:antialiased;margin:0;padding:0}body{font-family:var(--font);background:var(--grad-bg);color:var(--text-primary);background-attachment:fixed;min-height:100vh;overflow-x:hidden}.bg-blob{filter:blur(130px);z-index:-1;pointer-events:none;border-radius:50%;animation:30s ease-in-out infinite alternate blob-drift;position:fixed}.blob-1{background:radial-gradient(circle,#e8a0202e 0%,#0000 70%);width:700px;height:700px;top:-200px;right:-150px}.blob-2{background:radial-gradient(circle,#d4621a1f 0%,#0000 70%);width:600px;height:600px;animation-delay:-10s;bottom:-150px;left:-100px}@keyframes blob-drift{0%{transform:translate(0)scale(1)}to{transform:translate(60px,80px)scale(1.08)}}.glass{background:var(--bg-card);-webkit-backdrop-filter:blur(28px)saturate(160%);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);position:relative;overflow:hidden}.glass:before{content:"";background:var(--grad-card-top);pointer-events:none;border-radius:inherit;position:absolute;inset:0}.app-layout{grid-template-columns:280px 1fr;max-width:1600px;min-height:100vh;margin:0 auto;display:grid}.main-content{flex-direction:column;gap:1.5rem;padding:1.5rem 2.5rem;display:flex}.sidebar{border-right:1px solid var(--border-subtle);background:#0c07024d;flex-direction:column;gap:2rem;padding:2rem 1.5rem;display:flex}@media (width<=1024px){.app-layout{grid-template-columns:1fr!important}.sidebar{display:none!important}}@media (width<=768px){.main-content{gap:.75rem;padding-top:calc(env(safe-area-inset-top,0px) + .75rem)!important;padding-left:1rem!important;padding-right:1rem!important;padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))!important}.view-container{min-height:unset}}.text-gradient{background:var(--grad-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.section-title{letter-spacing:-.03em;color:var(--text-primary);font-size:1.35rem;font-weight:800}.section-icon{border-radius:var(--radius-sm);width:40px;height:40px;color:var(--mustard);background:#e8a0201f;flex-shrink:0;justify-content:center;align-items:center;display:flex}.btn{border-radius:var(--radius-md);cursor:pointer;font-family:var(--font);letter-spacing:.01em;-webkit-user-select:none;user-select:none;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9rem;font-weight:700;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative;overflow:hidden}.btn-primary{background:var(--grad-brand);color:#0c0702;box-shadow:0 6px 20px var(--glow-mustard)}.btn-primary:hover{filter:brightness(1.12);box-shadow:0 10px 28px var(--glow-mustard);transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}.btn-ghost{color:var(--mustard);border:1px solid var(--border-medium);background:#e8a02012}.btn-ghost:hover{border-color:var(--border-strong);background:#e8a02024}.btn-icon{border-radius:var(--radius-md);flex-shrink:0;width:44px;height:44px;padding:0}input[type=text],textarea{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-family:var(--font);outline:none;padding:.85rem 1.1rem;font-size:.95rem;transition:border-color .2s,box-shadow .2s}input[type=text]::placeholder,textarea::placeholder{color:var(--text-muted)}input[type=text]:focus,textarea:focus{border-color:var(--mustard);box-shadow:0 0 0 3px var(--glow-mustard)}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#e8a02040;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--mustard-dark)}.badge{letter-spacing:.06em;text-transform:uppercase;border-radius:99px;align-items:center;gap:.3rem;padding:.25rem .7rem;font-size:.72rem;font-weight:800;display:inline-flex}.badge-mustard{color:var(--mustard);background:#e8a02026;border:1px solid #e8a02040}.badge-orange{color:#f07040;background:#d4621a26;border:1px solid #d4621a40}.badge-project{color:var(--text-secondary);background:#ffffff0d;border:1px solid #ffffff1a;padding:.15rem .5rem;font-size:.65rem}.nav-item{border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;border:1px solid #0000;align-items:center;gap:.75rem;padding:.85rem 1rem;font-size:.9rem;font-weight:700;transition:all .2s;display:flex}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item.active{color:var(--mustard);background:#e8a0201a;border-color:#e8a02033}.level-tag{color:var(--mustard);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem;font-size:.65rem;font-weight:900;display:block}.divider{background:var(--border-subtle);height:1px;margin:1.25rem 0}.bottom-nav{display:none}@media (width<=768px){.bottom-nav{z-index:200;-webkit-backdrop-filter:blur(24px);border-top:1px solid var(--border-subtle);padding:.5rem 0 calc(.5rem + env(safe-area-inset-bottom));background:#0c0702d9;justify-content:space-around;align-items:flex-start;gap:0;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav-item{color:var(--text-muted);font-family:var(--font);cursor:pointer;letter-spacing:.01em;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:.2rem;padding:.4rem .25rem;font-size:.62rem;font-weight:600;transition:color .15s;display:flex;position:relative}.bottom-nav-item.active{color:var(--mustard)}.bottom-nav-dot{background:var(--mustard);border-radius:50%;width:4px;height:4px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav-drawer{bottom:calc(70px + env(safe-area-inset-bottom));z-index:300;-webkit-backdrop-filter:blur(28px);border:1px solid var(--border-medium);background:#140c04f7;border-radius:20px;flex-direction:column;gap:.5rem;max-height:70vh;padding:1rem;display:flex;position:fixed;left:1rem;right:1rem;overflow-y:auto;box-shadow:0 -8px 40px #0009}.bottom-nav-drawer-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;align-items:center;margin-bottom:.25rem;font-size:.75rem;font-weight:800;display:flex}.bottom-nav-drawer-close{color:var(--text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;display:flex}.bottom-nav-drawer-section{flex-direction:column;gap:.2rem;display:flex}.bottom-nav-drawer-label{color:var(--mustard);text-transform:uppercase;letter-spacing:.1em;padding:.4rem .5rem .1rem;font-size:.62rem;font-weight:900;display:block}.bottom-nav-drawer-item{color:var(--text-secondary);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:10px;align-items:center;gap:.65rem;padding:.65rem .75rem;font-size:.9rem;font-weight:600;transition:background .15s,color .15s;display:flex}.bottom-nav-drawer-item:hover,.bottom-nav-drawer-item:active{background:var(--bg-hover);color:var(--text-primary)}.bottom-nav-drawer-item.active{color:var(--mustard);background:#e8a0201a}.bottom-nav-gcal-btn{font-size:.85rem;font-weight:700;font-family:var(--font);color:var(--text-muted);border:1px solid var(--border-subtle);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ffffff0a;border-radius:10px;align-items:center;gap:.6rem;width:100%;padding:.65rem .75rem;transition:all .15s;display:flex}.bottom-nav-gcal-btn.connected{color:#4ade80;background:#4ade800f;border-color:#4ade8040}.bottom-nav-signout-btn{cursor:pointer;width:100%;font-size:.85rem;font-weight:600;font-family:var(--font);color:#ff6464bf;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #ff505033;border-radius:10px;align-items:center;gap:.6rem;padding:.65rem .9rem;transition:background .15s,color .15s;display:flex}.bottom-nav-signout-btn:active{color:#ff6464;background:#ff50501a}.app-header{display:none!important}.auth-screen{box-sizing:border-box;align-items:flex-start;min-height:100vh;overflow-y:auto;padding-top:calc(env(safe-area-inset-top,0px) + 1.5rem)!important;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 1.5rem)!important}.task-text{word-break:break-word;line-height:1.35;white-space:normal!important;text-overflow:unset!important;overflow:visible!important}}.mobile-fab{display:none}@media (width<=768px){.mobile-fab{bottom:calc(80px + env(safe-area-inset-bottom,0px));background:var(--grad-brand);color:#0c0702;cursor:pointer;z-index:150;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:transform .15s,box-shadow .15s;display:flex;position:fixed;right:18px;box-shadow:0 8px 24px #e8a02073,0 2px 8px #0006}.mobile-fab:active{transform:scale(.93);box-shadow:0 4px 12px #e8a0204d}}.mobile-input-overlay{display:none}@media (width<=768px){.mobile-input-overlay{z-index:400;pointer-events:auto;background:#0009;align-items:flex-end;display:flex;position:fixed;inset:0}.mobile-input-sheet{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);width:100%;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));background:#120b04fa;border-top:1px solid #e8a02033;border-radius:20px 20px 0 0;max-height:80vh;overflow-y:auto;box-shadow:0 -20px 60px #0009}.universal-input-container{max-width:100%!important}.universal-input-container input{padding:.85rem .85rem .85rem 2.6rem!important;font-size:1rem!important}.universal-input-submit{min-width:48px;letter-spacing:0!important;border-radius:14px!important;height:48px!important;padding:0 1rem!important;font-size:0!important}.universal-input-submit-text{display:none}.universal-input-submit-icon{display:block}}@media (width>=769px){.universal-input-submit-icon{display:none}}@media (width<=768px){.timeline-board-grid{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.75rem!important;padding:0 .25rem .75rem!important;display:flex!important;overflow-x:auto!important}.timeline-board-grid::-webkit-scrollbar{display:none}.timeline-board-col{scroll-snap-align:start;flex-shrink:0;min-width:calc(85vw - .75rem);max-width:calc(85vw - .75rem)}.cal-cell{cursor:pointer!important;min-height:52px!important;max-height:52px!important;padding:.3rem!important}.cal-cell-labels{display:none}.day-panel-backdrop{display:block}.day-panel{max-height:65vh;border-left:none!important;border-top:1px solid var(--border-subtle)!important;border-radius:20px 20px 0 0!important;width:100%!important;inset:auto 0 0!important;box-shadow:0 -20px 60px #0009!important}}@media (width>=769px){.day-panel-backdrop{display:none}}@media (width<=768px){.upcoming-header{z-index:20;-webkit-backdrop-filter:blur(16px);background:#0c0702f5;margin-left:-1rem;margin-right:-1rem;padding:.5rem 1rem .75rem;top:calc(env(safe-area-inset-top,0px) + .75rem)!important;flex-direction:column!important;align-items:flex-start!important;gap:.4rem!important;margin-bottom:.75rem!important;position:sticky!important}.upcoming-tabs{gap:.4rem;width:100%;display:flex}.upcoming-tabs button{text-align:center;flex:1;padding:.4rem .5rem!important}.habit-tracker-card{overflow:hidden;padding:1.25rem 1rem!important}.habit-tracker-card .section-title{font-size:1.1rem!important}.weekly-tracker{width:100%;overflow:hidden}.weekly-tracker>div:last-child{-webkit-overflow-scrolling:touch;overflow-x:auto}.weekly-table{font-size:.75rem;min-width:unset!important}.weekly-table th,.weekly-table td{padding:.3rem .1rem!important}.weekly-count-col{display:none}.weekly-table tbody td>span{width:16px!important;height:16px!important}.main-content>*{box-sizing:border-box;max-width:100%}.main-content .glass{box-sizing:border-box;min-width:0;max-width:100%}}
