.cl-formButtonPrimary{background-color:#00b4b4!important;color:#fff!important}.cl-formButtonPrimary:hover,.cl-formButtonPrimary:focus,.cl-formButtonPrimary:active{background-color:#009898!important}.mlai-btn-teal{background:#00b4b4;color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600;cursor:pointer;align-self:flex-start;transition:background .2s}.mlai-btn-teal:hover{background:#009898}.mlai-btn-teal.saved{background:#16a34a}.mlai-btn-teal.saved:hover{background:#15803d}.mlai-btn-teal.inactive{filter:brightness(.55);cursor:default;pointer-events:none}.cl-userButtonBox,.cl-userButtonTrigger,.cl-userButtonAvatarBox,.cl-avatarBox,[data-localization-key="userButton.action__manageAccount"]{display:none!important}*{margin:0;padding:0;box-sizing:border-box}:root,[data-theme=dark]{--bg: #0d1117;--surface: #131c27;--surface-hover: #1a2535;--border: #1e2d3d;--text: #e2eaf4;--text-muted: #8ba3bc;--accent: #00B4B4;--accent-glow: rgba(0, 180, 180, .15);--accent-dim: rgba(0, 180, 180, .12);--success: #22c55e;--radius: 12px;--radius-sm: 8px;--radius-xs: 6px;--border-subtle: rgba(30, 45, 61, .5);--text-dim: #5a7085;--lesson-link: #8ba3bc}[data-theme=light]{--bg: #f5f5f7;--surface: #ffffff;--surface-hover: #ebebef;--border: #d4d4d8;--border-subtle: rgba(212, 212, 216, .5);--text: #18181b;--text-muted: #71717a;--text-dim: #a1a1aa;--accent: #6366f1;--accent-glow: rgba(99, 102, 241, .12);--accent-dim: rgba(99, 102, 241, .08);--success: #22c55e;--lesson-link: #48484c;--radius: 12px;--radius-sm: 8px;--radius-xs: 6px}body{font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;transition:background .2s,color .2s}.app{max-width:1280px;margin:0 auto;padding:0 20px 4rem;min-height:100vh}.app-content{max-width:860px;margin:0 auto}.header{display:flex;align-items:center;height:60px;border-bottom:none;position:relative;background:var(--bg)}.header:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:100vw;height:1px;background:var(--border)}.app .header{margin-bottom:2rem}.logo{font-size:15px;font-weight:600;letter-spacing:-.02em;display:flex;align-items:center;gap:10px;flex:1;min-width:0}.logo-icon{width:28px;height:28px;object-fit:contain}.header-center{display:flex;align-items:center;gap:6px;flex:1;justify-content:center}.header-nav-link{padding:6px 16px;border-radius:14px;font-size:14px;font-weight:500;color:var(--text-muted);cursor:pointer;transition:color .15s,background .15s;border:none;background:none;font-family:inherit;text-decoration:none}.header-nav-link:hover{color:var(--text);background:var(--surface-hover);text-decoration:none}.header-nav-link.active{color:#0d1117;background:var(--accent);font-weight:600;text-decoration:none}.header-right{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex:1;min-width:0}.header-icon-group{display:flex;align-items:center;gap:0px}.date{font-size:13px;color:var(--text-dim)}.header-icon-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--text-dim);background:none;border:none;cursor:pointer;transition:color .15s,background .15s;position:relative}.header-icon-btn:hover{color:var(--text-muted);background:var(--surface-hover)}.quarter-badge{font-size:11px;font-weight:600;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-glow);border-radius:4px;padding:2px 7px;letter-spacing:.05em;cursor:pointer}.nav-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.375rem;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.nav-btn:hover,.nav-btn.active{color:var(--text);background:var(--surface-hover)}.avatar-dropdown-wrap{position:relative;margin-left:6px}.avatar-dropdown{position:absolute;top:calc(100% + 14px);right:0;width:222px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 32px #0000008c,0 2px 8px #00000059,0 0 0 1px var(--accent-dim);z-index:1000;overflow:hidden}.avatar-dropdown-caret{position:absolute;top:-7px;right:14px;width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid var(--border);z-index:1001}.avatar-dropdown-caret:after{content:"";position:absolute;top:2px;left:-6px;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid var(--surface)}.avatar-dropdown-email{padding:13px 15px 12px;font-size:11.5px;font-weight:400;color:var(--text-dim);border-bottom:1px solid var(--border-subtle);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar-dropdown-items{padding:5px 0}.avatar-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:9px 15px;background:none;border:none;color:var(--text);font-size:13.5px;font-family:inherit;cursor:pointer;transition:background .15s ease,color .15s ease}.avatar-dropdown-item:hover{background:var(--surface-hover)}.avatar-dropdown-item .dropdown-icon{width:16px;height:16px;flex-shrink:0;color:var(--text-dim);transition:color .15s ease}.avatar-dropdown-item:hover .dropdown-icon{color:var(--text-muted)}.avatar-dropdown-divider{height:1px;background:var(--border-subtle);margin:4px 0}.avatar-dropdown-item.signout{color:#f87171}.avatar-dropdown-item.signout .dropdown-icon{color:#f871718c}.avatar-dropdown-item.signout:hover{background:#f8717112}.avatar-dropdown-item.signout:hover .dropdown-icon{color:#f87171}.avatar-edit-overlay{opacity:0}label:hover .avatar-edit-overlay{opacity:1}.dm-badge{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;background:#ef4444;border-radius:50%;font-size:10px;font-weight:700;color:#fff;display:flex;align-items:center;justify-content:center;line-height:1;padding:0 3px}.section-label{display:block;font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.75rem}.home-section-label{display:flex;align-items:center;gap:8px;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);margin-bottom:.75rem}.home-section-label:after{content:"";flex:1;height:1px;background:linear-gradient(to right,var(--border-subtle),transparent)}.home-section-icon{width:14px;height:14px;opacity:.5;flex-shrink:0}.north-star-challenges{margin-bottom:2.5rem}.north-star-challenges.two-col{display:grid;grid-template-columns:13fr 7fr;gap:1rem;align-items:stretch;min-height:120px;transition:none}.nsc-left,.nsc-right{min-width:0;min-height:130px;display:flex;flex-direction:column}.nsc-right{overflow:hidden}.challenges-stack{display:flex;flex-direction:column;gap:.75rem;flex:1;overflow:hidden}.challenge-home-card{background:var(--surface);border:1px solid var(--accent-dim);border-radius:var(--radius);padding:1rem;cursor:pointer;transition:background .15s,border-color .15s;display:flex;flex-direction:column;align-items:center;text-align:center;min-height:130px;gap:.5rem}.challenge-home-card:hover{border-color:var(--accent);background:var(--surface-hover)}.challenge-home-body{display:flex;flex-direction:column;align-items:center;gap:0}.challenge-home-day-label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);line-height:1}.challenge-home-card.not-logged-today .challenge-home-day-label{color:var(--text-dim)}.challenge-home-count{font-weight:800;color:var(--accent);line-height:1.1;font-variant-numeric:tabular-nums}.challenge-home-count.milestone{color:#f5c400}.challenge-home-card.not-logged-today .challenge-home-count{color:var(--text-dim)}.challenge-home-count.count-fill-anim{position:relative;color:transparent;background:linear-gradient(to top,var(--accent) 50%,var(--accent) 50%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:countFillUp .6s ease-out forwards,countPulse .2s ease-in-out .6s;background-size:100% 200%;background-position:0% 100%}.challenge-home-count.milestone.count-fill-anim{background:linear-gradient(to top,#f5c400 50% 50%);background-clip:text;-webkit-background-clip:text;background-size:100% 200%;background-position:0% 100%}@keyframes countFillUp{0%{background-position:0% 100%}to{background-position:0% 0%}}@keyframes countPulse{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}.challenge-home-count.count-drain-anim{animation:countDrain .3s ease-out forwards}.challenge-home-count.milestone.count-drain-anim{animation:countDrainGold .3s ease-out forwards}@keyframes countDrain{0%{color:var(--accent)}to{color:var(--text-dim)}}@keyframes countDrainGold{0%{color:#f5c400}to{color:var(--text-dim)}}@keyframes skeletonPulse{0%,to{opacity:.4}50%{opacity:.7}}.skeleton-pulse{animation:skeletonPulse 1.5s infinite ease-in-out}.home-content{transition:opacity .3s ease-in}.challenge-home-name{font-size:.75rem;color:var(--text-muted);margin-top:.125rem}.challenge-home-dot-row{display:flex;align-items:center;gap:.375rem}.challenge-home-dot-label{font-size:.6875rem;color:var(--text-muted)}@media(max-width:640px){.north-star-challenges.two-col{grid-template-columns:1fr}}.north-star{margin-bottom:2.5rem}.north-star-card{background:var(--surface);border:1px solid rgba(245,192,0,.12);border-radius:var(--radius);padding:1.25rem;flex:1;min-height:80px;height:100%;transition:none}.north-star-card.clickable{cursor:pointer;transition:border-color .15s,background .15s}.north-star-card.clickable:hover{border-color:var(--accent);background:var(--surface-hover)}.north-star-title{font-size:1.75rem;font-weight:700;letter-spacing:-.03em;line-height:1.2}.nsg-empty-card{border:2px dashed rgba(245,192,0,.4);background:#f5c0000a;border-radius:var(--radius);padding:1.5rem 1.25rem;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;transition:border-color .2s,transform .2s,background .2s}.nsg-empty-card:hover{border-color:#f5c000b3;background:#f5c00012;transform:scale(1.01)}.nsg-empty-star{font-size:1.5rem;color:#f5c000;line-height:1}.nsg-empty-title{color:#f5c000;font-weight:600;font-size:1rem}.nsg-empty-subtitle{color:var(--text-dim);font-size:.82rem;text-align:center;line-height:1.4}.quarter-setup-empty-card{border:2px dashed rgba(56,189,248,.4);background:#38bdf80a;border-radius:var(--radius);padding:1.5rem 1.25rem;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;transition:border-color .2s,transform .2s,background .2s}.quarter-setup-empty-card:hover{border-color:#38bdf8b3;background:#38bdf812;transform:scale(1.01)}.quarter-setup-empty-title{color:#38bdf8;font-weight:600;font-size:1rem}.quarter-setup-empty-subtitle{color:var(--text-dim);font-size:.82rem;text-align:center;line-height:1.4}.goals{margin-bottom:2.5rem}.goals-grid{display:grid;gap:.75rem}.goals-grid-1{grid-template-columns:1fr}.goals-grid-2{grid-template-columns:repeat(2,1fr)}.goals-grid-3{grid-template-columns:repeat(3,1fr)}.goal-card{background:var(--surface);border:1px solid rgba(245,192,0,.28);border-radius:var(--radius);padding:1rem;font-size:1.0625rem;font-weight:600;line-height:1.3}.goal-card-label{display:block;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.25rem}.practices{margin-bottom:2rem}.practices-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.practices-count{font-size:.875rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.practices-list{display:flex;flex-direction:column;gap:2px}.practice-item{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:var(--surface);border-radius:8px;cursor:pointer;transition:background .15s;-webkit-user-select:none;user-select:none}.practice-item:hover{background:var(--surface-hover)}.practice-item input[type=checkbox]{display:none}.checkmark{width:20px;height:20px;border-radius:6px;border:2px solid var(--border);flex-shrink:0;transition:all .15s;position:relative}.practice-item.done .checkmark{background:var(--accent);border-color:var(--accent)}.practice-item.done .checkmark:after{content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.practice-name{font-size:.9375rem;transition:opacity .15s}.practice-item.done .practice-name{opacity:.5}.settings-page-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.back-btn{background:none;border:none;color:var(--text);font-size:1.125rem;font-weight:600;font-family:inherit;cursor:pointer;padding:.5rem 0;transition:color .15s}.back-btn:hover{color:var(--accent)}.settings-title{font-size:1.5rem;font-weight:700;letter-spacing:-.03em;position:relative;display:inline-block}.settings-title:after{content:"";position:absolute;bottom:-8px;left:0;width:32px;height:3px;border-radius:2px;background:var(--accent)}.settings-section{margin-bottom:1.75rem}.settings-section-label{display:flex;align-items:center;gap:10px;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);margin-bottom:.75rem;padding-left:2px}.settings-section-label:after{content:"";flex:1;height:1px;background:linear-gradient(to right,var(--border-subtle),transparent)}.settings-section-icon{width:16px;height:16px;opacity:.5;flex-shrink:0}.settings-card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius);overflow:hidden;box-shadow:0 2px 8px #00000026;transition:border-color .3s ease}.settings-card:hover{border-color:var(--border)}.setting-row{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;transition:background .15s}.settings-card .setting-row:not(:last-child){border-bottom:1px solid var(--border-subtle)}.setting-row:hover{background:var(--surface-hover)}.setting-text{flex:1;min-width:0}.setting-label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.125rem}.setting-description{display:block;font-size:.8125rem;color:var(--text-muted);line-height:1.4}.setting-inline-link{display:inline-flex;align-items:center;gap:4px;margin-top:6px;font-size:.8125rem;font-weight:500;color:var(--accent);cursor:pointer;transition:opacity .15s ease}.setting-inline-link:hover{opacity:.8}.setting-inline-link svg{width:14px;height:14px;transition:transform .15s}.setting-inline-link:hover svg{transform:translate(2px)}.toggle-switch{width:44px;height:24px;background:var(--border);border-radius:12px;position:relative;cursor:pointer;transition:background .25s ease,box-shadow .25s ease;flex-shrink:0}.toggle-switch.on{background:var(--accent);box-shadow:0 0 12px var(--accent-glow)}.toggle-knob{width:18px;height:18px;background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d;transition:transform .25s cubic-bezier(.4,0,.2,1)}.toggle-switch.on .toggle-knob{transform:translate(20px)}.section-order-control{display:flex;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:3px;flex-shrink:0}.order-btn{padding:.375rem .875rem;font-size:.8125rem;font-weight:500;font-family:inherit;background:transparent;border:none;border-radius:6px;color:var(--text-muted);cursor:pointer;transition:all .2s ease;white-space:nowrap}.order-btn.active{background:var(--accent);color:#fff;box-shadow:0 1px 4px var(--accent-glow)}.order-btn:not(.active):hover{color:var(--text);background:var(--surface-hover)}.week-day-select{padding:.4375rem .75rem;font-size:.8125rem;font-weight:500;font-family:inherit;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);cursor:pointer;outline:none;transition:border-color .2s,box-shadow .2s;flex-shrink:0}.week-day-select:hover{border-color:var(--text-dim)}.week-day-select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}.week-day-select option{background:var(--surface);color:var(--text)}.execution-score{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.execution-score-bar{flex:1;height:8px;background:var(--surface);border-radius:4px;overflow:hidden;border:1px solid var(--border)}.execution-score-fill{height:100%;background:var(--accent);border-radius:4px;transition:width .3s ease}.execution-score-value{font-size:1.5rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em;min-width:3.5rem;text-align:right}.weekly-actions{margin-bottom:2rem}.week-nav{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.week-arrow{background:none;border:1px solid var(--border);border-radius:8px;color:var(--text-muted);cursor:pointer;padding:.375rem;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0}.week-arrow:hover:not(:disabled){color:var(--text);border-color:var(--text-muted);background:var(--surface)}.week-arrow:disabled{opacity:.25;cursor:not-allowed}.week-header{display:flex;align-items:flex-end;gap:.75rem;flex:1}.week-number{font-size:2rem;font-weight:800;letter-spacing:-.03em;line-height:1}.week-range-group{display:flex;flex-direction:column;align-items:center;padding-bottom:2px}.week-range{font-size:.875rem;color:var(--text-muted);line-height:1}.week-intention{display:block;color:#f5c000;font-style:italic;font-weight:500;font-size:.75rem;letter-spacing:.02em;text-align:center;opacity:.85;margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px;width:100%}.past-week-banner{display:flex;align-items:center;justify-content:space-between;padding:.625rem 1rem;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:8px;margin-bottom:1.5rem;font-size:.8125rem;color:var(--text-muted)}.past-week-back{background:none;border:none;color:var(--text);font-size:.9375rem;font-weight:600;font-family:inherit;cursor:pointer;padding:0;transition:color .15s}.past-week-back:hover{color:var(--accent)}.weekly-actions .practice-item,.practices .practice-item{display:flex;align-items:center;justify-content:space-between;transition:background .15s,opacity .2s,transform .2s}.practice-item.dragging{opacity:.4;transform:scale(.98)}.drag-handle{display:flex;align-items:center;color:var(--border);cursor:grab;flex-shrink:0;padding:.125rem;transition:color .15s}.drag-handle:active{cursor:grabbing}.practice-item:hover .drag-handle{color:var(--text-muted)}.action-checkmark{margin-left:auto;cursor:pointer;flex-shrink:0;display:flex;align-items:center}.delete-item-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:0 .25rem;line-height:1;opacity:0;transition:opacity .15s,color .15s;flex-shrink:0;display:flex;align-items:center}.practice-item:hover .delete-item-btn{opacity:1}.delete-item-btn:hover{color:#ef4444}.miss-item-btn{background:none;border:none;color:#ef444466;cursor:pointer;padding:0 .25rem;line-height:1;opacity:0;transition:opacity .15s,color .15s;flex-shrink:0;display:flex;align-items:center}.practice-item:hover .miss-item-btn{opacity:1}.miss-item-btn.active{color:#ef4444;opacity:1}.miss-item-btn:disabled{cursor:default}.miss-item-btn:not(:disabled):hover{color:#ef4444}.practice-item.missed-item{background:#ef44440d}.practice-item.missed-item .practice-name{text-decoration:line-through;color:#ef444499!important}.practice-item.missed-item .drag-handle{visibility:hidden}.edit-practice-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:0 .25rem;line-height:1;opacity:0;transition:opacity .15s,color .15s;flex-shrink:0;display:flex;align-items:center}.practice-item:hover .edit-practice-btn{opacity:1}.edit-practice-btn:hover{color:var(--accent)}.practice-item.editing{gap:.5rem}.edit-name-input{flex:1;min-width:0;padding:.5rem .75rem;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.9375rem;font-family:inherit;outline:none;transition:border-color .15s}.edit-name-input:focus{border-color:var(--accent)}.practice-item.editing .add-action-target{width:4rem;padding:.5rem;font-size:.8125rem}.edit-practice-save,.edit-practice-cancel{background:none;border:none;cursor:pointer;padding:.25rem;display:flex;align-items:center;border-radius:4px;transition:color .15s,background .15s}.edit-practice-save{color:var(--success)}.edit-practice-save:hover{background:#22c55e1a}.edit-practice-cancel{color:var(--text-muted)}.edit-practice-cancel:hover{color:var(--text);background:var(--surface-hover)}.counter-controls{display:flex;align-items:center;gap:.5rem;margin-left:auto;flex-shrink:0}.counter-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:1rem;font-family:inherit;cursor:pointer;padding:0;transition:all .15s;line-height:1}.counter-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.counter-btn:disabled{opacity:.25;cursor:not-allowed}.counter-display{font-size:.8125rem;font-weight:600;color:var(--text-muted);font-variant-numeric:tabular-nums;min-width:2.5rem;text-align:center}.practice-item.done .counter-display{color:var(--accent)}.big-three-toggle{background:none;border:none;cursor:pointer;font-size:16px;line-height:1;padding:0;color:var(--text-muted);transition:color .15s;flex-shrink:0}.big-three-toggle.active{color:#f59e0b}.big-three-toggle:hover{color:#f59e0b;opacity:.8}.practice-item.big-three-item{border-left:3px solid #f59e0b}.big-three-name{color:var(--text)!important}.action-group-divider{font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.5rem 0 .25rem}.big-three-divider{color:#f59e0b}.regular-divider{color:var(--text-muted);margin-top:.5rem}.big-three-warning{color:#f59e0b;font-size:.8125rem;text-align:center;padding:.375rem 0;animation:bigThreeWarnFade 2s ease forwards}@keyframes bigThreeWarnFade{0%,70%{opacity:1}to{opacity:0}}.add-action-form{display:flex;gap:.5rem;margin-top:.5rem}.add-action-input{flex:1;padding:.75rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.9375rem;font-family:inherit;outline:none;transition:border-color .15s}.add-action-input::placeholder{color:var(--text-muted)}.add-action-input:focus{border-color:var(--accent)}.add-action-target{width:5rem;padding:.75rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.9375rem;font-family:inherit;outline:none;transition:border-color .15s;text-align:center;-moz-appearance:textfield}.add-action-target::-webkit-outer-spin-button,.add-action-target::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.add-action-target::placeholder{color:var(--text-muted)}.add-action-target:focus{border-color:var(--accent)}.add-action-btn{padding:.75rem 1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.875rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s}.add-action-btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--accent)}.add-action-btn:disabled{opacity:.4;cursor:not-allowed}.week-review-section{margin-top:32px;margin-bottom:32px}.week-review-header{display:flex;align-items:center;gap:8px;cursor:pointer;padding:.25rem 0}.week-review-disclosure{font-size:12px;color:#8b5cf6;line-height:1}.week-review-title{font-size:15px;font-weight:600;color:var(--text);letter-spacing:normal}.week-review-score{font-size:14px;color:#8b5cf6}.week-review-chevron{color:#8b5cf6;font-size:12px;transition:transform .2s;display:inline-block}.week-review-chevron.expanded{transform:rotate(90deg)}.week-review-body{margin-top:16px}.week-review-card{margin-bottom:12px;padding:14px 16px;background:#8b5cf60d;border-left:3px solid #8b5cf6;border-radius:0 8px 8px 0;font-size:.9rem;color:var(--text-muted);line-height:1.6}.week-review-card strong{color:#8b5cf6}.week-review-paras{margin-top:16px;color:var(--text-muted);font-size:.9rem;line-height:1.7}.week-review-paras p{margin:.4rem 0}.week-review-answers-toggle{display:flex;align-items:center;gap:6px;margin-top:20px;cursor:pointer;color:var(--text-dim);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.week-review-answers-toggle:hover{color:var(--text-muted)}.week-review-answers-disclosure{font-size:10px;color:var(--text-dim);line-height:1}.week-review-answers{margin-top:12px}.week-review-qa{padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--border-subtle)}.week-review-qa:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.week-review-question{font-size:11px;color:#8b5cf6;font-weight:600;letter-spacing:.05em;text-transform:uppercase;margin-bottom:4px}.week-review-answer{color:var(--text-muted);font-size:14px;line-height:1.6;white-space:pre-wrap}.checkin-btn{width:100%;padding:1rem;font-size:1rem;font-weight:600;background:var(--accent);color:#fff;border:none;border-radius:var(--radius);cursor:pointer;transition:all .2s;letter-spacing:-.01em}.checkin-btn:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 0 24px var(--accent-glow)}.checkin-btn:disabled{opacity:.6;cursor:not-allowed}.ai-response{margin-top:1.5rem;padding:1.25rem;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius);font-size:.9375rem;line-height:1.7;color:var(--text)}.app.loading .practices-list,.app.loading .weekly-actions{opacity:.4;pointer-events:none}.confirm-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100}.confirm-dialog{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;max-width:360px;width:calc(100% - 2rem);box-shadow:0 8px 32px #0000004d}.confirm-message{font-size:.9375rem;line-height:1.5;margin-bottom:1.25rem;color:var(--text)}.confirm-actions{display:flex;gap:.75rem;justify-content:flex-end}.confirm-cancel,.confirm-delete{padding:.5rem 1rem;font-size:.875rem;font-weight:600;font-family:inherit;border-radius:8px;cursor:pointer;transition:all .15s}.confirm-cancel{background:var(--surface);border:1px solid var(--border);color:var(--text)}.confirm-cancel:hover{background:var(--surface-hover)}.confirm-delete{background:#ef4444;border:1px solid #ef4444;color:#fff}.confirm-delete:hover{background:#dc2626;border-color:#dc2626}.clickable{cursor:pointer;transition:color .15s}.goal-card.clickable:hover{border-color:var(--accent);background:var(--surface-hover)}.vision-page-content{max-width:860px;margin:0 auto}.vision-title-wrap{margin-bottom:2.5rem}.vision-page-title{font-size:2.5rem;font-weight:800;letter-spacing:-.03em;line-height:1.1}.vision-title-wrap .vision-page-title{font-size:2rem;line-height:1.15;color:var(--text);position:relative;display:inline-block;padding-bottom:10px}.vision-title-wrap .vision-page-title:after{content:"";position:absolute;bottom:0;left:0;width:36px;height:3px;border-radius:2px;background:var(--accent)}.vision-section-label{display:flex;align-items:center;gap:10px;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);margin-bottom:.875rem;padding-left:2px}.vision-section-label:after{content:"";flex:1;height:1px;background:linear-gradient(to right,var(--border-subtle),transparent)}.vision-section-label-icon{width:14px;height:14px;color:var(--text-dim);flex-shrink:0;display:flex;align-items:center;justify-content:center}.vision-focus-badge{display:inline-flex;align-items:center;gap:5px;font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-dim);border-radius:4px;padding:2px 8px 2px 6px;margin-bottom:1rem}.vision-focus-badge svg{flex-shrink:0}.vision-loading{color:var(--text-muted);font-size:.9375rem;padding:2rem 0}.vision-section{margin-bottom:2.75rem}.vision-north-star-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius);padding:1.25rem 1.375rem 1rem;box-shadow:0 2px 12px #00000040,0 0 0 1px var(--accent-dim);position:relative;overflow:hidden}.vision-north-star-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right,var(--accent-dim),transparent 60%);pointer-events:none}.vision-north-star-card .subtask-item,.vision-goal-card .subtask-item{background:var(--surface-hover);margin-bottom:3px}.vision-north-star-card .subtask-item:hover,.vision-goal-card .subtask-item:hover{background:var(--surface-hover)}.vision-north-star-card .subtask-add-input,.vision-goal-card .subtask-add-input,.vision-north-star-card .subtask-add-btn,.vision-goal-card .subtask-add-btn,.vision-north-star-card .subtask-target-input,.vision-goal-card .subtask-target-input{background:var(--bg)}.vision-north-star{font-size:1.125rem;font-weight:700;letter-spacing:-.01em;line-height:1.4;margin-bottom:.5rem;color:var(--text)}.vision-nsg-goal-input{width:100%;font-size:1.125rem;font-weight:700;font-family:inherit;letter-spacing:-.01em;line-height:1.4;color:var(--text);background:transparent;border:1px solid transparent;border-radius:6px;padding:.25rem .5rem;margin-bottom:.25rem;outline:none;cursor:pointer;transition:border-color .15s,background .15s}.vision-nsg-goal-input:hover{border-color:var(--border);background:var(--bg)}.vision-nsg-goal-input:focus{border-color:var(--accent);background:var(--bg);cursor:text}.vision-nsg-constraint-row{display:flex;align-items:center;gap:0;margin-bottom:.25rem}.vision-nsg-constraint-prefix{font-size:.9rem;color:var(--text-dim);font-style:italic;padding-left:.5rem;flex-shrink:0}.vision-nsg-constraint-input{flex:1;font-size:.9rem;font-family:inherit;font-style:italic;color:var(--text-dim);background:transparent;border:1px solid transparent;border-radius:6px;padding:.2rem .5rem;outline:none;cursor:pointer;transition:border-color .15s,background .15s}.vision-nsg-constraint-input:hover{border-color:var(--border);background:var(--bg)}.vision-nsg-constraint-input:focus{border-color:var(--accent);background:var(--bg);cursor:text;font-style:normal}.vision-nsg-constraint-input::placeholder{color:var(--text-dim);opacity:.5;font-style:italic}.vision-nsg-target-date{font-size:.82rem;color:var(--text-dim);margin:0 0 .75rem;opacity:.7}.vision-textarea{width:100%;padding:.875rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.9375rem;font-family:inherit;line-height:1.6;outline:none;resize:vertical;min-height:80px;transition:border-color .15s}.vision-textarea:focus{border-color:var(--accent)}.vision-textarea::placeholder{color:var(--text-muted)}.vision-goal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.125rem 1.25rem 1rem;margin-bottom:.875rem;transition:border-color .12s}.vision-goal-card:hover{border-color:var(--border)}.vision-goal-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.vision-goal-input{flex:1;font-size:1rem;font-weight:600;font-family:inherit;color:var(--text);background:transparent;border:1px solid transparent;border-radius:6px;padding:.25rem .5rem;outline:none;cursor:pointer;transition:border-color .15s,background .15s}.vision-goal-input:hover{border-color:var(--border);background:var(--bg)}.vision-goal-input:focus{border-color:var(--accent);background:var(--bg);cursor:text}.vision-goal-delete{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:5px;border-radius:var(--radius-xs, 6px);display:flex;align-items:center;justify-content:center;transition:opacity .12s,color .12s,background .12s;flex-shrink:0;opacity:0}.vision-goal-card:hover .vision-goal-delete{opacity:1}.vision-goal-delete:hover{color:var(--danger);background:#ef444414}.subtask-list{padding-left:0}.subtask-item{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:var(--surface);border-radius:8px;cursor:default;transition:background .15s,opacity .2s,transform .2s;-webkit-user-select:none;user-select:none}.subtask-item:hover{background:var(--surface-hover)}.subtask-item.dragging{opacity:.4;transform:scale(.98)}.subtask-item.editing{gap:.5rem}.subtask-drag-handle{display:flex;align-items:center;color:var(--border);cursor:grab;flex-shrink:0;padding:.125rem;transition:color .15s}.subtask-drag-handle:active{cursor:grabbing}.subtask-item:hover .subtask-drag-handle{color:var(--text-muted)}.subtask-checkbox{cursor:pointer;flex-shrink:0;display:flex;align-items:center}.subtask-check{width:20px;height:20px;border-radius:6px;border:2px solid var(--border);flex-shrink:0;transition:all .15s;position:relative}.subtask-item.done .subtask-check{background:var(--accent);border-color:var(--accent)}.subtask-item.done .subtask-check:after{content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.subtask-title{flex:1;font-size:.9375rem;color:var(--text);line-height:1.4;transition:opacity .15s}.subtask-item.done .subtask-title{opacity:.5;text-decoration:line-through}.subtask-item.missed-item{background:#ef44440d}.subtask-item.missed-item .subtask-title{text-decoration:line-through;color:#ef444499!important;opacity:1}.subtask-item.missed-item .subtask-drag-handle{visibility:hidden}.subtask-item .miss-item-btn{opacity:0}.subtask-item:hover .miss-item-btn,.subtask-item .miss-item-btn.active{opacity:1}.subtask-delete{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:0 .25rem;line-height:1;opacity:0;transition:opacity .15s,color .15s;flex-shrink:0;display:flex;align-items:center}.subtask-item:hover .subtask-delete{opacity:1}.subtask-delete:hover{color:#ef4444}.subtask-add-form{display:flex;gap:.5rem;margin-top:.5rem}.subtask-add-input{flex:1;padding:.75rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.9375rem;font-family:inherit;outline:none;transition:border-color .15s}.subtask-add-input:focus{border-color:var(--accent)}.subtask-add-input::placeholder{color:var(--text-muted)}.subtask-add-btn{padding:.75rem 1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.875rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s}.subtask-add-btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--accent)}.subtask-add-btn:disabled{opacity:.4;cursor:not-allowed}.subtask-target-input{width:5rem;padding:.75rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.9375rem;font-family:inherit;outline:none;transition:border-color .15s;text-align:center;-moz-appearance:textfield;flex-shrink:0}.subtask-target-input::-webkit-outer-spin-button,.subtask-target-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.subtask-target-input:focus{border-color:var(--accent)}.subtask-target-input::placeholder{color:var(--text-muted)}.subtask-edit{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:0 .25rem;line-height:1;opacity:0;transition:opacity .15s,color .15s;flex-shrink:0;display:flex;align-items:center}.subtask-item:hover .subtask-edit{opacity:1}.subtask-edit:hover{color:var(--accent)}.subtask-edit-input{flex:1;min-width:0;padding:.5rem .75rem;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.9375rem;font-family:inherit;outline:none;transition:border-color .15s}.subtask-edit-input:focus{border-color:var(--accent)}.subtask-counter{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.subtask-counter-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:1rem;font-family:inherit;cursor:pointer;padding:0;transition:all .15s;line-height:1}.subtask-counter-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.subtask-counter-btn:disabled{opacity:.25;cursor:not-allowed}.subtask-counter-display{font-size:.8125rem;font-weight:600;color:var(--text-muted);font-variant-numeric:tabular-nums;min-width:2.5rem;text-align:center}.subtask-item.done .subtask-counter-display{color:var(--accent)}.vision-goal-number{display:block;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.25rem}.vision-add-goal{display:block;width:100%;padding:.75rem;margin-top:.5rem;background:none;border:1px dashed var(--border);border-radius:var(--radius);color:var(--text-dim);font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;transition:color .15s,border-color .15s,background .15s;text-align:center}.vision-add-goal:hover{color:var(--accent);border-color:var(--accent-dim);background:var(--accent-dim)}.vision-max-goals{font-size:.8125rem;color:var(--text-muted);text-align:center;margin-top:.75rem;font-style:italic}.vision-practices-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.vision-practice-item{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid var(--border)}.vision-practice-item:last-child{border-bottom:none}.vision-practice-item.editing{gap:.5rem}.vision-practice-name{flex:1;font-size:.9375rem;font-weight:500}.vision-practice-target{font-size:.8125rem;color:var(--text-muted);font-weight:500}.vision-practice-item .edit-practice-btn,.vision-practice-item .delete-item-btn{opacity:0;transition:opacity .15s}.vision-practice-item:hover .edit-practice-btn,.vision-practice-item:hover .delete-item-btn{opacity:1}.vision-practices-list+.add-action-form{margin-top:.75rem}.quarter-goal{font-size:.875rem;color:var(--text-muted);font-style:italic;margin-bottom:1rem;padding-left:.25rem}.empty-practices{padding:2rem 1rem;text-align:center}.empty-practices-text{font-size:.9375rem;color:var(--text-muted);margin-bottom:1rem}.setup-quarter-btn{padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;font-family:inherit;background:var(--accent);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .15s}.setup-quarter-btn:hover{filter:brightness(1.1)}.scope-dialog{max-width:400px}.scope-actions{display:flex;flex-direction:column;gap:.5rem}.scope-btn{width:100%;padding:.625rem 1rem;font-size:.875rem;font-weight:600;font-family:inherit;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);cursor:pointer;transition:all .15s}.scope-btn:hover{background:var(--surface-hover);border-color:var(--text-muted)}.scope-btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.scope-btn-primary:hover{filter:brightness(1.1);background:var(--accent)}.scope-btn-cancel{width:100%;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;font-family:inherit;background:none;border:none;color:var(--text-muted);cursor:pointer;transition:color .15s}.scope-btn-cancel:hover{color:var(--text)}.quarter-setup-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;max-width:520px;width:calc(100% - 2rem);box-shadow:0 8px 32px #0000004d;max-height:85vh;overflow-y:auto}.quarter-setup-title{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1.5rem}.quarter-setup-field{margin-bottom:1.5rem}.quarter-setup-label{display:block;font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.5rem}.quarter-setup-input{width:100%;padding:.75rem 1rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.9375rem;font-family:inherit;outline:none;transition:border-color .15s}.quarter-setup-input:focus{border-color:var(--accent)}.quarter-setup-practices-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.copy-prev-btn{background:none;border:none;color:var(--accent);font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer;padding:0;transition:opacity .15s}.copy-prev-btn:hover{opacity:.8}.setup-practice-row{display:flex;gap:.5rem;margin-bottom:.5rem;align-items:center}.setup-practice-row .quarter-setup-input{flex:1}.setup-practice-row .add-action-target{width:5rem;flex-shrink:0}.setup-remove-btn{background:none;border:none;color:var(--text-muted);font-size:1.25rem;cursor:pointer;padding:.25rem;line-height:1;transition:color .15s;flex-shrink:0}.setup-remove-btn:hover{color:#ef4444}.setup-add-btn{background:none;border:none;color:var(--accent);font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer;padding:.375rem 0;transition:opacity .15s}.setup-add-btn:hover{opacity:.8}.quarter-setup-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.quarter-setup-save{padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;font-family:inherit;background:var(--accent);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .15s}.quarter-setup-save:hover:not(:disabled){filter:brightness(1.1)}.quarter-setup-save:disabled{opacity:.4;cursor:not-allowed}@media(max-width:480px){.app{padding:1.5rem 1.25rem 3rem}.goals-grid-2,.goals-grid-3{grid-template-columns:1fr}.north-star-title{font-size:1.5rem}.quarter-setup-modal{padding:1.5rem}.qo-week-main{flex-direction:column;gap:.5rem}.qo-week-scores{width:100%}}.quarter-nav-label{font-size:.875rem;font-weight:700;letter-spacing:.02em;transition:filter .15s}.nav-btn:hover .quarter-nav-label{filter:brightness(1.2)}.qo-page-content{max-width:860px;margin:0 auto;padding:0 20px}.qo-nav{justify-content:center;margin-bottom:1.75rem}.qo-nav .vision-page-title{margin:0;text-align:center;flex:1}.qo-title-block{display:flex;flex-direction:column;align-items:center;flex:1}.qo-date-range{font-size:13px;color:var(--text-muted);margin-top:3px;letter-spacing:.01em}.qo-status-badges{display:flex;gap:12px;margin-top:6px}.qo-section-label{display:flex;align-items:center;gap:10px;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#5a7085;margin-bottom:.75rem;padding-left:2px}.qo-section-label:after{content:"";flex:1;height:1px;background:linear-gradient(to right,rgba(30,45,61,.5),transparent)}.qo-section-icon{width:14px;height:14px;opacity:.5;flex-shrink:0}.qo-north-star-card{background:var(--surface);border:1px solid var(--border-subtle);border-left:3px solid var(--accent);border-radius:var(--radius);padding:1.25rem 1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000001f;transition:border-color .15s,background .15s}.qo-north-star-card.clickable:hover{border-color:var(--accent);background:var(--surface-hover)}.qo-north-star-text{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;line-height:1.3;color:var(--text-primary, #fff);margin:0}.qo-north-star-badge{display:inline-block;margin-top:12px;font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:3px 10px;border-radius:4px;color:var(--accent);background:var(--accent-dim);border:1px solid rgba(0,180,180,.2)}.qo-summary{margin-bottom:1.75rem}.qo-summary-card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius);padding:1rem 1.25rem;box-shadow:0 2px 8px #0000001f}.qo-summary-scores{display:flex;flex-direction:column;gap:.75rem}.qo-summary-score{display:flex;flex-direction:column;gap:.25rem}.qo-summary-label{font-size:.8125rem;color:var(--text-muted);font-weight:500}.qo-weeks{margin-bottom:2rem}.qo-week-row{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius);padding:.875rem 1rem;margin-bottom:.5rem;transition:border-color .15s,background .15s;cursor:pointer}.qo-week-row:hover{background:var(--surface-hover);border-color:var(--border)}.qo-week-row.current{border-color:var(--accent);border-width:2px}.qo-week-row.blank .qo-week-main{opacity:.45}.qo-week-main{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.qo-week-row:hover .qo-week-number{color:var(--accent)}.qo-week-label{display:flex;flex-direction:column;gap:.125rem;min-width:10rem}.qo-week-number{font-size:.9375rem;font-weight:600;transition:color .15s}.qo-week-range{font-size:.8125rem;color:var(--text-muted)}.qo-current-badge{display:inline-block;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin-top:.125rem}.qo-blank-badge{display:inline-block;font-size:.6875rem;font-weight:500;color:var(--text-muted);font-style:italic;margin-top:.125rem}.qo-week-scores{display:flex;flex-direction:column;gap:.375rem;flex:1;max-width:20rem}.qo-score-row{display:flex;align-items:center;gap:.5rem}.qo-score-label{font-size:.75rem;color:var(--text-muted);font-weight:500;min-width:6.5rem}.qo-score-bar{flex:1;height:6px;background:var(--bg);border-radius:3px;overflow:hidden;border:1px solid var(--border-subtle)}.qo-score-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .4s ease;box-shadow:0 0 6px #14b8a64d}.qo-score-value{font-size:.8125rem;font-weight:600;font-variant-numeric:tabular-nums;min-width:2.5rem;text-align:right}.streak-dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--accent);background:transparent;cursor:pointer;transition:background .15s}.streak-dot.filled{background:var(--accent)}.streak-dot.milestone{border-color:#f5c400}.streak-dot.milestone.filled{background:#f5c400}.streak-dot:hover{opacity:.8}.streaks-settings-list{margin-top:.75rem;display:flex;flex-direction:column;gap:.5rem}.streak-settings-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.streak-settings-row.editing{flex-direction:column;align-items:stretch;gap:.5rem}.streak-settings-info{display:flex;flex-direction:column;gap:.125rem;min-width:0}.streak-settings-name{font-size:.9375rem;font-weight:600}.streak-settings-meta{font-size:.8125rem;color:var(--text-muted)}.streak-settings-actions{display:flex;gap:.5rem;flex-shrink:0}.streak-form-row{display:flex;gap:.5rem;align-items:center}.streak-type-select,.streak-freq-select,.streak-date-input{padding:.375rem .5rem;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;font-size:.875rem;font-family:inherit}.streak-home-toggle{font-size:.8125rem;color:var(--text-muted);display:flex;align-items:center;gap:.375rem;cursor:pointer}.streak-form-actions{display:flex;gap:.5rem}.streak-detail-page{--gold: #F5C400;--gold-amber: #E8721C;--gold-glow: rgba(245, 196, 0, .15);--gold-dim: rgba(245, 196, 0, .12);--gold-deep: rgba(245, 196, 0, .08);--gold-text-dark: #1a1000}.streak-detail-content{max-width:860px;margin:0 auto}.sd-page-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:2rem;animation:sdFadeUp .4s ease both}.sd-page-title-wrap{display:flex;flex-direction:column;gap:0}.sd-page-title{font-size:1.75rem;font-weight:800;letter-spacing:-.03em;color:var(--text);line-height:1.1}.sd-page-title-underline{display:block;height:3px;width:100%;background:linear-gradient(90deg,var(--accent),transparent);border-radius:2px;margin-top:6px}.sd-page-title-underline.celebration{background:linear-gradient(90deg,var(--gold),var(--gold-amber),transparent)}.sd-edit-btn{padding:7px 18px;border-radius:var(--radius-sm);font-size:13.5px;font-weight:600;font-family:inherit;color:var(--text-muted);background:transparent;border:1px solid var(--border);cursor:pointer;transition:color .15s,border-color .15s,background .15s;flex-shrink:0;margin-top:4px}.sd-edit-btn:hover{color:var(--text);border-color:var(--text-muted);background:var(--surface-hover)}.sd-hero-section{margin-bottom:2.5rem;animation:sdFadeUp .45s .05s ease both;position:relative}.streak-hero-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:3.5rem 2rem 2.75rem;text-align:center;position:relative;overflow:hidden}.streak-hero-card:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 50% 0%,var(--accent-dim) 0%,transparent 70%);pointer-events:none}.streak-hero-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent-glow),transparent)}.sd-hero-count-block{display:flex;flex-direction:column;align-items:center;margin-bottom:.25rem;position:relative;z-index:2}.sd-hero-count{font-size:5.5rem;font-weight:900;line-height:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--accent);text-shadow:0 0 40px var(--accent-glow),0 0 80px var(--accent-dim);animation:sdCountIn .7s .2s cubic-bezier(.34,1.56,.64,1) both;position:relative;z-index:1}.sd-hero-count-label{font-size:1rem;font-weight:500;color:var(--text-muted);margin-top:.25rem;letter-spacing:.04em;position:relative;z-index:2}.sd-hero-meta{font-size:.875rem;color:var(--text-dim);margin-top:1rem;letter-spacing:.01em;position:relative;z-index:2}.sd-hero-meta-dot{margin:0 .4rem;opacity:.5}.streak-hero-card.not-logged-today .sd-hero-count{color:var(--text-dim);text-shadow:none}.sd-hero-log-btn-wrap{margin-top:2rem;position:relative;z-index:2}.detail-log-today-btn{display:inline-flex;align-items:center;gap:.6rem;padding:.9rem 2.5rem;border-radius:var(--radius);font-size:1rem;font-weight:700;font-family:inherit;cursor:pointer;transition:all .2s ease;letter-spacing:.01em;position:relative}.detail-log-today-btn.pending{background:transparent;color:var(--accent);border:2px solid var(--accent);box-shadow:0 0 0 0 var(--accent-glow);animation:sdPendingPulse 2.5s ease-in-out infinite}@keyframes sdPendingPulse{0%,to{box-shadow:0 0 0 0 var(--accent-glow)}50%{box-shadow:0 0 0 8px transparent}}.detail-log-today-btn.pending:hover{background:var(--accent-dim);box-shadow:0 0 20px var(--accent-glow);transform:translateY(-1px);animation:none}.detail-log-today-btn.logged{background:var(--accent);color:var(--bg);border:2px solid var(--accent);box-shadow:0 0 24px var(--accent-glow)}.detail-log-today-btn.logged:hover{filter:brightness(1.15);transform:translateY(-1px);box-shadow:0 0 32px var(--accent-glow)}.sd-section-label-row{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem}.sd-section-label-icon{width:16px;height:16px;color:var(--text-dim);flex-shrink:0}.sd-section-label-text{font-size:.6875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.sd-section-label-rule{flex:1;height:1px;background:linear-gradient(90deg,var(--border),transparent)}.sd-year-section{margin-bottom:2.5rem;animation:sdFadeUp .45s .1s ease both}.sd-year-nav{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1.5rem}.sd-year-nav-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:none;border:1px solid var(--border);color:var(--text-dim);cursor:pointer;transition:color .15s,border-color .15s,background .15s;font-family:inherit}.sd-year-nav-btn:hover:not(:disabled){color:var(--text);border-color:var(--text-dim);background:var(--surface-hover)}.sd-year-nav-btn:disabled{opacity:.3;cursor:not-allowed}.sd-year-nav-label{font-size:1.125rem;font-weight:700;color:var(--text);min-width:4rem;text-align:center}.year-quad-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.year-quad{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.year-quad-label{display:block;font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);margin-bottom:.75rem}.year-quad-dots{display:flex;flex-wrap:wrap;gap:2px}.yq-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;cursor:default;transition:transform .1s,opacity .1s}.yq-dot.logged{background:var(--accent);box-shadow:0 0 4px var(--accent-glow)}.yq-dot.logged:hover{transform:scale(1.3);box-shadow:0 0 8px var(--accent-glow)}.yq-dot.missed{background:transparent;border:1px solid var(--border-subtle)}.yq-dot.missed:hover{border-color:var(--accent);transform:scale(1.2)}.yq-dot.today{background:var(--accent);box-shadow:0 0 0 2.5px var(--bg),0 0 0 4px var(--accent),0 0 10px var(--accent-glow)}.yq-dot.future{background:var(--border-subtle);opacity:.3}.yq-dot.before-start{background:transparent;opacity:.08}.yq-dot.clickable{cursor:pointer}.sd-calendar-section{margin-bottom:2.5rem;animation:sdFadeUp .45s .15s ease both}.sd-cal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.sd-cal-nav{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1rem}.sd-cal-nav-btn{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-xs);background:none;border:1px solid var(--border);color:var(--text-dim);cursor:pointer;transition:color .15s,border-color .15s,background .15s;font-family:inherit}.sd-cal-nav-btn:hover{color:var(--text);border-color:var(--text-dim);background:var(--surface-hover)}.sd-cal-month-label{font-size:1rem;font-weight:600;min-width:10rem;text-align:center;color:var(--text)}.sd-cal-dow-row{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:.375rem}.sd-cal-dow{font-size:.6875rem;font-weight:700;letter-spacing:.06em;color:var(--text-dim);padding:.25rem 0}.sd-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.sd-cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:500;border-radius:var(--radius-xs);border:1px solid var(--border-subtle);color:var(--text-muted);background:transparent;cursor:default;transition:all .15s}.sd-cal-day.empty{background:transparent;border:none}.sd-cal-day.logged{background:var(--accent);border-color:var(--accent);color:var(--bg);font-weight:700;box-shadow:0 0 8px var(--accent-glow)}.sd-cal-day.today{background:var(--accent);border-color:var(--accent);color:var(--bg);font-weight:800;box-shadow:0 0 0 2.5px var(--surface),0 0 0 4px var(--accent),0 0 12px var(--accent-glow)}.sd-cal-day.future{opacity:.25}.sd-cal-day.before-start{opacity:.12}.sd-cal-day.clickable{cursor:pointer}.sd-cal-day.clickable:hover{border-color:var(--accent);color:var(--text);background:var(--accent-dim)}.sd-bulk-section{margin-bottom:2.5rem;animation:sdFadeUp .45s .2s ease both}.sd-bulk-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.sd-bulk-row{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap}.sd-bulk-field{display:flex;flex-direction:column;gap:.375rem}.sd-bulk-label{font-size:.75rem;font-weight:600;letter-spacing:.04em;color:var(--text-muted)}.sd-bulk-submit-btn{padding:.55rem 1.25rem;background:var(--accent-dim);border:1px solid var(--accent-glow);border-radius:var(--radius-sm);color:var(--accent);font-size:.875rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s;white-space:nowrap}.sd-bulk-submit-btn:hover:not(:disabled){background:var(--accent-glow);border-color:var(--accent)}.sd-bulk-submit-btn:disabled{opacity:.4;cursor:not-allowed}.sd-bulk-result{display:block;margin-top:.5rem;font-size:.8125rem;color:var(--success);font-weight:500}.sd-bulk-error{display:block;margin-top:.5rem;font-size:.8125rem;color:#ef4444;font-weight:500}.challenge-home-nudge{font-size:.625rem;color:var(--text-muted);opacity:.4}.sd-pauses-section{margin-bottom:2.5rem;animation:sdFadeUp .45s .25s ease both}.sd-pause-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.sd-pause-icon-wrap{width:32px;height:32px;border-radius:var(--radius-xs);background:var(--accent-dim);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-dim)}.sd-pause-info{display:flex;flex-direction:column;gap:.125rem}.sd-pause-dates{font-size:.875rem;font-weight:600;color:var(--text)}.sd-pause-reason{font-size:.8125rem;color:var(--text-muted);font-style:italic}.sd-detail-footer{margin-top:3rem;text-align:center;animation:sdFadeUp .45s .3s ease both}.sd-detail-footer-link{font-size:.8125rem;color:var(--text-dim);cursor:pointer;text-decoration:none;transition:color .15s;display:inline-flex;align-items:center;gap:.5rem;background:none;border:none;font-family:inherit}.sd-detail-footer-link:hover{color:var(--accent)}@keyframes sdFadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes sdCountIn{0%{opacity:0;transform:scale(.85);filter:blur(4px)}to{opacity:1;transform:scale(1);filter:blur(0)}}.sd-hero-section.celebration:before{content:"";position:absolute;inset:-40px -60px;background:radial-gradient(ellipse 70% 60% at 50% 40%,rgba(245,196,0,.06) 0%,rgba(232,114,28,.03) 50%,transparent 80%);pointer-events:none;z-index:0}.celebration .streak-hero-card{border:1px solid transparent;background-clip:padding-box;outline:1px solid rgba(245,196,0,.25);outline-offset:-1px;z-index:1}.celebration .streak-hero-card:before{background:radial-gradient(ellipse 70% 55% at 50% 0%,rgba(245,196,0,.09) 0%,rgba(232,114,28,.04) 45%,transparent 75%),radial-gradient(ellipse 40% 30% at 50% 100%,rgba(245,196,0,.03) 0%,transparent 70%)}.celebration .streak-hero-card:after{height:auto;inset:0;background:linear-gradient(105deg,transparent 30%,rgba(245,196,0,.05) 45%,rgba(255,220,80,.09) 50%,rgba(245,196,0,.05) 55%,transparent 70%);background-size:200% 100%;animation:sdShimmerSweep 4s ease-in-out infinite}@keyframes sdShimmerSweep{0%{background-position:-100% 0}60%{background-position:200% 0}to{background-position:200% 0}}.celebration .sd-hero-card-bottom-line{position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(245,196,0,.4),rgba(232,114,28,.25),transparent);z-index:2}.celebration .sd-hero-card-top-line{position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(245,196,0,.25),transparent);z-index:2}.celebration .sd-hero-count-block:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:240px;height:120px;background:radial-gradient(ellipse,rgba(245,196,0,.08) 0%,transparent 70%);pointer-events:none;animation:sdHaloPulse 3s ease-in-out infinite}@keyframes sdHaloPulse{0%,to{opacity:.7;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}}.celebration .sd-hero-count{font-size:6rem;color:var(--gold);text-shadow:0 0 20px rgba(245,196,0,.35),0 0 50px rgba(245,196,0,.15)}.celebration .detail-log-today-btn.logged{background:linear-gradient(135deg,var(--gold) 0%,#f0a800 100%);color:var(--gold-text-dark);border:2px solid transparent;box-shadow:0 0 24px #f5c40059,0 0 60px #f5c40026}.celebration .detail-log-today-btn.logged:hover{background:linear-gradient(135deg,#ffd020 0%,var(--gold) 100%);box-shadow:0 0 32px #f5c40080,0 0 80px #f5c40033}.sd-milestone-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem 1rem;border-radius:100px;background:linear-gradient(135deg,#f5c40026,#e8721c1a);border:1px solid rgba(245,196,0,.35);font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:1.5rem;position:relative;z-index:2;animation:sdFadeUp .5s .3s ease both}.sd-milestone-badge-icon{width:14px;height:14px;flex-shrink:0;color:var(--gold);filter:drop-shadow(0 0 3px rgba(245,196,0,.4))}.sd-particles-wrap{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.sd-particle{position:absolute;border-radius:50%;opacity:0;animation:sdFloatUp var(--dur, 6s) var(--delay, 0s) ease-in infinite}.sd-particle.gold{background:var(--gold);box-shadow:0 0 4px #f5c400cc}.sd-particle.amber{background:var(--gold-amber);box-shadow:0 0 4px #e8721cb3}.sd-particle.pale{background:#ffdc7899;box-shadow:0 0 3px #ffdc7880}@keyframes sdFloatUp{0%{opacity:0;transform:translateY(0) scale(.5)}10%{opacity:var(--max-opacity, .55)}80%{opacity:var(--max-opacity, .4)}to{opacity:0;transform:translateY(-120px) scale(.3) translate(var(--drift, 10px))}}.celebration .yq-dot.logged{background:var(--gold);box-shadow:0 0 4px #f5c4008c}.celebration .yq-dot.logged:hover{box-shadow:0 0 8px #f5c400cc}.celebration .yq-dot.missed:hover{border-color:var(--gold)}.celebration .yq-dot.today{background:var(--gold);box-shadow:0 0 0 2.5px var(--bg),0 0 0 4px var(--gold),0 0 12px #f5c400b3}.celebration .sd-cal-day.logged{background:var(--gold);border-color:var(--gold);color:var(--gold-text-dark);box-shadow:0 0 8px #f5c4004d}.celebration .sd-cal-day.today{background:var(--gold);border-color:var(--gold);color:var(--gold-text-dark);box-shadow:0 0 0 2.5px var(--surface),0 0 0 4px var(--gold),0 0 14px #f5c40080}.celebration .sd-cal-day.clickable:hover{border-color:var(--gold);background:var(--gold-dim)}@media(max-width:680px){.year-quad-grid{grid-template-columns:repeat(2,1fr)}.sd-hero-count{font-size:4rem}.celebration .sd-hero-count{font-size:4.5rem}.sd-page-title{font-size:1.4rem}}.streak-edit-btn{margin-left:auto;background:none;border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.875rem;font-weight:600;padding:.375rem .875rem;cursor:pointer;transition:all .15s;font-family:inherit;white-space:nowrap}.streak-edit-btn:hover{border-color:var(--accent);color:var(--accent)}.setting-row-nav{cursor:pointer;transition:border-color .15s}.setting-row-nav:hover{border-color:var(--accent)}.setting-row-right{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.setting-chevron{color:var(--text-muted);flex-shrink:0}.challenges-section-label{display:flex;align-items:center;gap:10px;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);margin-bottom:12px;padding-left:2px}.challenges-section-label:after{content:"";flex:1;height:1px;background:linear-gradient(to right,var(--border-subtle),transparent)}.challenges-section-icon{width:16px;height:16px;opacity:.5;flex-shrink:0}.streak-new-btn{padding:8px 18px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;font-family:inherit;border:none;background:var(--accent);color:var(--bg);cursor:pointer;transition:opacity .15s,transform .1s;white-space:nowrap}.streak-new-btn:hover{opacity:.9;transform:translateY(-1px)}.streak-list-cards{display:flex;flex-direction:column;gap:10px}.streak-list-card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius);padding:1.25rem 1.5rem;display:flex;align-items:center;gap:20px;cursor:pointer;transition:border-color .2s,background .15s}.streak-list-card:hover{border-color:var(--accent);background:var(--surface-hover)}.streak-list-card-left{display:flex;flex-direction:column;align-items:center;min-width:64px;flex-shrink:0}.streak-list-card-day-count{font-size:1.75rem;font-weight:800;color:var(--accent);line-height:1;font-variant-numeric:tabular-nums}.streak-list-card-day-label{font-size:.7rem;font-weight:500;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin-top:2px}.streak-list-card-info{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.streak-list-card-name{font-size:1rem;font-weight:600;color:var(--text)}.streak-list-card-meta{font-size:.8125rem;color:var(--text-muted)}.streak-list-card-status{flex-shrink:0}.streak-logged-badge{font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:4px 10px;border-radius:4px;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-dim)}.streak-pending-badge{font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:4px 10px;border-radius:4px;color:var(--text-dim);background:var(--surface-hover);border:1px solid var(--border-subtle)}.challenges-empty{text-align:center;padding:60px 20px}.challenges-empty-title{font-size:1.1rem;font-weight:600;color:var(--text);margin:0 0 8px}.challenges-empty-text{font-size:.9rem;color:var(--text-muted);margin:0 0 20px}.streak-form-page{display:flex;flex-direction:column;gap:2rem}.streak-form-field{display:flex;flex-direction:column;gap:.5rem}.streak-form-label{font-size:.9375rem;font-weight:600;color:var(--text)}.streak-form-input-lg{padding:.75rem 1rem;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);font-size:1.125rem;font-family:inherit;font-weight:500}.streak-form-input-lg:focus{outline:none;border-color:var(--accent)}.streak-form-input-lg::placeholder{color:var(--text-muted);font-weight:400}.streak-form-radio-group{display:flex;flex-direction:column;gap:.5rem}.streak-form-radio{display:flex;align-items:center;gap:.625rem;padding:.75rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color .15s}.streak-form-radio.active{border-color:var(--accent)}.streak-form-radio input[type=radio]{accent-color:var(--accent);width:16px;height:16px}.streak-form-radio-text{font-size:.9375rem;font-weight:500}.streak-form-freq-row{display:flex;flex-wrap:wrap;gap:.375rem;margin-top:.25rem}.streak-freq-btn{padding:.375rem .75rem;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:8px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit}.streak-freq-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.streak-freq-btn:hover:not(.active){border-color:var(--text-muted)}.streak-form-date{padding:.625rem 1rem;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);font-size:1rem;font-family:inherit;max-width:14rem}.streak-form-date:focus{outline:none;border-color:var(--accent)}.streak-form-helper{font-size:.8125rem;color:var(--text-muted)}.streak-form-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.streak-form-bottom{display:flex;flex-direction:column;gap:1rem;align-items:flex-start;padding-top:1rem;border-top:1px solid var(--border)}.streak-form-save{padding:.75rem 2rem;background:var(--accent);color:#fff;border:none;border-radius:var(--radius);font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .15s,background .15s;font-family:inherit;display:flex;align-items:center;justify-content:center;min-width:10rem;min-height:2.75rem}.streak-form-save:disabled{opacity:.5;cursor:not-allowed}.streak-form-save:hover:not(:disabled){opacity:.9}.streak-form-save.success{background:var(--success)}.streak-form-delete{background:none;border:none;color:var(--text-muted);font-size:.875rem;font-weight:500;cursor:pointer;padding:.375rem 0;transition:color .15s;font-family:inherit}.streak-form-delete:hover{color:#ef4444}@keyframes ritual-breathe-open{0%,to{transform:scale(1);box-shadow:0 0 3px #f5c0001a}50%{transform:scale(1.022);box-shadow:0 0 16px #f5c00061}}@keyframes ritual-breathe-close{0%,to{transform:scale(1);box-shadow:0 0 3px #22c55e1a}50%{transform:scale(1.022);box-shadow:0 0 16px #22c55e59}}.week-review-link{padding:.75rem 1.25rem;font-size:.9rem;font-weight:600;color:#fff;border:2px solid transparent;border-radius:var(--radius);cursor:pointer;font-family:inherit;white-space:nowrap;letter-spacing:-.01em;transition:filter .2s,box-shadow .2s,opacity .2s}.week-review-link.open-week-pending{background:transparent;border:2px solid #F5C000;color:#f5c000;animation:ritual-breathe-open 3s ease-in-out infinite}.week-review-link.open-week-pending:hover{animation:none;box-shadow:0 0 28px #f5c0008c;opacity:1}.week-review-link.open-week-done{background:#f5c000;color:#1a1200;opacity:.5;cursor:default}.week-review-link.close-week-pending{background:transparent;border:2px solid #16a34a;color:#16a34a;animation:ritual-breathe-close 3s ease-in-out infinite}.week-review-link.close-week-pending:hover{animation:none;box-shadow:0 0 28px #22c55e8c;opacity:1}.week-review-link.close-week-done{background:#16a34a;color:#fff;opacity:.5;cursor:default}.week-nav-actions{display:flex;flex-direction:row;align-items:center;gap:8px}.week-review-link.quarter-review-pending{background:transparent;border:2px solid #f97316;color:#f97316;animation:ritual-breathe-quarter 3s ease-in-out infinite}.week-review-link.quarter-review-pending:hover{animation:none;box-shadow:0 0 28px #f973168c;opacity:1}@keyframes ritual-breathe-quarter{0%,to{opacity:.7;box-shadow:0 0 12px #f9731633}50%{opacity:1;box-shadow:0 0 20px #f9731673}}.week-review-link.celebration-pending{background:transparent;border:2px solid #f59e0b;color:#f59e0b;animation:ritual-breathe-celebration 3s ease-in-out infinite}.week-review-link.celebration-pending:hover{animation:none;box-shadow:0 0 28px #f59e0b8c;opacity:1}@keyframes ritual-breathe-celebration{0%,to{opacity:.7;box-shadow:0 0 12px #f59e0b33}50%{opacity:1;box-shadow:0 0 20px #f59e0b73}}.week-review-link.quarter-startup-pending{background:transparent;border:2px solid #38bdf8;color:#38bdf8;animation:ritual-glow-startup 2.8s ease-in-out infinite}.week-review-link.quarter-startup-pending:hover{animation:none;box-shadow:0 0 28px #38bdf88c;opacity:1}@keyframes ritual-glow-startup{0%,to{opacity:.75;box-shadow:0 0 12px #38bdf82e}50%{opacity:1;box-shadow:0 0 20px #38bdf866}}.week-review-link.nsg-workshop-pending{background:transparent;border:2px solid #a855f7;color:#a855f7;animation:ritual-breathe-nsg 3s ease-in-out infinite}.week-review-link.nsg-workshop-pending:hover{animation:none;box-shadow:0 0 28px #a855f78c;opacity:1}@keyframes ritual-breathe-nsg{0%,to{opacity:.75;box-shadow:0 0 12px #a855f733}50%{opacity:1;box-shadow:0 0 20px #a855f766}}.nsg-idea-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.nsg-idea-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.nsg-idea-number{font-size:.8rem;font-weight:700;color:var(--text-dim);width:24px;text-align:center;flex-shrink:0}.nsg-idea-text{flex:1;font-size:.95rem;color:var(--text)}.nsg-idea-delete{background:none;border:none;color:var(--text-dim);cursor:pointer;opacity:0;transition:opacity .15s,color .15s;font-size:16px;padding:2px 4px}.nsg-idea-item:hover .nsg-idea-delete{opacity:1}.nsg-idea-delete:hover{color:#f87171}.nsg-idea-counter{font-size:.85rem;font-weight:600;color:var(--text-muted);margin-bottom:12px}.nsg-idea-counter.gold{color:#f5c400}.nsg-idea-card{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);transition:opacity .2s,background .15s}.nsg-idea-card:hover{background:var(--surface-hover)}.nsg-idea-card.crossed-out{opacity:.35}.nsg-idea-card.crossed-out .nsg-idea-card-text{text-decoration:line-through}.nsg-idea-card-text{flex:1;font-size:.95rem;color:var(--text);line-height:1.4}.nsg-star-btn{background:none;border:none;cursor:pointer;font-size:18px;padding:2px;transition:transform .15s}.nsg-star-btn:hover{transform:scale(1.15)}.nsg-cross-btn{background:none;border:none;cursor:pointer;color:var(--text-dim);font-size:16px;padding:2px 6px;transition:color .15s}.nsg-cross-btn:hover,.nsg-cross-btn.active{color:#f87171}.nsg-rank-card{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);margin-bottom:8px}.nsg-rank-number{font-size:1.5rem;font-weight:800;color:var(--accent);width:32px;text-align:center;flex-shrink:0}.nsg-rank-text{flex:1;font-size:1rem;color:var(--text);font-weight:500}.nsg-rank-arrows{display:flex;flex-direction:column;gap:2px}.nsg-rank-arrow{background:none;border:1px solid var(--border);border-radius:4px;width:28px;height:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-muted);transition:border-color .15s,color .15s}.nsg-rank-arrow:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.nsg-rank-arrow:disabled{opacity:.3;cursor:not-allowed}.nsg-goal-display{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius);padding:16px 20px;margin-bottom:20px;font-size:1.05rem;font-weight:600;color:var(--text);line-height:1.4}.nsg-areas-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.nsg-area-chip{font-size:.7rem;font-weight:600;padding:3px 10px;border-radius:12px;background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-dim)}.nsg-impact-item{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);transition:border-color .15s,opacity .2s}.nsg-impact-item:hover{border-color:var(--border)}.nsg-impact-item.crossed-out{opacity:.35}.nsg-impact-text{font-size:1.05rem}.nsg-areas-legend{display:flex;flex-wrap:nowrap;gap:4px;margin-bottom:16px;justify-content:center}.nsg-legend-chip{font-size:.65rem;font-weight:600;padding:3px 8px;border-radius:8px;opacity:1;white-space:nowrap}.nsg-inline-areas{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.nsg-inline-area-chip{font-size:.7rem;font-weight:600;padding:3px 9px;border-radius:8px;border:none;cursor:pointer;font-family:inherit;letter-spacing:.02em;text-transform:uppercase;opacity:.45;transition:opacity .15s,transform .15s,box-shadow .15s;background:#8b949e1a;color:var(--text-muted)}.nsg-inline-area-chip:hover{opacity:.7}.nsg-inline-area-chip.on{opacity:1;animation:nsgChipPop .25s ease}.nsg-inline-area-chip.nsg-area-physical.on{background:#22c55e2e;color:#22c55e;box-shadow:0 0 6px #22c55e33}.nsg-inline-area-chip.nsg-area-mental.on{background:#3b82f62e;color:#3b82f6;box-shadow:0 0 6px #3b82f633}.nsg-inline-area-chip.nsg-area-spiritual.on{background:#a855f72e;color:#a855f7;box-shadow:0 0 6px #a855f733}.nsg-inline-area-chip.nsg-area-relational.on{background:#ec48992e;color:#ec4899;box-shadow:0 0 6px #ec489933}.nsg-inline-area-chip.nsg-area-vocational.on{background:#f59e0b2e;color:#f59e0b;box-shadow:0 0 6px #f59e0b33}.nsg-inline-area-chip.nsg-area-financial.on{background:#00b4b42e;color:#00b4b4;box-shadow:0 0 6px #00b4b433}.nsg-inline-area-chip.nsg-area-creative.on{background:#f973162e;color:#f97316;box-shadow:0 0 6px #f9731633}.nsg-inline-area-chip.nsg-area-rejuvenative.on{background:#8b5cf62e;color:#8b5cf6;box-shadow:0 0 6px #8b5cf633}@keyframes nsgChipPop{0%{transform:scale(.9)}50%{transform:scale(1.12)}to{transform:scale(1)}}.nsg-impact-number{font-size:.8rem;font-weight:700;color:var(--text-dim);width:20px;text-align:center;flex-shrink:0;padding-top:2px}.nsg-impact-text{flex:1;font-size:.9rem;color:var(--text);line-height:1.4}.nsg-impact-area-tag{font-size:.65rem;font-weight:600;padding:2px 8px;border-radius:10px;white-space:nowrap}.nsg-impact-delete{background:none;border:none;color:var(--text-dim);cursor:pointer;opacity:0;transition:opacity .15s,color .15s;font-size:14px;padding:2px 4px}.nsg-impact-item:hover .nsg-impact-delete{opacity:1}.nsg-impact-delete:hover{color:#f87171}.nsg-eliminate-link{background:none;border:none;color:var(--text-dim);font-size:.8rem;cursor:pointer;padding:8px 0;transition:color .15s;font-family:inherit;font-style:italic}.nsg-eliminate-link:hover{color:#f87171}.nsg-compare-grid{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.nsg-compare-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;transition:border-color .2s}.nsg-compare-card:hover{border-color:var(--accent)}.nsg-compare-title{font-size:1rem;font-weight:600;color:var(--text);margin-bottom:8px}.nsg-compare-meta{font-size:.8rem;color:var(--text-muted);margin-bottom:12px}.nsg-compare-areas{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:12px}.nsg-area-physical{background:#22c55e1f;color:#22c55e;border:1px solid rgba(34,197,94,.2)}.nsg-area-mental{background:#3b82f61f;color:#3b82f6;border:1px solid rgba(59,130,246,.2)}.nsg-area-spiritual{background:#a855f71f;color:#a855f7;border:1px solid rgba(168,85,247,.2)}.nsg-area-relational{background:#ec48991f;color:#ec4899;border:1px solid rgba(236,72,153,.2)}.nsg-area-vocational{background:#f59e0b1f;color:#f59e0b;border:1px solid rgba(245,158,11,.2)}.nsg-area-financial{background:#00b4b41f;color:#00b4b4;border:1px solid rgba(0,180,180,.2)}.nsg-area-creative{background:#f973161f;color:#f97316;border:1px solid rgba(249,115,22,.2)}.nsg-area-rejuvenative{background:#8b5cf61f;color:#8b5cf6;border:1px solid rgba(139,92,246,.2)}.nsg-constraint-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s}.nsg-constraint-item:hover{border-color:var(--text-dim)}.nsg-constraint-item.selected{border-color:var(--accent);background:var(--accent-dim)}.nsg-constraint-radio{width:18px;height:18px;border-radius:50%;border:2px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:border-color .15s}.nsg-constraint-item.selected .nsg-constraint-radio{border-color:var(--accent)}.nsg-constraint-radio-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);transform:scale(0);transition:transform .15s}.nsg-constraint-item.selected .nsg-constraint-radio-dot{transform:scale(1)}.nsg-constraint-text{flex:1;font-size:.95rem;color:var(--text)}.nsg-final-statement{font-size:1.3rem;font-weight:600;color:var(--text);line-height:1.5;text-align:center;max-width:600px;margin:0 auto 32px;letter-spacing:-.01em}.nsg-final-editable{cursor:pointer;border-bottom:1px dashed var(--text-dim);transition:border-color .15s,color .15s}.nsg-final-editable:hover{border-color:var(--accent);color:var(--accent)}.week-review-done{font-size:.8125rem;font-weight:600;color:#22c55e;opacity:.7;white-space:nowrap;line-height:20px}.review-overlay{position:fixed;inset:0;z-index:9999;background:var(--bg);display:flex;flex-direction:column;align-items:center;opacity:0;transition:opacity .4s ease;overflow-y:auto}.review-overlay.visible{opacity:1}.review-container{width:100%;max-width:900px;margin:0 auto;padding:0 20px;min-height:100vh;display:flex;flex-direction:column;box-sizing:border-box}.review-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 40px;flex-shrink:0;width:100%}.review-header-left{display:flex;flex-direction:column;gap:2px}.review-header-right{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.review-logo{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--accent)}.review-week-subtitle{font-size:.85rem;color:var(--text-muted);font-weight:400}.review-week-label{font-size:.8rem;color:var(--text-dim);font-weight:400}.review-exit{font-size:.8rem;color:var(--text-dim);cursor:pointer;transition:color .2s}.review-exit:hover{color:var(--text-muted)}.review-phase{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:15vh 32px 48px;animation:reviewFadeUp .6s ease forwards}@keyframes reviewFadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.review-phase>*{width:100%;max-width:560px;margin-left:auto;margin-right:auto}.review-opening-title{font-size:1.75rem;font-weight:700;color:var(--text);margin-bottom:14px;text-align:center;line-height:1.3}.review-opening-scores{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:400px}.review-score-row{display:flex;align-items:center;gap:.75rem}.review-score-label{font-size:.8125rem;color:var(--text-muted);width:110px;flex-shrink:0}.review-score-bar{flex:1;height:6px;background:var(--surface);border-radius:3px;overflow:hidden}.review-score-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .6s ease}.review-score-value{font-size:.8125rem;color:var(--text-muted);width:40px;text-align:right;font-variant-numeric:tabular-nums}.review-opening-challenges{margin-top:1.5rem;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.review-challenge-badge{font-size:.8125rem;color:var(--accent);background:var(--accent-dim);padding:.375rem .75rem;border-radius:8px}.review-phase-2{justify-content:flex-start;align-items:stretch;padding-top:0}.review-back-btn{align-self:flex-start;background:none;border:none;color:var(--text-muted);font-size:20px;cursor:pointer;padding:8px 12px;margin-bottom:8px;font-family:inherit;transition:color .15s}.review-back-btn:hover{color:var(--text)}.review-progress-bar{position:sticky;top:0;width:100%;height:3px;background:var(--surface);border-radius:2px;margin-bottom:2.5rem;z-index:1}.review-progress-fill{height:100%;background:var(--accent);border-radius:2px;box-shadow:0 0 12px var(--accent-glow),0 0 4px var(--accent-glow);transition:width .4s ease}.ritual-question-counter{font-size:12px;color:var(--text-dim);text-align:right;margin-top:8px;margin-bottom:4px}.review-thread{display:flex;flex-direction:column;gap:0;width:100%}.review-thread-question{margin-bottom:1.5rem;animation:reviewFadeUp .4s ease forwards}.review-question{font-size:1.2rem;font-weight:600;color:var(--text);margin-bottom:.75rem;line-height:1.45}.review-hint{font-size:.875rem;color:var(--text-dim);margin-bottom:0}.review-thread-answer{margin:.5rem 0 1.25rem;padding:12px 0 12px 20px;border-left:3px solid var(--accent);color:var(--text-muted);font-size:.92rem;line-height:1.65;animation:reviewFadeUp .3s ease forwards}.review-thread-answer p{margin:0;white-space:pre-wrap}.review-thread-comment{margin-bottom:2.5rem;padding:18px 22px;color:var(--text-muted);font-size:.9rem;line-height:1.65;border:1px solid var(--accent-dim);background:var(--accent-dim);border-radius:8px;animation:reviewFadeUp .3s ease forwards}.review-thread-comment p{margin:0}.review-cursor{display:inline-block;width:2px;height:1em;background:var(--accent);margin-left:2px;vertical-align:text-bottom;animation:cursorBlink .8s step-end infinite}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}.review-thread-input{margin-bottom:1rem;animation:reviewFadeUp .4s ease forwards}.review-textarea{width:100%;min-height:80px;background:transparent;border:none;color:var(--text);font-size:.95rem;font-family:inherit;line-height:1.6;resize:none;outline:none;padding:12px 0;border-bottom:1px solid var(--border);transition:border-color .2s}.review-textarea::placeholder{color:var(--text-dim)}.review-textarea:focus{border-color:var(--accent)}.review-nav{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;width:100%}.review-next{display:inline-flex;align-items:center;gap:6px;padding:11px 28px;border-radius:8px;border:none;background:var(--accent);color:var(--bg);font-size:.88rem;font-weight:600;cursor:pointer;font-family:inherit;transition:box-shadow .25s,transform .15s}.review-next:disabled{opacity:.3;cursor:not-allowed}.review-next:not(:disabled):hover{box-shadow:0 0 20px var(--accent-glow),0 4px 14px #0000004d;transform:translateY(-1px)}.review-thread-complete{display:flex;justify-content:center;margin-top:1rem;animation:reviewFadeUp .4s ease forwards}.review-complete-btn{padding:1rem 2rem;font-size:1rem}.review-phase-3{flex:unset;justify-content:flex-start;padding:48px 24px;align-items:stretch;overflow-y:auto}.review-final-comment{margin-bottom:24px}.review-reflecting{display:flex;justify-content:center;align-items:center;flex:1}.review-reflecting-text{font-size:1.25rem;color:var(--text-dim);animation:reflectPulse 1.5s ease-in-out infinite}@keyframes reflectPulse{0%,to{opacity:.4}50%{opacity:1}}.review-synthesis{line-height:1.7;color:var(--text-muted);font-size:.9375rem}.review-synthesis-section{margin-bottom:16px;padding:.75rem 1rem;background:var(--accent-dim);border-left:3px solid var(--accent);border-radius:0 8px 8px 0}.review-synthesis-section:last-of-type{margin-bottom:24px}.review-synthesis-section strong{color:var(--accent)}.review-synthesis-para{margin:0 0 12px}.review-synthesis-para:last-child{margin-bottom:0}.review-save-btn{width:100%;padding:14px 36px;border-radius:8px;border:none;background:var(--accent);color:var(--bg);font-size:.95rem;font-weight:600;cursor:pointer;margin-top:32px;margin-bottom:48px;font-family:inherit;transition:box-shadow .25s,transform .15s}.review-save-btn:not(:disabled):hover{box-shadow:0 0 24px var(--accent-glow),0 4px 16px #0000004d;transform:translateY(-1px)}.review-save-btn:disabled{opacity:.5;cursor:not-allowed}.celebration-opening-sub{font-size:1rem;color:var(--text-muted);text-align:center;margin-bottom:.5rem}.celebration-opening-note{font-size:.8125rem;color:var(--text-dim);text-align:center;font-style:italic}.review-begin-btn{margin-top:2rem;padding:14px 36px;font-size:.95rem;font-weight:600;color:var(--bg);background:var(--accent);border:none;border-radius:8px;cursor:pointer;transition:box-shadow .25s,transform .15s}.review-begin-btn:hover{box-shadow:0 0 24px var(--accent-glow),0 4px 16px #0000004d;transform:translateY(-1px)}.celebration-section-divider{display:flex;align-items:center;gap:12px;margin:24px 0 16px}.celebration-section-rule{flex:1;height:1px;background:var(--border-subtle)}.celebration-section-label{font-size:12px;letter-spacing:.15em;color:var(--text-dim);text-transform:uppercase;white-space:nowrap}.qreview-goal-ratings{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.qreview-goal-row{display:flex;align-items:center;gap:12px}.qreview-goal-label{font-size:14px;color:var(--text-muted);width:100px;flex-shrink:0}.qreview-goal-btns{display:flex;gap:6px}.qreview-rating-btn{font-size:12px;padding:6px 12px;border-radius:6px;border:1px solid var(--border-subtle);background:transparent;color:var(--text-muted);cursor:pointer;transition:all .15s}.qreview-rating-btn:hover{border-color:var(--border)}.qreview-rating-achieved.active{background:#22c55e33;border-color:#22c55e;color:#22c55e}.qreview-rating-partial.active{background:#f59e0b33;border-color:#f59e0b;color:#f59e0b}.qreview-rating-missed.active{background:#ef444433;border-color:#ef4444;color:#ef4444}.review-saved{text-align:center}.review-saved-title{font-size:1.5rem;font-weight:700;color:var(--text);margin-bottom:.5rem}.review-saved-sub{font-size:1rem;color:var(--text-dim)}.qo-review-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;font-size:.6875rem;color:#fff;background:var(--accent);border-radius:50%;margin-left:.375rem;cursor:pointer;flex-shrink:0;opacity:.85;transition:opacity .15s}.qo-review-badge:hover{opacity:1}.qo-year-link-inline{cursor:pointer;transition:color .15s,text-decoration-color .15s;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px}.qo-year-link-inline:hover{color:var(--accent);text-decoration-color:var(--accent)}.qo-practices-list{display:flex;flex-wrap:wrap;gap:8px}.qo-practice-item{display:inline-flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:20px;padding:6px 14px;font-size:.82rem}.qo-practice-name{color:var(--text)}.qo-practice-target{color:var(--text-dim);font-size:.75rem;opacity:.7}.yo-page-content{max-width:860px;margin:0 auto}.yo-nsg-section{margin-bottom:2rem}.yo-nsg-card{background:#f5c0000a;border:1px solid rgba(245,192,0,.28);border-radius:var(--radius);padding:1.5rem 1.5rem 1.25rem;position:relative;transition:border-color .15s,background .15s}.yo-nsg-card.clickable{cursor:pointer}.yo-nsg-card.clickable:hover{border-color:#f5c00073;background:#f5c00012}.yo-nsg-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right,rgba(245,192,0,.35),transparent 60%);pointer-events:none}.yo-nsg-goal{font-size:1.25rem;font-weight:700;letter-spacing:-.01em;line-height:1.35;color:var(--text);margin-bottom:.35rem}.yo-nsg-constraint{font-size:.9rem;color:var(--text-dim);font-style:italic;margin:0 0 .2rem}.yo-nsg-date{font-size:.8rem;color:var(--text-dim);opacity:.65;margin:0}.yo-quarters-section{margin-bottom:2rem}.yo-quarters-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:600px){.yo-quarters-grid{grid-template-columns:1fr}}.yo-quarter-card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius);padding:1.125rem 1.25rem 1rem;cursor:pointer;transition:border-color .2s,background .2s,transform .15s}.yo-quarter-card:hover{border-color:var(--accent);background:var(--surface-hover);transform:translateY(-1px)}.yo-quarter-current{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-dim),0 2px 12px #00000026}.yo-quarter-future{opacity:.55}.yo-quarter-past{opacity:.85}.yo-q-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.625rem}.yo-q-label{font-size:1rem;font-weight:700;letter-spacing:-.01em;color:var(--text)}.yo-q-badges{display:flex;gap:4px}.yo-q-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;font-size:.625rem;border-radius:50%;flex-shrink:0}.yo-q-badge-cel{color:#fff;background:var(--accent)}.yo-q-badge-rev{color:#f5c000;background:#f5c00026}.yo-q-execution{display:flex;align-items:center;gap:8px;margin-bottom:.75rem}.yo-q-exec-bar{flex:1;height:4px;background:var(--border-subtle);border-radius:2px;overflow:hidden}.yo-q-exec-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .4s ease}.yo-q-exec-value{font-size:.75rem;color:var(--text-dim);flex-shrink:0;min-width:50px;text-align:right}.yo-q-exec-empty{font-size:.8rem;color:var(--text-dim);opacity:.5}.yo-q-goals{margin-bottom:.5rem}.yo-q-goal-row{display:flex;align-items:flex-start;gap:6px;margin-bottom:3px}.yo-q-goal-indicator{flex-shrink:0;font-size:.75rem;line-height:1.4;width:10px;text-align:center}.yo-q-goal-indicator.past{color:var(--accent)}.yo-q-goal-indicator.current{color:var(--text-dim)}.yo-q-goal-indicator.future{color:var(--text-dim);opacity:.5}.yo-q-goal-text{font-size:.82rem;color:var(--text);line-height:1.4}.yo-q-no-goals{font-size:.8rem;color:var(--text-dim);opacity:.6;font-style:italic}.yo-q-practices{display:flex;flex-wrap:wrap;gap:4px;margin-top:.375rem;padding-top:.5rem;border-top:1px solid var(--border-subtle)}.yo-q-practice{font-size:.7rem;color:var(--text-dim);background:var(--surface-hover);border:1px solid var(--border-subtle);border-radius:12px;padding:2px 8px;opacity:.7}.lesson-video-iframe{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;border:none!important}.qo-review-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-width:600px;width:90%;max-height:80vh;overflow-y:auto;padding:1.5rem;box-shadow:0 8px 32px #0006}.qo-review-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.qo-review-modal-header h3{font-size:1.125rem;font-weight:700;color:var(--text);margin:0}.qo-review-modal-close{background:none;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;font-family:inherit;transition:color .15s}.qo-review-modal-close:hover{color:var(--text)}.qo-review-modal-body{font-size:.875rem;color:var(--text-muted);line-height:1.7}.qo-review-modal-body p{margin:.25rem 0}.qo-review-divider{border:none;border-top:1px solid var(--border-subtle);margin:1rem 0}.secondary-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;height:52px;border-bottom:none;background:var(--bg);position:relative}.secondary-nav:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:100vw;height:1px;background:var(--border)}.secondary-nav-tabs{display:flex;align-items:center;gap:4px}.secondary-tab{padding:8px 16px;border-radius:var(--radius-xs);font-size:14px;font-weight:600;color:var(--text-muted);cursor:pointer;transition:color .15s,background .15s;border:none;background:none;font-family:inherit}.secondary-tab:hover,.secondary-tab.active{color:var(--text);background:var(--surface-hover)}.secondary-nav-search{flex:0 1 280px}.community-search-wrapper{position:relative;width:100%}.community-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-dim);pointer-events:none}.community-search-input{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xs);padding:7px 12px 7px 34px;font-family:inherit;font-size:13px;color:var(--text);outline:none;transition:border-color .15s;box-sizing:border-box}.community-search-input::placeholder{color:var(--text-dim)}.community-search-input:focus{border-color:var(--accent)}.secondary-nav-actions{display:flex;align-items:center;gap:10px}.community-icon-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--text-dim);border:1px solid var(--border);background:var(--surface);transition:color .15s,border-color .15s,background .15s;position:relative;cursor:pointer}.community-icon-btn:hover{color:var(--text-muted);background:var(--surface-hover)}.community-icon-btn .badge{position:absolute;top:-4px;right:-4px;width:16px;height:16px;background:#ef4444;border-radius:50%;font-size:10px;font-weight:700;color:#fff;display:flex;align-items:center;justify-content:center;border:2px solid var(--bg)}.btn-new-post{display:flex;align-items:center;gap:6px;padding:7px 16px;background:var(--accent);color:#0a1a1a;border-radius:var(--radius-sm);font-size:13.5px;font-weight:600;cursor:pointer;transition:opacity .15s,transform .1s;border:none;font-family:inherit;letter-spacing:-.01em}.btn-new-post:hover{opacity:.9;transform:translateY(-1px)}.community-body{display:grid;grid-template-columns:220px 1fr 280px;gap:24px;align-items:start;padding-top:20px;flex:1}.community-sidebar{display:flex;flex-direction:column;gap:4px;position:sticky;top:100px;padding-top:4px}.sidebar-section-label{display:flex;align-items:center;gap:10px;padding:12px 0 6px}.sidebar-section-label-text{font-size:10.5px;font-weight:600;letter-spacing:.1em;color:var(--text-dim);text-transform:uppercase;white-space:nowrap}.sidebar-section-rule{flex:1;height:1px;background:linear-gradient(to right,var(--border),transparent)}.sidebar-nav-list{display:flex;flex-direction:column;gap:1px}.sidebar-nav-item{display:flex;align-items:center;gap:9px;padding:9px 12px;border-radius:var(--radius-sm);font-size:14px;font-family:inherit;font-weight:500;color:var(--text-muted);background:none;border:none;cursor:pointer;transition:color .15s,background .15s;text-decoration:none;text-align:left;width:100%}.sidebar-nav-item:hover{color:var(--text);background:var(--surface-hover)}.sidebar-nav-item.active{color:var(--accent);background:var(--accent-dim)}.sidebar-nav-emoji{font-size:14px;flex-shrink:0;line-height:1}.sidebar-nav-label{font-weight:500}.community-main{display:flex;flex-direction:column;gap:18px;padding-bottom:60px}.post-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px 22px;transition:border-color .2s}.post-card:hover{border-color:var(--border)}.post-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.post-author-row{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.post-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:#fff;flex-shrink:0}.post-meta{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.post-author-name{font-size:.95rem;font-weight:600;color:var(--text);display:flex;align-items:center;gap:6px}.role-badge{font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 6px;border-radius:4px}.role-badge-admin{color:#f87171;background:#f871711f;border:1px solid rgba(248,113,113,.2)}.role-badge-team{color:#fb923c;background:#fb923c1f;border:1px solid rgba(251,146,60,.2)}.role-badge-platinum{color:#c084fc;background:#c084fc1f;border:1px solid rgba(192,132,252,.2)}.role-badge-signature{color:#60a5fa;background:#60a5fa1f;border:1px solid rgba(96,165,250,.2)}.role-badge-community{color:#4ade80;background:#4ade801a;border:1px solid rgba(74,222,128,.2)}.post-detail-row{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text-dim)}.post-space-link{color:var(--text-muted);font-weight:500;transition:color .15s;text-decoration:none;cursor:pointer}.post-space-link:hover{color:var(--accent)}.post-dot-sep{color:var(--border)}.post-time{color:var(--text-dim)}.post-card-actions-top{display:flex;align-items:center;gap:8px;position:relative}.post-pin-badge{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--role-team);background:#fb923c1a;border:1px solid rgba(251,146,60,.2);border-radius:4px;padding:3px 8px;letter-spacing:.04em}.post-more-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:var(--text-dim);cursor:pointer;transition:color .15s,background .15s;background:none;border:none}.post-more-btn:hover{color:var(--text-muted);background:var(--surface-hover)}.post-title{font-size:1.1rem;font-weight:600;color:var(--text);margin-bottom:8px;line-height:1.35;letter-spacing:-.02em}.post-body{font-size:.95rem;color:var(--text-muted);line-height:1.7;margin-bottom:14px}.post-tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:14px}.post-tag{font-size:12px;font-weight:500;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-glow);border-radius:4px;padding:2px 8px;text-decoration:none;cursor:pointer;transition:background .15s}.post-tag:hover{background:var(--accent-glow)}.post-footer{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--border-subtle)}.post-reactions{display:flex;align-items:center;gap:4px}.reaction-btn{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:var(--radius-xs);background:var(--surface-hover);border:1px solid var(--border-subtle);font-size:.85rem;color:var(--text-muted);cursor:pointer;transition:border-color .15s,background .15s;font-family:inherit}.reaction-btn:hover{border-color:var(--border);background:var(--surface-hover)}.reaction-emoji{font-size:14px}.reaction-count{font-size:12.5px;font-weight:500}.post-footer-right{display:flex;align-items:center;gap:8px}.comments-btn{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--text-dim);cursor:pointer;padding:5px 10px;border-radius:var(--radius-xs);transition:color .15s,background .15s;background:none;border:none;font-family:inherit}.comments-btn:hover{color:var(--text-muted);background:var(--surface-hover)}.bookmark-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-xs);color:var(--text-dim);cursor:pointer;transition:color .15s,background .15s;background:none;border:none}.bookmark-btn:hover{color:var(--accent);background:var(--accent-dim)}.comments-btn.active,.reaction-btn.active{color:var(--accent)}.post-see-more{background:none;border:none;color:var(--accent);cursor:pointer;font-size:13px;font-family:inherit;margin-bottom:8px;padding:0}.post-see-more:hover{opacity:.8}.post-status-badge{padding:1px 6px;border-radius:4px;font-size:10px;font-weight:700}.post-status-scheduled{background:#3b82f621;color:#60a5fa;border:1px solid rgba(59,130,246,.27)}.post-status-draft{background:#f59e0b21;color:#f59e0b;border:1px solid rgba(245,158,11,.27)}.post-status-expires{background:#66666621;color:#999;border:1px solid rgba(102,102,102,.27)}.post-hidden-label{color:#f59e0b;font-size:11px;margin-left:4px}.reaction-summary{font-size:13px;color:var(--text-muted)}.post-overflow-menu{position:absolute;top:100%;right:0;z-index:100;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:4px 0;min-width:180px;box-shadow:0 8px 24px #00000080}.reaction-picker-wrap{position:relative}.reaction-picker-popover{position:absolute;bottom:100%;left:0;margin-bottom:0;display:flex;gap:2px;padding:6px 8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:0 4px 16px #0009;z-index:50}.reaction-picker-item{display:flex;flex-direction:column;align-items:center;gap:1px;padding:4px 8px;border-radius:10px;font-size:18px;cursor:pointer;border:1px solid transparent;background:transparent;line-height:1}.reaction-picker-item.active{border-color:var(--accent);background:var(--accent-glow)}.reaction-picker-count{font-size:10px;color:#999}.reaction-picker-item.active .reaction-picker-count{color:var(--accent)}.post-comments-section{margin-top:12px;border-top:1px solid var(--border);padding-top:12px}.post-comments-closed{font-size:13px;color:var(--text-muted);font-style:italic}.hide-comments-btn{display:block;margin:10px auto 0;background:none;border:none;color:var(--text-dim);font-size:.75rem;font-family:inherit;cursor:pointer;padding:4px 8px;transition:color .15s}.hide-comments-btn:hover{color:var(--text-muted)}.load-more-row{display:flex;justify-content:center;padding:8px 0 16px}.btn-load-more{padding:9px 24px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);font-size:13.5px;font-weight:500;color:var(--text-muted);cursor:pointer;font-family:inherit;transition:color .15s,border-color .15s,background .15s}.btn-load-more:hover{color:var(--text);background:var(--surface-hover)}.community-rail{display:flex;flex-direction:column;gap:16px;position:sticky;top:100px}.rail-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:visible}.rail-section-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;border-bottom:1px solid var(--border-subtle)}.rail-section-title{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.rail-view-all{font-size:12px;color:var(--accent);font-weight:500;cursor:pointer;transition:opacity .15s;background:none;border:none;font-family:inherit;text-decoration:none}.rail-view-all:hover{opacity:.8}.event-list{padding:6px 0;display:flex;flex-direction:column;gap:0}.event-card{background:transparent;border:none;border-radius:0;padding:12px 16px;transition:background .15s}.event-card:hover{background:var(--surface-hover)}.event-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:6px}.event-title{font-size:13px;font-weight:600;color:var(--text-muted);line-height:1.3;transition:color .15s}.event-card:hover .event-title{color:var(--text)}.event-badge{font-size:10px;font-weight:600;letter-spacing:.05em;color:var(--role-signature);background:#60a5fa1a;border:1px solid rgba(96,165,250,.2);border-radius:4px;padding:2px 7px;white-space:nowrap}.event-datetime{font-size:12.5px;color:var(--text-dim);margin-bottom:10px;display:flex;align-items:center;gap:6px}.event-card-footer{display:flex;align-items:center;justify-content:space-between}.event-rsvp-count{font-size:12px;color:var(--text-dim)}.event-rsvp-count strong{color:var(--text-muted);font-weight:600}.btn-rsvp{padding:5px 14px;border-radius:6px;font-size:12.5px;font-weight:600;cursor:pointer;transition:opacity .15s,transform .1s;border:none;font-family:inherit}.btn-rsvp:hover{opacity:.85;transform:translateY(-1px)}.btn-rsvp-outline{background:transparent;color:var(--accent);border:1px solid var(--accent-glow)}.btn-rsvp-outline:hover{background:var(--accent-dim)}.btn-rsvp-going{background:var(--accent);color:#0a1a1a}.pinned-list{padding:10px 12px;display:flex;flex-direction:column;gap:2px}.pinned-item{display:flex;align-items:flex-start;gap:9px;padding:9px 10px;border-radius:var(--radius-xs);cursor:pointer;transition:background .15s;text-decoration:none}.pinned-item:hover{background:var(--surface-hover)}.pinned-icon{margin-top:1px;color:var(--text-dim);flex-shrink:0}.pinned-content{display:flex;flex-direction:column;gap:2px}.pinned-title{font-size:13px;font-weight:500;color:var(--text-muted);line-height:1.3;transition:color .15s}.pinned-item:hover .pinned-title{color:var(--text)}.pinned-meta{font-size:11.5px;color:var(--text-dim)}.trending-list{padding:6px 0}.trending-item{display:flex;align-items:flex-start;gap:12px;padding:10px 16px;cursor:pointer;transition:background .15s}.trending-item:hover{background:var(--surface-hover)}.trending-rank{font-size:18px;font-weight:800;color:var(--border);line-height:1;min-width:18px;text-align:right;margin-top:1px;transition:color .15s;font-variant-numeric:tabular-nums}.trending-item:hover .trending-rank{color:var(--accent)}.trending-body{flex:1;min-width:0}.trending-title{font-size:13px;font-weight:600;color:var(--text-muted);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .15s}.trending-item:hover .trending-title{color:var(--text)}.trending-meta{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-dim);margin-top:3px;flex-wrap:wrap}.trending-dot{width:2px;height:2px;border-radius:50%;background:var(--text-dim);flex-shrink:0}.trending-stats{display:inline-flex;align-items:center;gap:8px;margin-left:auto}.trending-stats span{display:inline-flex;align-items:center;gap:3px}.trending-stats svg{opacity:.6}.pinned-menu-wrap{position:relative;margin-left:auto;flex-shrink:0}.pinned-menu-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;background:none;color:var(--text-dim);cursor:pointer;border-radius:4px;opacity:0;transition:opacity .15s,color .15s,background .15s}.pinned-item:hover .pinned-menu-btn{opacity:1}.pinned-menu-btn:hover{color:var(--text-muted);background:var(--surface-hover)}.pinned-menu-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 0;min-width:160px;box-shadow:0 8px 24px #00000080;z-index:200}.pinned-menu-option{display:block;width:100%;text-align:left;padding:8px 14px;background:none;border:none;color:var(--text);font-size:13px;font-family:inherit;cursor:pointer;transition:background .1s}.pinned-menu-option:hover{background:var(--surface-hover)}.community-page-title{margin:0 0 20px;font-size:20px;font-weight:700;color:var(--text);letter-spacing:-.02em;position:relative;display:inline-block}.community-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.community-tab-group{display:flex;gap:6px;margin-bottom:20px}.community-tag-strip{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.post-tag-filter{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-family:inherit;transition:border-color .15s,background .15s,color .15s}.post-tag-filter:hover{color:var(--text);border-color:var(--border);background:var(--surface-hover)}.post-tag-filter.active{border-color:#60a5fa80;background:#60a5fa1a;color:#60a5fa}.post-tag-filter-clear{padding:4px 12px;border-radius:12px;font-size:12px;cursor:pointer;border:1px solid var(--border);background:transparent;color:var(--text-dim);font-family:inherit;transition:color .15s}.post-tag-filter-clear:hover{color:var(--text-muted)}.community-empty-state{color:var(--text-muted);text-align:center;padding:40px}.community-loading{color:var(--text-muted)}.btn-new-event{padding:8px 18px;border-radius:8px;font-size:14px;font-weight:600;border:none;cursor:pointer;background:var(--accent);color:#0a1a1a;font-family:inherit;transition:opacity .15s,transform .1s}.btn-new-event:hover{opacity:.9;transform:translateY(-1px)}.event-month-group{margin-bottom:8px}.event-month-label{font-size:14px;color:var(--text-muted);margin:20px 0 10px;text-transform:uppercase;letter-spacing:1px;font-weight:600}.event-list-card{display:flex;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px;margin-bottom:10px;cursor:pointer;transition:border-color .15s}.event-list-card:hover{border-color:var(--border)}.event-date-block{width:52px;text-align:center;background:var(--surface-hover);border-radius:8px;padding:6px 0;flex-shrink:0}.event-date-day{font-size:22px;font-weight:700;color:var(--text);line-height:1}.event-date-month{font-size:11px;color:var(--text-muted);text-transform:uppercase}.event-list-body{flex:1}.event-list-title{font-size:15px;font-weight:600;color:var(--text);margin-bottom:2px}.event-list-meta{font-size:12px;color:var(--text-dim)}.event-tag-virtual{margin-left:6px;color:#60a5fa}.event-tag-recurring{margin-left:6px;color:#a855f7}.btn-rsvp-list{padding:6px 14px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;flex-shrink:0;font-family:inherit;transition:opacity .15s}.btn-rsvp-list.going{border:1px solid var(--border);background:var(--surface-hover);color:var(--text-muted)}.btn-rsvp-list.not-going{border:1px solid rgba(96,165,250,.4);background:#60a5fa1a;color:#60a5fa}.member-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.member-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px;cursor:pointer;text-align:center;transition:border-color .2s}.member-card:hover{border-color:var(--border)}.member-card-avatar{display:flex;justify-content:center;margin-bottom:10px}.member-card-name{font-size:14px;font-weight:600;color:var(--text);margin-bottom:4px}.member-card-posts{font-size:12px;color:var(--text-muted);margin-top:8px}.member-search-input{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:10px 14px;color:var(--text);font-size:14px;margin-bottom:20px;box-sizing:border-box;font-family:inherit;outline:none;transition:border-color .15s}.member-search-input::placeholder{color:var(--text-dim)}.member-search-input:focus{border-color:var(--accent)}.role-badge-app{color:#94a3b8;background:#94a3b81a;border:1px solid rgba(148,163,184,.2)}.learn-page{min-height:100vh;background:var(--bg);color:var(--text);display:flex;flex-direction:column;max-width:1280px;margin:0 auto;padding:0 20px;width:100%;box-sizing:border-box;overflow:visible}.learn-course-nav{background:var(--bg);position:relative;flex-shrink:0}.learn-course-nav:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:100vw;height:1px;background:var(--border)}.learn-course-nav-inner{display:flex;align-items:center;height:52px;gap:0}.learn-course-dropdown-btn{display:flex;align-items:center;gap:8px;background:transparent;border:none;color:var(--text);font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;padding:0 20px 0 0;flex-shrink:0;white-space:nowrap;transition:color .18s}.learn-course-dropdown-btn:hover,.learn-course-dropdown-btn.open{color:var(--accent)}.learn-course-dropdown-chevron{color:var(--text-dim);font-size:.7rem;margin-top:1px}.learn-course-nav-divider{width:1px;background:var(--border);margin:10px 20px;flex-shrink:0}.learn-course-dropdown{position:absolute;top:100%;left:0;margin-top:4px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:4px 0;min-width:200px;z-index:100;box-shadow:0 8px 24px #0006}.learn-course-dropdown-item{width:100%;display:block;padding:8px 14px;background:transparent;border:none;cursor:pointer;text-align:left;color:var(--text-muted);font-family:inherit;font-size:13px;font-weight:400;transition:background .15s,color .15s}.learn-course-dropdown-item:hover{background:var(--surface-hover);color:var(--text)}.learn-course-dropdown-item.active{background:var(--surface-hover);color:var(--text);font-weight:600}.learn-section-tabs{display:flex;align-items:stretch;align-self:stretch;gap:0;overflow-x:auto;scrollbar-width:none}.learn-section-tabs::-webkit-scrollbar{display:none}.learn-section-tab{display:flex;align-items:center;padding:0 18px;font-size:.83rem;font-weight:500;color:var(--text-muted);cursor:pointer;border:none;background:transparent;font-family:inherit;white-space:nowrap;position:relative;transition:color .18s}.learn-section-tab:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--accent);border-radius:2px 2px 0 0;transform:scaleX(0);transition:transform .18s ease}.learn-section-tab:hover{color:var(--text)}.learn-section-tab.active{color:var(--accent);font-weight:600}.learn-section-tab.active:after{transform:scaleX(1)}.learn-body{display:flex;flex:1;gap:0;min-height:0}.learn-sidebar{width:280px;min-width:280px;flex-shrink:0;border-right:1px solid var(--border-subtle);background:var(--bg);overflow-y:auto;position:sticky;top:60px;max-height:calc(100vh - 60px);padding:0 0 40px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.learn-sidebar::-webkit-scrollbar{width:4px}.learn-sidebar::-webkit-scrollbar-track{background:transparent}.learn-sidebar::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.learn-sidebar-empty{padding:16px 20px;color:var(--text-muted);font-size:13px;margin:0}.learn-sidebar-progress{padding:24px 20px 20px 0}.learn-sidebar-progress-label{font-size:.72rem;font-weight:600;color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center}.learn-sidebar-progress-count{color:var(--accent);font-weight:700}.learn-sidebar-progress-track{height:3px;background:var(--border);border-radius:3px;overflow:hidden}.learn-sidebar-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-glow));border-radius:3px;box-shadow:0 0 8px var(--accent-glow);transition:width .3s ease}.learn-sidebar-label{display:flex;align-items:center;gap:10px;padding:0 20px 0 0;margin-bottom:12px}.learn-sidebar-label-text{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);white-space:nowrap;flex-shrink:0}.learn-sidebar-label-rule{flex:1;height:1px;background:linear-gradient(90deg,var(--border) 0%,transparent 100%)}.learn-lesson-list{display:flex;flex-direction:column;gap:1px;padding:0 12px 0 0}.learn-lesson-item{display:flex;align-items:center;gap:12px;padding:10px 10px 10px 8px;border-radius:var(--radius-sm);cursor:pointer;text-align:left;position:relative;transition:background .18s;border:none;border-left:3px solid transparent;background:transparent;color:var(--text-muted);font-family:inherit;font-size:.845rem;font-weight:500;width:100%}.learn-lesson-item:hover:not(.active){background:var(--surface-hover)}.learn-lesson-item:hover:not(.active) .learn-lesson-title{color:var(--text)}.learn-lesson-item:hover:not(.active) .learn-lesson-number{border-color:var(--border);color:var(--text-muted)}.learn-lesson-item.active{background:var(--accent-dim);border-left-color:var(--accent);color:var(--text);font-weight:600}.learn-lesson-number{width:22px;height:22px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;background:var(--border);color:var(--text-muted);border:1.5px solid transparent;transition:background .18s,color .18s,border-color .18s,box-shadow .18s}.learn-lesson-item.locked{opacity:.45}.learn-lesson-item.locked .learn-lesson-number{color:var(--text-dim)}.learn-lesson-item.active .learn-lesson-number{background:var(--accent);color:#0d1117;border-color:var(--accent-glow);box-shadow:0 0 10px var(--accent-glow)}.learn-lesson-title{line-height:1.35;color:var(--lesson-link);transition:color .18s}.learn-lesson-item.locked .learn-lesson-title{color:var(--text-dim)}.learn-lesson-item.active .learn-lesson-title{color:var(--text);font-weight:600}.learn-content{flex:1;padding:36px 0 60px 40px;overflow-y:auto;min-width:0;background:var(--bg)}.learn-content-empty{padding-top:60px;text-align:center}.learn-content-empty h2{font-size:22px;font-weight:700;color:var(--text);margin:0 0 8px}.learn-content-empty p{color:var(--text-muted);font-size:14px}.learn-content-header{margin-bottom:24px}.learn-content-title{font-size:1.6rem;font-weight:700;color:var(--text);letter-spacing:-.02em;line-height:1.2;margin:0 0 6px;text-align:left}.learn-content-meta{font-size:.825rem;color:var(--text-dim);font-weight:400;display:flex;align-items:center;gap:8px;margin:0}.learn-content-meta-dot{width:3px;height:3px;border-radius:50%;background:var(--text-dim)}.learn-content-divider{height:1px;background:var(--border-subtle);margin-bottom:28px}.learn-video-wrap{position:relative;width:100%;padding-top:56.25%;margin-bottom:36px;overflow:hidden;border-radius:var(--radius);box-shadow:0 4px 24px #00000080,0 16px 64px #00000059,0 0 0 1px var(--border)}.learn-description{font-size:.95rem;color:var(--text-muted);line-height:1.75;margin-bottom:36px;white-space:pre-wrap;font-weight:400}.learn-resources{margin-bottom:40px}.learn-resources-label{display:flex;align-items:center;gap:12px;margin-bottom:16px}.learn-resources-label-text{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);white-space:nowrap;flex-shrink:0}.learn-resources-label-rule{flex:1;height:1px;background:linear-gradient(90deg,var(--border) 0%,transparent 100%)}.learn-resource-cards{display:flex;flex-direction:column;gap:10px}.learn-resource-card{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;text-decoration:none;color:var(--text);transition:background .18s,border-color .2s,transform .18s}.learn-resource-card:hover{background:var(--surface-hover);border-color:var(--accent);transform:translate(2px)}.learn-resource-info{flex:1;min-width:0}.learn-resource-name{font-size:.875rem;font-weight:600;color:var(--text);margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.learn-resource-meta{display:flex;align-items:center;gap:8px}.learn-resource-badge{font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:4px;color:var(--text-dim);background:var(--surface-hover);border:1px solid var(--border)}.learn-resource-badge.pdf{color:#e05252;background:#dc35351a;border:1px solid rgba(220,53,53,.2)}.learn-resource-badge.docx{color:#5b8ee8;background:#2563eb1a;border:1px solid rgba(37,99,235,.2)}.learn-resource-badge.xlsx{color:#52b852;background:#228b221a;border:1px solid rgba(34,139,34,.2)}.learn-resource-download-icon{color:var(--text-dim);transition:color .18s,transform .2s;flex-shrink:0}.learn-resource-card:hover .learn-resource-download-icon{color:var(--accent);transform:translateY(2px)}.learn-nav-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:28px;border-top:1px solid var(--border-subtle)}.learn-nav-prev{display:flex;align-items:center;gap:8px;font-size:.83rem;font-weight:500;color:var(--text-dim);cursor:pointer;padding:10px 16px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;font-family:inherit;transition:color .18s,border-color .18s,background .18s}.learn-nav-prev:hover{color:var(--text-muted);border-color:var(--border);background:var(--surface)}.learn-nav-next{display:flex;align-items:center;gap:10px;padding:12px 28px;background:var(--accent);color:#0d1117;font-family:inherit;font-size:.9rem;font-weight:700;border:none;border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.01em;box-shadow:0 4px 20px var(--accent-glow),0 1px 4px #0000004d;transition:background .18s,transform .18s,box-shadow .18s;position:relative;overflow:hidden}.learn-nav-next:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.06) 0%,transparent 60%)}.learn-nav-next:hover{background:#00cece;transform:translateY(-1px);box-shadow:0 6px 28px var(--accent-glow),0 2px 8px #0000004d}.learn-nav-next:active{transform:translateY(0)}.learn-nav-next-arrow{font-size:1.1rem;line-height:1}.ai-lesson-tag{font-size:.65rem;background:var(--accent-dim);color:var(--accent);padding:1px 6px;border-radius:4px;margin-left:8px;font-weight:600}.ai-lesson-container{display:flex;flex-direction:column;height:calc(100vh - 130px);min-height:400px}.ai-lesson-header{display:flex;align-items:baseline;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border-subtle)}.ai-lesson-title{font-size:1.1rem;font-weight:500;color:var(--text)}.ai-lesson-sequence-label{font-size:.8rem;color:var(--accent);opacity:.8}.ai-lesson-loading{display:flex;align-items:center;justify-content:center;flex:1;padding:3rem}.ai-lesson-loading-text{color:var(--text-muted);font-size:.95rem;animation:ai-lesson-pulse 2s ease-in-out infinite}@keyframes ai-lesson-pulse{0%,to{opacity:.5}50%{opacity:1}}.ai-lesson-completed-card{display:flex;align-items:center;gap:14px;padding:20px 24px;margin:16px 20px;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;position:relative;overflow:hidden}.ai-lesson-completed-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--accent-dim) 0%,transparent 40%);pointer-events:none}.ai-lesson-completed-icon{color:var(--accent);flex-shrink:0;margin-top:2px;position:relative}.ai-lesson-completed-text{color:var(--text);font-size:.9rem;line-height:1.55;position:relative;font-weight:500;letter-spacing:.005em;flex:1}.ai-lesson-next-link{color:var(--accent);cursor:pointer;font-weight:600;text-decoration:none;transition:opacity .15s}.ai-lesson-next-link:hover{opacity:.8;text-decoration:underline}.ai-lesson-replay-link{background:none;border:none;cursor:pointer;font-family:inherit;font-size:.72rem;color:var(--text-dim);white-space:nowrap;padding:4px 0;position:relative;flex-shrink:0;transition:color .15s;letter-spacing:.01em}.ai-lesson-replay-link:hover{color:var(--text-muted)}.ai-lesson-messages{flex:1;min-height:0;overflow-y:auto;overflow-anchor:auto;padding:20px;display:flex;flex-direction:column;gap:14px}.ai-lesson-resumed-banner{text-align:center;font-style:italic;color:var(--text-dim);font-size:.85rem;padding:8px 0}.ai-lesson-message{padding:14px 18px;border-radius:12px;max-width:85%;white-space:pre-wrap;line-height:1.65;font-size:.95rem;contain:content;overflow-anchor:none}.ai-lesson-message:last-child{contain:none;overflow-anchor:auto}.ai-lesson-message-assistant{align-self:flex-start;background:var(--surface);border:1px solid var(--border-subtle);color:var(--text)}.ai-lesson-message-user{align-self:flex-end;background:var(--accent-dim);border:1px solid var(--accent-glow);color:var(--text)}.ai-lesson-streaming-cursor{display:inline-block;width:2px;height:1.1em;background:var(--accent);margin-left:2px;vertical-align:text-bottom;animation:ai-lesson-cursor-blink 1s step-end infinite}@keyframes ai-lesson-cursor-blink{0%,to{opacity:1}50%{opacity:0}}.ai-lesson-input-area{padding:16px 20px;border-top:1px solid var(--border-subtle)}.ai-lesson-input-row{display:flex;gap:10px;align-items:flex-end}.ai-lesson-textarea{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text);padding:12px 14px;font-size:.95rem;font-family:inherit;resize:none;min-height:80px;max-height:200px;overflow-y:auto;outline:none;line-height:1.5}.ai-lesson-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-glow)}.ai-lesson-textarea::placeholder{color:var(--text-dim)}.ai-lesson-textarea:disabled{opacity:.5;cursor:not-allowed}.ai-lesson-send-btn{background:var(--accent);border:none;border-radius:var(--radius-sm);color:#fff;padding:10px 20px;cursor:pointer;font-weight:600;font-size:.9rem;font-family:inherit;transition:background .15s,opacity .15s}.ai-lesson-send-btn:hover:not(:disabled){background:#00cece}.ai-lesson-send-btn:disabled{opacity:.5;cursor:not-allowed}.ai-lesson-responding{font-size:.8rem;color:var(--accent);opacity:.7;margin-top:6px;padding-left:2px}.ai-lesson-complete-btn{background:var(--accent-dim);border:1px solid var(--accent-glow);color:var(--accent);padding:12px 24px;border-radius:var(--radius-sm);font-size:1rem;font-family:inherit;font-weight:600;cursor:pointer;width:100%;margin-top:8px;transition:background .15s}.ai-lesson-complete-btn:hover{background:var(--accent-glow)}.admin-page{max-width:1280px;margin:0 auto;padding:0 20px 4rem}.admin-title{font-size:1.375rem;font-weight:700;color:var(--text);margin:0 0 4px;position:relative;display:inline-block}.admin-title:after{content:"";display:block;width:40px;height:3px;background:var(--accent);border-radius:2px;margin-top:6px}.admin-tabs{display:flex;align-items:stretch;gap:0;margin-bottom:24px;margin-top:20px;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none}.admin-tabs::-webkit-scrollbar{display:none}.admin-tab{display:flex;align-items:center;padding:0 18px;height:40px;font-size:.83rem;font-weight:500;color:var(--text-muted);cursor:pointer;border:none;background:transparent;font-family:inherit;white-space:nowrap;position:relative;transition:color .18s}.admin-tab:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--accent);border-radius:2px 2px 0 0;transform:scaleX(0);transition:transform .18s ease}.admin-tab:hover{color:var(--text)}.admin-tab.active{color:var(--accent);font-weight:600}.admin-tab.active:after{transform:scaleX(1)}.admin-loading{color:var(--text-dim);font-size:.875rem;padding:1rem 0}.admin-empty{padding:2rem;text-align:center;color:var(--text-dim);font-size:.875rem}.admin-filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.admin-filter-chip{padding:4px 12px;border-radius:16px;font-size:12px;font-weight:600;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;transition:background .15s,border-color .15s,color .15s;font-family:inherit}.admin-filter-chip:hover{border-color:var(--text-dim)}.admin-filter-chip.active{border-color:var(--text-dim);background:var(--border);color:var(--text)}.admin-filter-chip.empty{opacity:.5;cursor:default}.admin-filter-chip .admin-chip-count{font-weight:400}.admin-filter-row{display:flex;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap}.admin-filter-label{font-size:13px;color:var(--text-muted)}.admin-search-input{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xs);padding:6px 12px;color:var(--text);font-size:13px;font-family:inherit;flex:1;max-width:300px;outline:none;transition:border-color .2s}.admin-search-input::placeholder{color:var(--text-dim)}.admin-search-input:focus{border-color:var(--accent)}.admin-input{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-xs);padding:6px 10px;color:var(--text);font-size:13px;font-family:inherit;outline:none;transition:border-color .2s;box-sizing:border-box}.admin-input::placeholder{color:var(--text-dim)}.admin-input:focus{border-color:var(--accent)}.admin-input-lg{padding:10px 12px;font-size:14px;border-radius:var(--radius-sm)}.admin-textarea{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;color:var(--text);font-size:13px;font-family:inherit;resize:vertical;outline:none;width:100%;box-sizing:border-box;transition:border-color .2s}.admin-textarea:focus{border-color:var(--accent)}.admin-select{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xs);padding:5px 10px;color:var(--text);font-size:13px;font-family:inherit;cursor:pointer;outline:none;transition:border-color .2s}.admin-select:focus{border-color:var(--accent)}.admin-select option{background:var(--surface);color:var(--text)}.admin-table{width:100%;border-collapse:collapse}.admin-table thead tr{border-bottom:1px solid var(--border);text-align:left}.admin-th{padding:8px 12px;font-size:13px;font-weight:500;color:var(--text-muted);white-space:nowrap}.admin-td{padding:10px 12px;font-size:13px;color:var(--text)}.admin-td-muted{padding:10px 12px;font-size:12px;color:var(--text-dim)}.admin-table tbody tr{border-bottom:1px solid var(--border-subtle);transition:background .12s}.admin-table tbody tr:hover{background:var(--surface-hover)}.admin-table tbody tr.disabled{opacity:.5}.admin-user-name{font-size:14px;color:var(--text)}.admin-user-email{font-size:12px;color:var(--text-dim)}.admin-user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.admin-btn-primary{padding:6px 16px;border-radius:var(--radius-xs);font-size:13px;font-weight:600;border:none;cursor:pointer;background:var(--accent);color:#fff;font-family:inherit;transition:background .15s,opacity .15s}.admin-btn-primary:hover{background:var(--accent);filter:brightness(1.1)}.admin-btn-primary:disabled{opacity:.5;cursor:not-allowed;background:var(--border);color:var(--text-dim)}.admin-btn-sm{padding:4px 12px;font-size:12px}.admin-btn-accent{padding:4px 12px;border-radius:var(--radius-xs);font-size:12px;font-weight:600;border:none;cursor:pointer;background:var(--accent-dim);color:var(--accent);font-family:inherit;transition:background .15s}.admin-btn-accent:hover{background:var(--accent-glow)}.admin-btn-accent:disabled{opacity:.5;cursor:wait}.admin-btn-secondary{padding:6px 16px;border-radius:var(--radius-xs);font-size:13px;font-weight:500;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;font-family:inherit;transition:border-color .15s,color .15s}.admin-btn-secondary:hover{border-color:var(--text-dim);color:var(--text)}.admin-btn-secondary.sm{padding:3px 10px;font-size:11px}.admin-btn-danger{padding:4px 10px;border-radius:var(--radius-xs);font-size:12px;font-weight:600;border:none;cursor:pointer;background:#dc262622;color:#f87171;font-family:inherit;transition:background .15s}.admin-btn-danger:hover{background:#dc262644}.admin-btn-danger.outline{background:none;border:1px solid #dc262633}.admin-btn-danger.outline:hover{background:#dc262622}.admin-btn-danger:disabled{opacity:.5;cursor:not-allowed}.admin-btn-ghost{background:none;border:none;cursor:pointer;font-family:inherit;padding:2px 4px;transition:color .15s}.admin-btn-ghost:hover{color:var(--text)}.admin-btn-ghost:disabled{cursor:default}.admin-btn-enable{padding:4px 10px;border-radius:var(--radius-xs);font-size:12px;font-weight:600;border:none;cursor:pointer;font-family:inherit}.admin-btn-enable.enable{background:#16a34a22;color:#4ade80}.admin-btn-enable.disable{background:#f59e0b22;color:#fbbf24}.admin-btn-enable:hover{opacity:.85}.admin-card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:10px;padding:20px;margin-bottom:24px}.admin-card-title{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--text)}.admin-card-subtitle{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text)}.admin-card-hint{font-size:11px;color:var(--text-dim);margin:6px 0 0}.admin-settings-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border-subtle)}.admin-settings-row:last-child{border-bottom:none}.admin-settings-label{font-size:14px;color:var(--text)}.admin-settings-actions{display:flex;align-items:center;gap:10px}.admin-toggle{width:44px;height:24px;border-radius:12px;border:none;cursor:pointer;position:relative;transition:background .2s;background:var(--border);flex-shrink:0}.admin-toggle.on{background:var(--accent)}.admin-toggle-knob{position:absolute;top:2px;width:20px;height:20px;border-radius:50%;background:#fff;transition:left .2s}.admin-toggle-knob.off{left:2px}.admin-toggle-knob.on{left:22px}.admin-quarter-row{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;background:var(--bg);border-radius:var(--radius-sm);border:1px solid var(--border-subtle)}.admin-quarter-badge{display:inline-block;padding:2px 10px;border-radius:10px;font-size:12px;font-weight:700;background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-glow);min-width:32px;text-align:center}.admin-quarter-label{font-size:12px;color:var(--text-muted)}.admin-year-btn{padding:6px 16px;border-radius:var(--radius-xs);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s,border-color .15s;border:1px solid var(--border);background:var(--surface);color:var(--text-muted)}.admin-year-btn.active{border-color:var(--accent);background:var(--accent-dim);color:var(--accent)}.admin-pod-btn{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xs);padding:4px 8px;font-size:12px;cursor:pointer;white-space:nowrap;font-family:inherit;color:var(--text-muted);transition:border-color .15s}.admin-pod-btn:hover{border-color:var(--text-dim)}.admin-pod-caret{font-size:10px;color:var(--text-dim);margin-left:2px}.admin-pod-dropdown{position:absolute;top:100%;left:10px;z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xs);padding:4px 0;min-width:140px;box-shadow:0 8px 24px #0006}.admin-pod-option{width:100%;display:flex;align-items:center;gap:8px;padding:6px 12px;background:transparent;border:none;cursor:pointer;font-size:12px;text-align:left;font-family:inherit;color:var(--text-dim);transition:background .12s}.admin-pod-option:hover{background:var(--surface-hover)}.admin-pod-option.has-pod{color:var(--text)}.admin-pod-check{width:16px;text-align:center;color:var(--accent)}.admin-field-label{display:block;font-size:11px;color:var(--text-muted);margin-bottom:2px}.admin-field-label-upper{display:block;font-size:11px;color:var(--text-dim);margin-bottom:4px;text-transform:uppercase;letter-spacing:.05em}.admin-add-row{display:flex;gap:8px;align-items:center}.admin-add-form{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}.admin-error{font-size:13px;color:#f87171;margin:12px 0 0;padding:8px 12px;background:#dc262622;border-radius:var(--radius-xs)}.admin-pin-row{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--border-subtle)}.admin-pin-arrows{display:flex;flex-direction:column;gap:2px}.admin-pin-arrow{background:none;border:none;cursor:pointer;color:var(--text-dim);font-size:10px;padding:0;line-height:1}.admin-pin-arrow:disabled{color:var(--border);cursor:default}.admin-pin-title{flex:1;font-size:13px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-pin-space{font-size:11px;color:var(--text-dim);flex-shrink:0}.admin-search-result{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--border-subtle)}.admin-search-result-title{font-size:13px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.admin-td-text{color:var(--text);font-size:13px}.admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.admin-checkbox-label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text);cursor:pointer}.admin-curr-course{background:var(--surface);border:1px solid var(--border-subtle);border-radius:10px;margin-bottom:16px;overflow:hidden}.admin-curr-header{display:flex;align-items:center;gap:10px;padding:14px 20px}.admin-curr-expand{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:12px;padding:4px;transition:transform .15s}.admin-curr-expand.open{transform:rotate(90deg)}.admin-curr-title{flex:1;color:var(--text);font-size:15px;font-weight:600}.admin-curr-section-title{flex:1;color:var(--text);font-size:14px;font-weight:600}.admin-curr-lesson-title{flex:1;color:var(--text);font-size:13px;font-weight:500}.admin-curr-meta{font-size:11px;color:var(--text-dim)}.admin-curr-status{font-size:11px;font-weight:500;padding:2px 8px;border-radius:4px}.admin-curr-status.published{background:#4ade8014;color:#4ade80}.admin-curr-status.draft{background:var(--surface-hover);color:var(--text-dim)}.admin-curr-status-sm{font-size:10px;font-weight:500;padding:2px 6px;border-radius:3px}.admin-curr-sort-btns{display:flex;gap:2px;margin-left:4px}.admin-curr-sort-btn{background:none;border:none;font-size:14px;padding:2px 4px;cursor:pointer;color:var(--text-dim)}.admin-curr-sort-btn:disabled{color:var(--border);cursor:default}.admin-curr-sort-btn.sm{font-size:12px}.admin-curr-actions{display:flex;gap:6px;margin-left:4px}.admin-curr-action-btn{background:none;border:1px solid var(--border);border-radius:5px;padding:3px 10px;cursor:pointer;color:var(--accent);font-size:12px;font-family:inherit;transition:border-color .15s}.admin-curr-action-btn:hover{border-color:var(--accent)}.admin-curr-action-btn.sm{padding:3px 8px;font-size:11px}.admin-curr-action-btn.publish{color:#4ade80}.admin-curr-action-btn.unpublish{color:#f97316}.admin-curr-action-btn.danger{border-color:#dc262633;color:#f87171}.admin-curr-action-btn.danger:hover{border-color:#dc262666}.admin-curr-body{border-top:1px solid var(--border-subtle);padding:16px 20px 20px;background:var(--bg)}.admin-curr-section{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);margin-bottom:10px;overflow:hidden}.admin-curr-section-header{display:flex;align-items:center;gap:10px;padding:12px 16px}.admin-curr-lesson{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);margin-bottom:6px;overflow:hidden}.admin-curr-lesson-header{display:flex;align-items:center;gap:8px;padding:10px 14px}.admin-curr-lesson-body{padding:0 14px 14px 36px;border-top:1px solid var(--border-subtle)}.admin-curr-lesson-detail{padding:20px 16px 20px 36px;border-top:1px solid var(--border-subtle)}.admin-curr-section-body{border-top:1px solid var(--border-subtle);padding:16px;background:var(--bg)}.admin-curr-section-lessons{margin-left:20px}.admin-curr-lessons-wrapper{margin-left:24px}.admin-curr-heading{margin:0 0 8px;font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.admin-curr-add-row{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-subtle)}.admin-dl-row{display:flex;align-items:center;gap:10px;padding:8px 10px;margin-bottom:4px;background:var(--bg);border-radius:var(--radius-xs);border:1px solid var(--border-subtle)}.admin-dl-grip{cursor:grab;color:var(--text-dim);font-size:14px;padding:0 2px;-webkit-user-select:none;user-select:none}.admin-dl-type{font-size:11px;color:var(--text-dim);font-weight:500;text-transform:uppercase;min-width:36px}.admin-dl-label{flex:1;font-size:13px;color:var(--text)}.admin-dl-delete{background:none;border:none;cursor:pointer;color:#f87171;font-size:14px;padding:2px 6px;line-height:1}.admin-dl-add{display:flex;gap:8px;margin-top:10px}.admin-downloads-section{border-top:1px solid var(--border-subtle);padding-top:16px;margin-top:4px}.admin-lesson-view-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:14px}.admin-unassigned{margin-top:24px;border-top:1px solid var(--border-subtle);padding-top:20px}.admin-unassigned-title{margin:0 0 12px;font-size:14px;color:var(--text-muted);font-weight:600}.admin-unassigned-count{color:var(--text-dim);font-weight:400}.admin-unassigned-row{display:flex;align-items:center;gap:10px;padding:10px 16px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);margin-bottom:8px}.admin-add-course{display:flex;gap:10px;margin-top:20px;padding:16px 20px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:10px}.admin-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999}.admin-modal{background:var(--surface);border-radius:var(--radius);padding:24px;max-width:440px;width:90%;border:1px solid var(--border)}.admin-modal-title{margin:0 0 12px;font-size:18px;font-weight:600;color:var(--text)}.admin-modal-body{font-size:14px;color:var(--text-muted);line-height:1.6;margin:0 0 16px}.admin-modal-actions{display:flex;gap:10px;justify-content:flex-end}.admin-btn-delete-confirm{padding:8px 16px;border-radius:var(--radius-sm);font-size:14px;font-weight:600;border:none;cursor:pointer;font-family:inherit;transition:background .15s}.admin-btn-delete-confirm.ready{background:#dc2626;color:#fff}.admin-btn-delete-confirm.not-ready{background:var(--border);color:var(--text-dim);cursor:not-allowed}.admin-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--success);color:#fff;padding:10px 20px;border-radius:var(--radius-sm);font-size:14px;font-weight:600;z-index:9999;box-shadow:0 4px 16px #0000004d}.att-table{border-collapse:collapse}.att-cell-header{width:40px;min-width:40px;text-align:center;font-size:11px;padding:4px 2px}.att-cell{width:40px;min-width:40px;text-align:center;cursor:pointer;padding:6px 2px;font-size:14px;transition:background .1s;-webkit-user-select:none;user-select:none}.att-cell:hover{background:var(--surface-hover)}.att-cell-blank{color:var(--text-dim);opacity:.3}.att-cell-present{color:#4ade80;font-weight:700}.att-cell-absent{color:#f87171;font-weight:700}.admin-actions{display:flex;gap:6px;white-space:nowrap}.admin-self-label{font-size:12px;color:var(--text-dim)}.profile-page{padding-top:0}.profile-content{max-width:680px;margin:0 auto}.profile-loading{font-size:14px;color:var(--text-dim)}.profile-page-title{font-size:1.5rem;font-weight:700;letter-spacing:-.03em;position:relative;display:inline-block;color:var(--text)}.profile-page-title:after{content:"";position:absolute;bottom:-8px;left:0;width:32px;height:3px;border-radius:2px;background:var(--accent)}.profile-identity{display:flex;align-items:center;gap:1.25rem;padding:1.25rem 1.25rem 1rem}.profile-avatar-wrap{position:relative;flex-shrink:0}.profile-avatar{width:72px;height:72px;border-radius:50%;display:block;position:relative;overflow:hidden;cursor:pointer;border:2px solid var(--accent-glow);box-shadow:0 0 18px var(--accent-glow),0 2px 8px #00000059;transition:box-shadow .2s ease}.profile-avatar:hover{box-shadow:0 0 26px var(--accent-glow),0 2px 8px #00000059}.profile-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block;transition:opacity .15s}.profile-avatar-img.uploading{opacity:.5}.profile-avatar-overlay{position:absolute;inset:0;border-radius:50%;background:#0000008c;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;color:#fff;letter-spacing:.05em;opacity:0;transition:opacity .18s ease}.profile-avatar:hover .profile-avatar-overlay{opacity:1}.profile-avatar-file-input{display:none}.profile-identity-text{flex:1;min-width:0}.profile-name{font-size:1.125rem;font-weight:700;letter-spacing:-.02em;margin-bottom:.35rem;color:var(--text)}.profile-role-badge{display:inline-flex;align-items:center;gap:5px;font-size:.75rem;font-weight:600;color:#60a5fa;background:#3b82f61f;border:1px solid rgba(59,130,246,.2);border-radius:20px;padding:3px 10px;letter-spacing:.02em}.profile-role-badge-dot{width:6px;height:6px;border-radius:50%;background:#60a5fa;opacity:.75;flex-shrink:0}.profile-form{padding:0 1.25rem 1.25rem;display:flex;flex-direction:column;gap:.875rem}.profile-field{display:flex;flex-direction:column;gap:.375rem}.profile-field-label{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);display:block}.profile-input{background:var(--surface-hover);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);padding:.6rem .875rem;font-family:inherit;font-size:.875rem;color:var(--text);outline:none;width:100%;transition:border-color .15s,box-shadow .15s}.profile-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.profile-input::placeholder{color:var(--text-dim)}.profile-textarea{background:var(--surface-hover);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);padding:.6rem .875rem;font-family:inherit;font-size:.875rem;color:var(--text);outline:none;width:100%;resize:vertical;line-height:1.5;transition:border-color .15s,box-shadow .15s}.profile-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.profile-textarea::placeholder{color:var(--text-dim)}.profile-card-divider{height:1px;background:var(--border-subtle);margin:0}.profile-security-field{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.375rem}.profile-security-label{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);display:block}.profile-email-display{font-size:.9rem;font-weight:500;color:var(--text)}.profile-email-hint{font-size:.8rem;color:var(--text-dim)}.profile-security-pw{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.profile-security-pw-inputs{display:flex;flex-direction:column;gap:.625rem}.profile-password-error{font-size:13px;color:#f87171;margin:0}.profile-session-row{padding:1rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.profile-session-info{display:flex;flex-direction:column;gap:2px}.profile-session-label{font-size:.875rem;font-weight:500;color:var(--text)}.profile-session-desc{font-size:.8125rem;color:var(--text-muted)}.profile-btn-signout{display:inline-flex;align-items:center;gap:6px;background:transparent;color:#f87171;border:1px solid rgba(248,113,113,.35);border-radius:var(--radius-xs);padding:.45rem 1rem;font-family:inherit;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s;letter-spacing:.01em;white-space:nowrap}.profile-btn-signout:hover{background:#f8717114;border-color:#f871718c}.member-profile-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:28px 24px 24px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:8px}.member-profile-name{font-size:1.4rem;font-weight:700;color:var(--text);letter-spacing:-.02em;line-height:1.2;margin:2px 0 0}.member-profile-headline{font-size:.9375rem;color:var(--text-muted);line-height:1.4}.member-profile-role-badge{display:inline-block;padding:3px 12px;border-radius:10px;font-size:12px;font-weight:600;text-transform:capitalize;letter-spacing:.01em}.member-profile-location{display:flex;align-items:center;gap:5px;font-size:.8125rem;color:var(--text-muted)}.member-profile-bio{font-size:.9rem;color:var(--text-dim);line-height:1.6;margin:4px 0 0;white-space:pre-wrap}.member-profile-social{display:flex;align-items:center;gap:14px;margin-top:2px}.member-profile-social-link{display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:color .15s ease;text-decoration:none}.member-profile-social-link:hover{color:var(--accent)}.member-profile-meta{display:flex;align-items:center;gap:8px;font-size:.8125rem;color:var(--text-muted);margin-top:4px;flex-wrap:wrap}.member-profile-meta-dot{opacity:.4}.lab-content{max-width:760px;margin:0 auto;width:100%;padding:32px 0}.lab-page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.lab-page-title{font-size:1.5rem;font-weight:700;letter-spacing:-.03em;position:relative;display:inline-block;color:var(--text);margin:0 0 6px}.lab-page-title:after{content:"";position:absolute;bottom:-6px;left:0;width:32px;height:3px;border-radius:2px;background:var(--accent)}.lab-page-subtitle{font-size:.85rem;color:var(--text-muted);margin:10px 0 0}.lab-header-actions{display:flex;gap:8px;flex-shrink:0}.lab-btn-primary{padding:8px 16px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;font-family:inherit;border:none;background:var(--accent);color:#fff;cursor:pointer;transition:opacity .15s}.lab-btn-primary:hover:not(:disabled){opacity:.88}.lab-btn-ghost{padding:8px 16px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;font-family:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;transition:border-color .15s,color .15s}.lab-btn-ghost:hover{border-color:var(--accent);color:var(--text)}.lab-btn-danger{padding:8px 16px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;font-family:inherit;border:1px solid rgba(239,68,68,.4);background:transparent;color:#ef4444;cursor:pointer;transition:background .15s,border-color .15s}.lab-btn-danger:hover{background:#ef444414;border-color:#ef444499}.lab-btn-danger-solid{padding:6px 14px;border-radius:var(--radius-xs);font-size:12px;font-weight:600;font-family:inherit;border:none;background:#ef4444;color:#fff;cursor:pointer;transition:opacity .15s}.lab-btn-danger-solid:hover{opacity:.88}.lab-tabs-bar{display:flex;gap:0;margin-bottom:24px;border-bottom:1px solid var(--border)}.lab-tab{padding:8px 16px;font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;border:none;background:transparent;color:var(--text-muted);position:relative;transition:color .15s}.lab-tab:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--accent);border-radius:2px 2px 0 0;transform:scaleX(0);transition:transform .18s ease}.lab-tab:hover{color:var(--text)}.lab-tab.active{color:var(--text);font-weight:600}.lab-tab.active:after{transform:scaleX(1)}.lab-list{display:flex;flex-direction:column;gap:10px}.lab-card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius);padding:16px 20px;cursor:pointer;transition:border-color .15s}.lab-card:hover{border-color:var(--accent)}.lab-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.lab-card-title-row{display:flex;align-items:center;gap:10px}.lab-card-title{font-weight:600;font-size:.95rem;color:var(--text)}.lab-card-date{font-size:12px;color:var(--text-muted);flex-shrink:0}.lab-card-source{font-size:12px;color:var(--text-muted);margin:0 0 4px}.lab-card-preview{font-size:13px;color:var(--text-muted);margin:0;line-height:1.5}.lab-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px}.lab-badge-foundation{background:var(--accent-dim);color:var(--accent)}.lab-badge-field_note{background:#f59e0b21;color:#f59e0b}.lab-badge-chronicle{background:#8b5cf621;color:#8b5cf6}.lab-skeleton{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;animation:pulse 1.5s ease-in-out infinite}.lab-skeleton-line{background:var(--border);border-radius:4px}.lab-skeleton-title{width:40%;height:16px;margin-bottom:12px}.lab-skeleton-body-a{width:80%;height:12px;margin-bottom:8px}.lab-skeleton-body-b{width:60%;height:12px}.lab-empty{text-align:center;padding:60px 20px}.lab-empty-headline{font-size:1.1rem;color:var(--text);font-weight:500;margin-bottom:8px}.lab-empty-line{font-size:.9rem;color:var(--text-muted);margin:6px 0}.lab-modal-overlay{position:fixed;inset:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.lab-modal{background:var(--surface);border-radius:14px;width:100%;max-width:680px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border)}.lab-modal-sm{max-width:560px;max-height:none;padding:24px}.lab-modal-header{padding:20px 24px 12px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:flex-start;flex-shrink:0}.lab-modal-title-area{flex:1;margin-right:16px;display:flex;flex-direction:column;gap:8px}.lab-modal-title{font-size:1.3rem;font-weight:700;margin:0;color:var(--text)}.lab-modal-title-input{font-size:1.3rem;font-weight:700;font-family:inherit;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:4px 8px;color:var(--text);width:100%;box-sizing:border-box}.lab-modal-close{background:none;border:none;font-size:22px;color:var(--text-muted);cursor:pointer;padding:0 4px;line-height:1;transition:color .15s}.lab-modal-close:hover{color:var(--text)}.lab-modal-body{flex:1;overflow-y:auto;padding:20px 24px}.lab-modal-content{font-size:14px;color:var(--text);line-height:1.8;white-space:pre-wrap}.lab-modal-textarea{width:100%;min-height:300px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;color:var(--text);font-size:14px;font-family:inherit;line-height:1.7;resize:vertical;box-sizing:border-box}.lab-modal-footer{padding:12px 24px 16px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.lab-modal-footer-left{display:flex;gap:8px}.lab-modal-footer-right{display:flex;align-items:center}.lab-delete-confirm{display:flex;align-items:center;gap:8px}.lab-delete-confirm-text{font-size:13px;color:#ef4444}.lab-new-entry-title{font-size:1.2rem;font-weight:700;margin:0 0 16px;color:var(--text)}.lab-input{width:100%;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:14px;font-family:inherit;margin-bottom:12px;box-sizing:border-box;transition:border-color .15s}.lab-input:focus{outline:none;border-color:var(--accent)}.lab-textarea{width:100%;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:14px;font-family:inherit;line-height:1.7;resize:vertical;box-sizing:border-box;transition:border-color .15s}.lab-textarea:focus{outline:none;border-color:var(--accent)}.lab-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.intake-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#0009}.intake-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:32px;max-width:520px;width:90%;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #00000080}.intake-title{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;color:var(--text);text-align:center;margin-bottom:6px}.intake-subtitle{font-size:.9rem;color:var(--text-dim);text-align:center;margin-bottom:32px;line-height:1.5}.intake-fields{display:flex;flex-direction:column;gap:24px;margin-bottom:28px}.intake-field{display:flex;flex-direction:column}.intake-label{font-size:.95rem;font-weight:600;color:var(--text);margin-bottom:4px}.intake-helper{font-size:.8rem;color:var(--text-dim);margin:0 0 8px;line-height:1.4}.intake-input{font-family:inherit;font-size:.9rem;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px 12px;outline:none;transition:border-color .15s;resize:vertical}.intake-input:focus{border-color:var(--accent)}.intake-input::placeholder{color:var(--text-dim);opacity:.5}.intake-textarea{min-height:0}.intake-btn-primary{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:12px 28px;font-size:.95rem;font-weight:600;font-family:inherit;cursor:pointer;transition:opacity .15s}.intake-btn-primary:hover{opacity:.9}.intake-btn-primary:disabled{opacity:.4;cursor:not-allowed}.intake-submit{display:block;width:100%}.intake-btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:10px 20px;font-size:.9rem;font-weight:500;font-family:inherit;cursor:pointer;transition:border-color .15s}.intake-btn-secondary:hover{border-color:var(--accent)}.intake-nudge{background:var(--accent-dim);border:1px solid var(--accent-glow);border-radius:10px;padding:16px;margin-bottom:8px;text-align:center}.intake-nudge p{font-size:.85rem;color:var(--text-dim);margin:0 0 12px;line-height:1.5}.intake-nudge-actions{display:flex;gap:10px;justify-content:center}.pl-page{max-width:900px;margin:0 auto}.pl-exec-view{max-width:100%}.pl-exec-header{display:flex;align-items:center;gap:16px;margin-bottom:12px;flex-wrap:wrap}.pl-back-btn{display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:var(--text-dim);font-size:13px;font-family:inherit;cursor:pointer;padding:0;transition:color .15s}.pl-back-btn:hover{color:var(--accent)}.pl-member-info{display:flex;align-items:center;gap:8px}.pl-member-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover}.pl-member-name{font-size:14px;font-weight:600;color:var(--text);display:block}.pl-member-email{font-size:11px;color:var(--text-dim);display:block}.pl-week-nav{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:14px}.pl-week-label{font-size:13px;font-weight:600;color:var(--text);min-width:140px;text-align:center}.pl-nsg-card{border:1px solid rgba(245,192,0,.3);background:#f5c00008;border-radius:var(--radius);padding:8px 12px;margin-bottom:10px}.pl-nsg-text{font-size:13px;font-weight:600;color:var(--text)}.pl-nsg-empty{font-size:12px;color:var(--text-dim);font-style:italic}.pl-goals-row{display:flex;gap:8px;margin-bottom:10px;overflow-x:auto}.pl-goal-card{border:1px solid var(--accent-glow);background:var(--accent-dim);border-radius:var(--radius);padding:8px 12px;min-width:160px;flex:1}.pl-goal-text{font-size:13px;font-weight:600;color:var(--text);display:block;line-height:1.3}.pl-goal-plan{font-size:11px;color:var(--text-dim);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:2px;line-height:1.35}.pl-section{margin-bottom:10px}.pl-section-header{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;padding:0 2px}.pl-score{font-size:14px;font-weight:700}.pl-item-row{display:flex;align-items:center;gap:6px;padding:3px 6px;font-size:13px;border-radius:4px}.pl-item-row:nth-child(2n){background:var(--surface-hover)}.pl-item-row.pl-missed{text-decoration:line-through;opacity:.45}.pl-check{flex-shrink:0;width:16px;text-align:center;font-size:12px;color:var(--text-dim)}.pl-check.done{color:#4ade80}.pl-star{color:#fbbf24;font-size:11px;flex-shrink:0}.pl-item-title{flex:1;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pl-item-count{flex-shrink:0;font-size:12px;color:var(--text-dim);font-variant-numeric:tabular-nums}.pl-members-list{display:flex;flex-direction:column;gap:4px}.pl-member-card{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:var(--radius);border:1px solid var(--border-subtle);background:var(--surface);transition:border-color .15s,background .15s}.pl-member-card.clickable{cursor:pointer}.pl-member-card.clickable:hover{border-color:var(--accent);background:var(--surface-hover)}.pl-member-card-left{display:flex;align-items:center;gap:8px}.pl-member-card-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover}.pl-member-card-avatar-placeholder{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--accent),#0077aa);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#fff}.pl-member-card-name{font-size:13px;font-weight:600;color:var(--text);display:block}.pl-member-card-email{font-size:11px;color:var(--text-dim);display:block}.pl-member-card-right{display:flex;align-items:center;gap:6px}.pl-sharing-dots{display:flex;gap:4px}.pl-dot{width:8px;height:8px;border-radius:50%}.pl-dot-green{background:#4ade80}.pl-dot-teal{background:var(--accent)}.pl-not-sharing{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--text-dim);opacity:.6}.pod-input{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text);padding:8px 12px;font-size:13px;font-family:inherit;width:100%;box-sizing:border-box;outline:none}.pod-input:focus{border-color:var(--accent)}.pl-pod-select{appearance:none;-webkit-appearance:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 32px 8px 14px;color:var(--accent);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;outline:none;transition:border-color .15s,box-shadow .15s;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%235a7085' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.pl-pod-select:hover{border-color:var(--accent)}.pl-pod-select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}.messages-page{min-height:100vh;background:var(--bg);display:flex;flex-direction:column;max-width:1280px;margin:0 auto;padding:0 20px;width:100%;box-sizing:border-box}.messages-container{display:flex;flex:1;width:calc(100% + 40px);margin-left:-20px;margin-right:-20px;min-height:calc(100vh - 60px);border-left:1px solid var(--border);border-right:1px solid var(--border)}.messages-sidebar{width:320px;min-width:320px;border-right:1px solid var(--border);display:flex;flex-direction:column;background:var(--surface)}.messages-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 12px;border-bottom:1px solid var(--border)}.messages-sidebar-title{font-size:18px;font-weight:700;color:var(--text);margin:0}.messages-new-btn{display:flex;align-items:center;gap:6px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);padding:6px 12px;font-size:13px;font-weight:600;cursor:pointer;transition:opacity .15s}.messages-new-btn:hover{opacity:.85}.messages-conv-list{flex:1;overflow-y:auto}.messages-empty{padding:24px 16px;text-align:center;color:var(--text-dim);font-size:13px;margin:0}.messages-conv-item{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;transition:background .15s;border-bottom:1px solid var(--border-subtle)}.messages-conv-item:hover{background:var(--surface-hover)}.messages-conv-item.active{background:var(--surface-hover);border-left:3px solid var(--accent);padding-left:13px}.messages-conv-avatar{flex-shrink:0}.messages-group-avatars{display:flex;gap:-8px;position:relative;width:40px;height:40px}.messages-group-avatars>*:nth-child(1){position:absolute;top:0;left:0;z-index:2}.messages-group-avatars>*:nth-child(2){position:absolute;bottom:0;right:0;z-index:1}.messages-conv-info{flex:1;min-width:0}.messages-conv-name{font-size:14px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.messages-conv-preview{font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.messages-conv-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.messages-conv-time{font-size:11px;color:var(--text-dim)}.messages-unread-dot{width:10px;height:10px;border-radius:50%;background:var(--accent)}.messages-conversation{flex:1;display:flex;flex-direction:column;background:var(--bg);min-width:0}.messages-conv-header{display:flex;flex-direction:column;padding:12px 20px;border-bottom:1px solid var(--border);background:var(--surface);position:relative}.messages-conv-header-info{display:flex;align-items:center;gap:10px}.messages-conv-header-name{font-size:15px;font-weight:600;color:var(--text)}.messages-compose-to{display:flex;align-items:center;gap:8px}.messages-compose-label{font-size:14px;font-weight:600;color:var(--text-muted);flex-shrink:0}.messages-compose-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px;flex:1}.messages-chip{display:flex;align-items:center;gap:4px;background:var(--accent-dim);color:var(--accent);border-radius:12px;padding:3px 8px 3px 10px;font-size:12px;font-weight:600}.messages-chip-remove{background:none;border:none;color:var(--accent);cursor:pointer;font-size:14px;line-height:1;padding:0 2px;opacity:.7}.messages-chip-remove:hover{opacity:1}.messages-compose-input{background:none;border:none;color:var(--text);font-size:14px;outline:none;flex:1;min-width:100px;padding:4px 0}.messages-compose-input::placeholder{color:var(--text-dim)}.messages-search-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--surface);border:1px solid var(--border);border-top:none;border-radius:0 0 var(--radius-sm) var(--radius-sm);box-shadow:0 8px 24px #0000004d;z-index:100;max-height:240px;overflow-y:auto}.messages-search-item{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;font-size:14px;color:var(--text);transition:background .15s}.messages-search-item:hover{background:var(--surface-hover)}.messages-list{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:4px}.message-bubble-wrap{display:flex;align-items:flex-start;gap:8px;max-width:75%}.message-bubble-wrap.own{margin-left:auto;flex-direction:row-reverse}.message-bubble-content{display:flex;flex-direction:column}.message-bubble-wrap.own .message-bubble-content{align-items:flex-end}.message-sender-name{font-size:12px;font-weight:700;color:var(--text);margin-bottom:3px;padding-left:4px}.message-bubble-wrap.own .message-sender-name{color:var(--accent);text-align:right;padding-right:4px;padding-left:0}.message-bubble{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:10px 16px;border-radius:4px 16px 16px;font-size:14px;line-height:1.5;word-break:break-word;white-space:pre-wrap;position:relative}.message-bubble.own{background:var(--accent-dim);border-color:var(--accent-glow);border-left:3px solid var(--accent);color:var(--text);border-radius:16px 4px 16px 16px}.message-time{font-size:10px;color:var(--text-dim);margin-top:3px;padding:0 4px;opacity:.6}.message-edited-tag{font-size:10px;color:var(--text-dim);opacity:.6;font-style:italic;margin-left:4px}.message-bubble-wrap.own .message-bubble-content{position:relative}.message-edit-link{font-size:11px;font-weight:500;color:var(--text-muted);background:none;border:none;cursor:pointer;padding:2px 6px;opacity:0;transition:opacity .15s,color .15s;font-family:inherit}.message-bubble-wrap.own:hover .message-edit-link{opacity:1}.message-edit-link:hover{color:var(--accent)}.message-edit-area{display:flex;flex-direction:column;gap:6px;width:100%;min-width:200px}.message-edit-textarea{background:var(--bg);border:1px solid var(--accent);border-radius:var(--radius-sm);color:var(--text);font-size:14px;font-family:inherit;padding:8px 12px;resize:none;line-height:1.4;min-height:40px}.message-edit-textarea:focus{outline:none}.message-edit-actions{display:flex;gap:6px;justify-content:flex-end}.message-edit-save{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);padding:4px 12px;font-size:12px;font-weight:600;cursor:pointer}.message-edit-save:hover{opacity:.85}.message-edit-save:disabled{opacity:.4;cursor:default}.message-edit-cancel{background:none;color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 12px;font-size:12px;cursor:pointer}.message-edit-cancel:hover{background:var(--surface-hover)}.messages-input-area{display:flex;align-items:flex-end;gap:8px;padding:16px 20px 24px;border-top:1px solid var(--border);background:var(--surface)}.messages-textarea{flex:1;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:14px;font-family:inherit;padding:10px 14px;resize:none;max-height:120px;line-height:1.4}.messages-textarea:focus{outline:none;border-color:var(--accent)}.messages-textarea::placeholder{color:var(--text-dim)}.messages-send-btn{width:38px;height:38px;border-radius:50%;background:var(--accent);color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:opacity .15s}.messages-send-btn:hover:not(:disabled){opacity:.85}.messages-send-btn:disabled{opacity:.4;cursor:default}.messages-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-dim);font-size:14px}@media(max-width:768px){.messages-container{flex-direction:column;border:none}.messages-sidebar{width:100%;min-width:unset;border-right:none;border-bottom:1px solid var(--border);max-height:40vh}.messages-conversation{min-height:60vh}.message-bubble-wrap{max-width:90%}}.notecard{position:relative;background:var(--notecard-bg);border:1px solid var(--notecard-border);border-left:3px solid var(--notecard-accent);border-radius:var(--radius);padding:20px 24px 16px;margin-top:6px;margin-bottom:28px;box-shadow:0 2px 8px var(--notecard-shadow-1),0 10px 32px var(--notecard-shadow-2),0 0 0 1px var(--notecard-shadow-3);transition:box-shadow .4s ease,border-color .4s ease;overflow:hidden}:root,[data-theme=dark]{--notecard-bg: linear-gradient(165deg, #1a2029 0%, #171c24 100%);--notecard-bg-flat: #181d26;--notecard-border: rgba(192, 131, 109, .14);--notecard-accent: #c0836d;--notecard-accent-muted: #a07060;--notecard-accent-dim: rgba(192, 131, 109, .07);--notecard-accent-glow: rgba(192, 131, 109, .12);--notecard-progress-color: #c0836d;--notecard-shadow-1: rgba(0, 0, 0, .35);--notecard-shadow-2: rgba(0, 0, 0, .25);--notecard-shadow-3: rgba(192, 131, 109, .06)}[data-theme=light]{--notecard-bg: linear-gradient(165deg, #fefcfa 0%, #faf6f2 100%);--notecard-bg-flat: #fcf9f6;--notecard-border: rgba(160, 100, 75, .16);--notecard-accent: #a06848;--notecard-accent-muted: #8a5a40;--notecard-accent-dim: rgba(160, 104, 72, .06);--notecard-accent-glow: rgba(160, 104, 72, .1);--notecard-progress-color: #a06848;--notecard-shadow-1: rgba(0, 0, 0, .04);--notecard-shadow-2: rgba(0, 0, 0, .06);--notecard-shadow-3: transparent}.notecard{background:var(--notecard-bg-flat);background:var(--notecard-bg)}.notecard:before{content:"";position:absolute;top:0;left:3px;right:0;height:2px;background:linear-gradient(90deg,var(--notecard-progress-color) var(--notecard-progress, 0%),transparent var(--notecard-progress, 0%));opacity:.5;transition:background .5s ease,opacity .5s ease}.notecard.notecard-complete:before{background:linear-gradient(90deg,var(--notecard-accent),var(--success));opacity:.75}.notecard.notecard-complete{border-color:var(--notecard-accent);box-shadow:0 2px 8px var(--notecard-shadow-1),0 8px 24px var(--notecard-shadow-2),0 0 24px var(--notecard-accent-glow)}.notecard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.notecard-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--notecard-accent)}.notecard-date{font-size:.72rem;font-weight:500;color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:.02em;opacity:.6}.notecard-count{font-size:.72rem;color:var(--text-muted);font-weight:500;margin-top:1px}.notecard-empty{text-align:center;padding:16px 0 4px}.notecard-empty-prompt{font-size:.9rem;color:var(--text-muted);margin-bottom:14px;font-style:italic}.notecard-start-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 24px;background:var(--notecard-accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600;cursor:pointer;transition:opacity .15s,box-shadow .2s;letter-spacing:.02em}.notecard-start-btn:hover{opacity:.88;box-shadow:0 2px 12px var(--notecard-accent-glow)}.notecard-editor{display:flex;flex-direction:column;gap:12px}.notecard-suggestions-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:-4px}.notecard-suggestions{display:flex;flex-wrap:wrap;gap:8px}.notecard-suggestion{display:inline-flex;align-items:center;gap:4px;padding:5px 11px;background:var(--notecard-accent-dim);border:1px solid var(--notecard-border);border-radius:20px;font-size:.78rem;color:var(--text);cursor:pointer;transition:border-color .15s,background .15s}.notecard-suggestion:hover{border-color:var(--notecard-accent);background:var(--notecard-accent-glow)}.notecard-suggestion.done-suggestion{opacity:.35;pointer-events:none;text-decoration:line-through}.notecard-suggestion-plus{font-size:.85rem;color:var(--notecard-accent);font-weight:600}.notecard-draft-list{display:flex;flex-direction:column;gap:5px}.notecard-draft-item{display:flex;align-items:center;justify-content:space-between;padding:7px 12px;background:var(--notecard-accent-dim);border:1px solid var(--notecard-accent-muted);border-radius:var(--radius-xs);font-size:.83rem;color:var(--text)}.notecard-draft-item-title{flex:1}.notecard-draft-item-target{font-size:.72rem;color:var(--text-muted);margin-left:8px}.notecard-draft-remove{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;padding:0 0 0 8px;line-height:1}.notecard-draft-remove:hover{color:var(--text)}.notecard-freeform-row{display:flex;gap:8px}.notecard-freeform-input{flex:1;padding:7px 12px;background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text);font-size:.83rem;font-family:inherit;outline:none;transition:border-color .15s}.notecard-freeform-input:focus{border-color:var(--notecard-accent)}.notecard-freeform-input::placeholder{color:var(--text-dim)}.notecard-add-btn{padding:7px 14px;background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text);font-size:.83rem;cursor:pointer;white-space:nowrap;transition:border-color .15s}.notecard-add-btn:hover{border-color:var(--notecard-accent)}.notecard-add-btn:disabled{opacity:.4;pointer-events:none}.notecard-editor-footer{display:flex;align-items:center;justify-content:space-between;margin-top:4px}.notecard-item-count{font-size:.72rem;color:var(--text-dim)}.notecard-lock-btn{padding:8px 20px;background:var(--notecard-accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600;cursor:pointer;transition:opacity .15s,box-shadow .2s;letter-spacing:.02em}.notecard-lock-btn:hover{opacity:.88;box-shadow:0 2px 12px var(--notecard-accent-glow)}.notecard-lock-btn:disabled{opacity:.4;cursor:default;box-shadow:none}.notecard-target-overlay{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.notecard-target-dialog{background:var(--notecard-bg-flat);border:1px solid var(--notecard-border);border-left:3px solid var(--notecard-accent);border-radius:var(--radius);padding:24px;width:320px;max-width:90vw;box-shadow:0 8px 32px #0000004d}.notecard-target-dialog h3{font-size:.92rem;font-weight:600;color:var(--text);margin-bottom:10px}.notecard-target-dialog p{font-size:.78rem;color:var(--text-muted);margin-bottom:14px}.notecard-target-counter{justify-content:center;margin-bottom:16px}.notecard-target-counter .counter-display{min-width:32px;text-align:center}.notecard-target-actions{display:flex;justify-content:flex-end;gap:8px}.notecard-target-cancel{padding:6px 14px;background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text-muted);font-size:.78rem;cursor:pointer}.notecard-target-confirm{padding:6px 14px;background:var(--notecard-accent);color:#fff;border:none;border-radius:var(--radius-xs);font-size:.78rem;font-weight:600;cursor:pointer;transition:opacity .15s}.notecard-target-confirm:hover{opacity:.88}.notecard-items{display:flex;flex-direction:column;gap:0}.notecard-footer{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding-top:10px;border-top:1px solid var(--notecard-border)}.notecard-edit-link{font-size:.72rem;color:var(--notecard-accent-muted);background:none;border:none;cursor:pointer;padding:0;font-family:inherit;transition:color .15s}.notecard-edit-link:hover{color:var(--notecard-accent)}.notecard-nav{display:flex;align-items:center;gap:12px}.notecard-nav-btn{font-size:.72rem;color:var(--text-dim);background:none;border:none;cursor:pointer;padding:0;font-family:inherit;transition:color .15s}.notecard-nav-btn:hover{color:var(--notecard-accent)}.notecard-nav-btn:disabled{opacity:.3;pointer-events:none}.notecard-loading{text-align:center;padding:16px 0;color:var(--text-dim);font-size:.78rem}
