:root{--color-brand:#2563eb;--color-brand-rgb:37,99,235;--alpha-brand-subtle:0.06;--alpha-brand-soft:0.1;--alpha-brand-mid:0.15;--alpha-brand-strong:0.35;--alpha-brand-intense:0.5;--shadow-brand-sm:0 2px 8px rgba(var(--color-brand-rgb), 0.15);--shadow-brand-md:0 4px 20px rgba(var(--color-brand-rgb), 0.35);--shadow-brand-lg:0 8px 30px rgba(var(--color-brand-rgb), 0.35);--shadow-brand-focus:0 0 0 3px rgba(var(--color-brand-rgb), 0.1);--color-brand-dark:#1d4ed8;--color-ink:#0f172a;--color-ink-muted:#55637a;--border-hairline:#e2e8f0;--gradient-hero:linear-gradient(165deg, #0c1929 0%, #1e3a8a 42%, #0f766e 100%);--gradient-cta:linear-gradient(180deg, var(--color-brand) 0%, var(--color-brand-dark) 100%);--surface-app:#f8fafc;--surface-tint:#f1f5f9;--surface-brand-tint:#eff4ff;--color-positive:#0f6b45;--surface-positive:#ecfdf5;--color-negative:#b42318;--surface-negative:#fef3f2;--color-attention:#92400e;--surface-attention:#fef3c7;--hover-history:#f0c694;--hover-math:#c7d2fe;--hover-writing:#8fded0;--hover-science-kits:#86efac;--hover-try:#f6b58a;--hover-surprise:#5eead4;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:50px;--content-max:800px;--content-wide:1120px;--font-display:'Fraunces',Georgia,'Times New Roman',serif;--font-body:'Source Sans 3',-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--leading-tight:1.25;--leading-snug:1.35;--leading-normal:1.5;--leading-relaxed:1.65;--space-3xs:0.25rem;--space-2xs:0.5rem;--space-xs:0.75rem;--space-sm:1rem;--space-md:1.25rem;--space-lg:1.5rem;--space-xl:1.75rem;--space-2xl:2rem;--space-3xl:2.5rem;--space-4xl:3rem;--category-grad-start:#1e3a8a;--category-grad-end:#0f766e}html{color-scheme:light;scroll-behavior:smooth}*{margin:0;padding:0;box-sizing:border-box}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important;scroll-behavior:auto!important}}body{font-family:var(--font-body);font-size:var(--font-size-md);overflow-x:hidden;background:var(--gradient-hero);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:auto}.hero{min-height:100vh;min-height:100dvh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:max(2rem,env(safe-area-inset-top)) max(2rem,env(safe-area-inset-right)) max(2rem,env(safe-area-inset-bottom)) max(2rem,env(safe-area-inset-left));position:relative;background:var(--gradient-hero)}.hero::after{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 90% 55% at 15% 10%,rgba(255,255,255,.07),transparent 55%),radial-gradient(ellipse 70% 50% at 100% 80%,rgba(14,165,233,.12),transparent 45%)}.hero .content,.hero .date-badge{z-index:1}.date-badge{position:absolute;top:2rem;right:2rem;background:rgba(0,0,0,.25);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.75rem 1.5rem;border-radius:50px;color:#fff;font-size:.9rem;font-weight:600;letter-spacing:.5px;border:1px solid rgba(255,255,255,.3);box-shadow:0 4px 15px rgba(0,0,0,.2);z-index:10;text-shadow:0 1px 3px rgba(0,0,0,.3)}.content{max-width:var(--content-max);width:100%;text-align:left;animation:1s ease-out fadeIn;padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right));box-sizing:border-box}@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.content.idea-update{animation:.5s ease-out fadeInUp}@keyframes fadeInUp{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.label{color:rgba(255,255,255,.95);font-size:.875rem;letter-spacing:.15em;text-transform:uppercase;margin-bottom:var(--space-2xl);font-weight:600;text-shadow:0 1px 3px rgba(0,0,0,.3);font-feature-settings:normal;font-family:var(--font-display)}.idea-text{font-family:var(--font-display);color:#fff;font-size:clamp(2rem, 5vw, 3.5rem);font-weight:700;line-height:1.25;letter-spacing:-.02em;text-wrap:balance;margin-bottom:var(--space-sm);text-shadow:0 2px 10px rgba(0,0,0,.3),0 4px 20px rgba(0,0,0,.2);transition:opacity .3s;min-height:120px;display:flex;align-items:center;justify-content:flex-start;font-feature-settings:normal;width:100%;box-sizing:border-box;text-align:left}.idea-text a{color:inherit;text-decoration:none;transition:opacity .2s,transform .2s;display:inline-block;word-wrap:break-word;overflow-wrap:break-word;max-width:100%}.idea-text a:hover{opacity:.85;transform:scale(1.02)}.idea-text.updating{opacity:.5}.skeleton{background:linear-gradient(90deg,rgba(255,255,255,.1) 25%,rgba(255,255,255,.2) 50%,rgba(255,255,255,.1) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite loading;border-radius:var(--radius-sm);min-height:60px;width:80%;margin:0 auto}@keyframes loading{0%{background-position:200% 0}100%{background-position:-200% 0}}.idea-metadata{display:flex;justify-content:flex-start;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:var(--space-2xl);margin-top:var(--space-sm)}.metadata-badge{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.5rem 1rem;background:rgba(0,0,0,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-xl);color:#fff;font-size:.85rem;font-weight:600;border:1px solid rgba(255,255,255,.3);text-shadow:0 1px 3px rgba(0,0,0,.3)}.metadata-badge .metadata-key{font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;opacity:.8}.scroll-indicator{position:absolute;z-index:1;bottom:max(2rem,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);color:#fff;font-size:.85rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2xs);min-width:44px;min-height:44px;padding:.75rem 1.25rem;box-sizing:border-box;animation:2s infinite bounce;cursor:pointer;transition:color .3s;text-shadow:0 1px 3px rgba(0,0,0,.3);font-weight:500;border-radius:var(--radius-sm)}.scroll-indicator:focus{outline:0}.scroll-indicator:focus-visible{outline:rgba(255,255,255,.95) solid 2px;outline-offset:3px}.scroll-indicator:hover{color:rgba(255,255,255,.7)}@keyframes bounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-10px)}}@media (prefers-reduced-motion:reduce){.scroll-indicator{animation:none}}.arrow{width:24px;height:24px;border-left:2px solid rgba(255,255,255,.8);border-bottom:2px solid rgba(255,255,255,.8);transform:rotate(-45deg)}.actions{min-height:100vh;min-height:100dvh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:max(2rem,env(safe-area-inset-top)) max(1.5rem,env(safe-area-inset-right)) max(2.5rem,env(safe-area-inset-bottom)) max(1.5rem,env(safe-area-inset-left));background:#fff;color:var(--color-ink)}.actions-content{max-width:var(--content-max);width:100%;color:var(--color-ink)}.btn{width:100%;padding:1.5rem 2rem;margin-bottom:var(--space-sm);border:none;border-radius:var(--radius-lg);font-size:1.1rem;font-weight:600;cursor:pointer;transition:transform .3s cubic-bezier(.4, 0, .2, 1),box-shadow .3s cubic-bezier(.4, 0, .2, 1),background-color .3s cubic-bezier(.4, 0, .2, 1),color .3s cubic-bezier(.4, 0, .2, 1),border-color .3s cubic-bezier(.4, 0, .2, 1),opacity .3s cubic-bezier(.4, 0, .2, 1);box-shadow:0 2px 12px rgba(15,23,42,.08);position:relative}.btn:focus-visible{outline:rgba(255,255,255,.8) solid 3px;outline-offset:3px}.btn-primary{background:var(--gradient-cta);color:#fff;font-size:1.2rem;padding:1.75rem 2rem}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(var(--color-brand-rgb),var(--alpha-brand-strong))}.btn-primary:active{transform:translateY(0) scale(.98)}.btn-primary:focus-visible{outline-color:rgba(255,255,255,.9)}.btn-primary.has-filters{box-shadow:var(--shadow-brand-md)}.btn-secondary{background:#fff;color:var(--color-brand);border:2px solid var(--color-brand)}.btn-secondary:hover{background:rgba(var(--color-brand-rgb),var(--alpha-brand-subtle));transform:translateY(-2px);box-shadow:0 6px 25px rgba(var(--color-brand-rgb),var(--alpha-brand-mid))}.btn-secondary:active{transform:translateY(0) scale(.98)}.btn-secondary:focus-visible{outline:3px solid rgba(var(--color-brand-rgb),var(--alpha-brand-intense));outline-offset:3px}.btn-small{padding:.75rem 1.5rem;font-size:.9rem;width:auto;display:inline-block}.explanation{margin-top:var(--space-4xl);padding:var(--space-3xl);max-width:65ch;margin-left:auto;margin-right:auto;background:var(--surface-app);border-radius:var(--radius-lg);color:var(--color-ink);line-height:var(--leading-relaxed);font-size:var(--font-size-lg);animation:.6s ease-out fadeInUp;box-shadow:0 1px 0 rgba(15,23,42,.06),0 12px 40px rgba(15,23,42,.06);border:1px solid rgba(148,163,184,.35);position:relative}.explanation h2{color:var(--color-ink);margin-bottom:var(--space-md);font-size:var(--font-size-xl);font-weight:700;letter-spacing:-.02em;line-height:var(--leading-tight);display:flex;align-items:center;gap:var(--space-xs);text-wrap:balance}.explanation p{color:var(--color-ink);font-size:inherit;line-height:inherit;margin:0}.button-group{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);flex-wrap:wrap}.button-group .btn{flex:1;min-width:200px}.random-toggle{display:flex;align-items:center;gap:var(--space-2xs);color:var(--color-ink);font-weight:500;cursor:pointer;padding:.5rem 1rem;border-radius:var(--radius-sm);background:rgba(var(--color-brand-rgb),var(--alpha-brand-soft));border:1px solid rgba(var(--color-brand-rgb),var(--alpha-brand-mid));transition:background-color .3s cubic-bezier(.4, 0, .2, 1),border-color .3s cubic-bezier(.4, 0, .2, 1);position:relative;min-height:44px}.random-toggle:focus-within{outline:2px solid var(--color-brand);outline-offset:2px}.random-toggle:hover{background:rgba(var(--color-brand-rgb),var(--alpha-brand-mid));border-color:rgba(var(--color-brand-rgb),var(--alpha-brand-intense))}.random-toggle input[type=checkbox]{width:26px;height:26px;min-width:26px;min-height:26px;flex-shrink:0;accent-color:var(--color-brand);cursor:pointer}.info-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--color-brand);color:#fff;font-size:14px;font-weight:700;cursor:help;margin-left:var(--space-3xs);flex-shrink:0}.tooltip{position:absolute;bottom:calc(100% + 10px);right:0;background:var(--color-ink);color:#fff;padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:var(--font-size-sm);line-height:var(--leading-normal);width:280px;box-shadow:0 4px 20px rgba(0,0,0,.2);z-index:1000;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;font-weight:400}.tooltip::after{content:'';position:absolute;top:100%;right:20px;border:6px solid transparent;border-top-color:var(--color-ink)}.tooltip.show{opacity:1;visibility:visible}.tooltip strong{display:block;margin-bottom:var(--space-2xs);color:#93c5fd}.quick-start-box{margin:2rem 0;padding:1.25rem 1.5rem;background:var(--surface-brand-tint);border:1px solid rgba(var(--color-brand-rgb),var(--alpha-brand-mid));border-radius:var(--radius-md);box-shadow:none;animation:.5s ease-out both fadeInUp}.quick-start-header{display:flex;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-sm)}.quick-start-icon{width:20px;height:20px;background:var(--color-brand);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpolyline points='13 2 3 14 12 14 11 22 21 10 12 10 13 2'/%3E%3C/svg%3E") no-repeat center;mask-size:contain;display:inline-block}.quick-start-header h3{color:var(--color-ink);font-size:var(--font-size-xl);font-weight:700;line-height:var(--leading-tight);margin:0}.quick-start-content{color:#1e293b;font-size:1rem;line-height:1.6;margin:0}.quick-start-content strong{color:var(--color-brand-dark);font-weight:600}.how-to-start{margin-top:var(--space-2xl);padding:0;background:0 0;border-radius:0;border:none;animation:.6s ease-out .2s both fadeInUp}.how-to-start-header{display:flex;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-xl);padding-bottom:var(--space-sm);border-bottom:2px solid rgba(var(--color-brand-rgb),var(--alpha-brand-mid))}.how-to-start-header-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:#f1f5f9;border:1px solid rgba(var(--color-brand-rgb),var(--alpha-brand-mid));border-radius:var(--radius-md);flex-shrink:0;color:var(--color-brand)}.how-to-start-header-icon svg{width:26px;height:26px}.how-to-start h3.how-to-guide-title{color:var(--color-ink);margin:0;font-size:var(--font-size-2xl);font-weight:700;letter-spacing:-.02em;line-height:var(--leading-tight)}.how-to-start-steps{display:flex;flex-direction:column;gap:var(--space-sm);list-style:none;padding:0;margin:0}.how-to-start-step{display:flex;gap:var(--space-md);padding:.75rem 0;background:0 0;border:0;border-bottom:1px solid #e2e8f0;border-radius:0;box-shadow:none;animation:.5s ease-out backwards fadeInUp;position:relative}.how-to-start-step:last-child{border-bottom:0}.how-to-start-step-number{display:flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;background:var(--color-brand);color:#fff;border-radius:10px;font-weight:700;font-size:1.1rem;box-shadow:var(--shadow-brand-sm);flex-shrink:0}.how-to-start-step-content{flex:1;display:flex;align-items:center;color:var(--color-ink);font-size:1.05rem;line-height:1.7;font-weight:400}.how-to-start-step-content strong{color:var(--color-brand);font-weight:600}.how-to-start-step-content em{color:var(--color-ink-muted);font-style:italic}.how-to-start-step-content a{color:var(--color-brand);text-decoration:none;font-weight:500;border-bottom:1px solid transparent;transition:color .2s,border-bottom-color .2s}.how-to-start-step-content a:hover{color:#0ea5e9;border-bottom-color:#0ea5e9}.how-to-start-step:first-child{animation-delay:.1s}.how-to-start-step:nth-child(2){animation-delay:.2s}.how-to-start-step:nth-child(3){animation-delay:.3s}.how-to-start-step:nth-child(4){animation-delay:.4s}.how-to-start-step:nth-child(5){animation-delay:.5s}.how-to-start-step:nth-child(6){animation-delay:.6s}.how-to-start-step:nth-child(7){animation-delay:.7s}.how-to-start-step:nth-child(8){animation-delay:.8s}@media (max-width:640px){.how-to-start-header{flex-direction:column;align-items:flex-start;gap:var(--space-2xs)}.how-to-start-header-icon{width:40px;height:40px}.how-to-start h3.how-to-guide-title{font-size:var(--font-size-xl)}.how-to-start-step{padding:.75rem 0;gap:.875rem}.how-to-start-step-number{width:36px;height:36px;min-width:36px;font-size:1rem}.how-to-start-step-content{font-size:.95rem;line-height:1.6}.explanation{margin-top:var(--space-2xl);padding:var(--space-xl);font-size:var(--font-size-md)}.explanation h2{font-size:var(--font-size-lg);margin-bottom:var(--space-sm)}.explanation p{font-size:1rem;line-height:1.75}.section-divider{margin:2rem 0 0!important}.idea-actions{margin-bottom:var(--space-2xl)}}.progress-section{margin-bottom:var(--space-2xl);padding:var(--space-lg);background:var(--surface-tint);border-radius:var(--radius-lg);text-align:center;box-shadow:0 2px 10px rgba(0,0,0,.05)}.discovery-panel h2,.my-ideas-section h2,.progress-section h2{font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:700;line-height:var(--leading-tight);letter-spacing:-.02em;color:var(--color-ink);text-wrap:balance}.progress-section h2{margin-bottom:var(--space-sm)}.stats{display:flex;justify-content:space-around;gap:var(--space-sm)}.stat-item{display:flex;flex-direction:column;align-items:center;gap:var(--space-2xs);cursor:pointer;padding:var(--space-2xs);border-radius:var(--radius-sm);transition:background .2s}.stat-item:hover{background:rgba(var(--color-brand-rgb),var(--alpha-brand-soft))}.stat-number{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-brand);font-variant-numeric:tabular-nums;transition:transform .3s}.stat-item:hover .stat-number{transform:scale(1.1)}.stat-label{font-size:var(--font-size-sm);color:var(--color-ink);text-transform:uppercase;letter-spacing:.5px}.my-ideas-section{margin-bottom:var(--space-2xl);padding:var(--space-lg);background:var(--surface-tint);border-radius:var(--radius-lg);box-shadow:0 2px 10px rgba(0,0,0,.05)}.my-ideas-section h2{margin-bottom:var(--space-sm);display:flex;align-items:center;justify-content:space-between}.ideas-list{display:flex;flex-direction:column;gap:var(--space-xs);max-height:300px;overflow-y:auto}.idea-item{padding:var(--space-sm);background:#fff;border-radius:var(--radius-md);border:1px solid #e2e8f0;cursor:pointer;transition:border-color .2s,transform .2s,box-shadow .2s;display:flex;justify-content:space-between;align-items:center}.idea-item:hover{border-color:var(--color-brand);transform:translateX(4px);box-shadow:var(--shadow-brand-sm)}.idea-item-title{font-weight:500;color:var(--color-ink);flex:1}.idea-item-actions{display:flex;gap:var(--space-2xs)}.idea-item-btn{padding:.25rem .5rem;border:none;background:0 0;cursor:pointer;font-size:1.2rem;opacity:.6;transition:opacity .2s}.idea-item-btn:hover{opacity:1}.empty-state{text-align:left;padding:var(--space-2xl);color:var(--color-ink-muted)}.empty-state-icon{width:48px;height:48px;margin:0 auto 1rem;background:#cbd5e1;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E") no-repeat center;mask-size:contain;display:block}.discovery-panel{margin-bottom:var(--space-2xl);padding:var(--space-lg);background:var(--surface-brand-tint);border-radius:var(--radius-lg);box-shadow:0 2px 10px rgba(0,0,0,.05)}.discovery-panel h2{margin-bottom:var(--space-lg);display:flex;align-items:center;justify-content:space-between}.filter-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-sm)}.filter-reset{min-height:44px;padding:.625rem 1.125rem;background:#fff;border:1px solid #d1d5db;border-radius:var(--radius-sm);color:var(--color-ink);font-size:.85rem;cursor:pointer;transition:border-color .2s,color .2s,background-color .2s}.filter-reset:hover{border-color:var(--color-brand);color:var(--color-brand)}.filter-reset:disabled{opacity:.5;cursor:not-allowed}.filter-group{margin-bottom:var(--space-lg)}.filter-group h3{color:#475569;margin-bottom:var(--space-xs);font-size:var(--font-size-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.map-resource-title{color:var(--color-ink);margin-bottom:var(--space-xs);font-size:var(--font-size-md);font-weight:600;line-height:var(--leading-snug)}.filter-buttons{display:flex;flex-wrap:wrap;gap:var(--space-2xs)}.filter-btn{padding:.5rem 1rem;border:1px solid #d1d5db;border-radius:var(--radius-xl);background:#fff;color:var(--color-ink);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:border-color .3s cubic-bezier(.4, 0, .2, 1),color .3s cubic-bezier(.4, 0, .2, 1),transform .3s cubic-bezier(.4, 0, .2, 1),background-color .3s cubic-bezier(.4, 0, .2, 1);min-height:44px}.filter-btn:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.filter-btn:hover{border-color:var(--color-brand);color:var(--color-brand);transform:translateY(-1px)}.filter-btn.active{background:var(--color-brand);border-color:var(--color-brand);color:#fff}.filter-indicator{display:inline-block;width:8px;height:8px;background:var(--color-positive);border-radius:50%;margin-left:var(--space-2xs)}.search-container{margin-bottom:var(--space-2xl);position:relative}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-input{width:100%;padding:1rem 1.5rem;padding-right:var(--space-4xl);border:2px solid #e2e8f0;border-radius:var(--radius-md);font-size:var(--font-size-md);transition:border-color .2s,box-shadow .2s}.search-clear{position:absolute;top:50%;right:.5rem;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;background:0 0;border:none;font-size:var(--font-size-2xl);color:var(--color-ink-muted);cursor:pointer;line-height:1;border-radius:4px;transition:color .2s,background-color .2s}.search-clear:hover{color:var(--color-ink);background:#e2e8f0}.page-toc{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem 1rem;margin-bottom:var(--space-xl);padding:.75rem 1rem;background:var(--surface-tint);border-radius:var(--radius-md);border:1px solid rgba(148,163,184,.35)}.page-toc-label{font-size:var(--font-size-xs);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-muted);width:100%;text-align:center;margin-bottom:var(--space-3xs)}@media (min-width:641px){.page-toc-label{width:auto;margin-bottom:0;margin-right:var(--space-2xs)}.page-toc{justify-content:flex-start}}.page-toc a{display:inline-flex;align-items:center;min-height:44px;font-size:var(--font-size-sm);font-weight:600;color:var(--color-brand);text-decoration:none;padding:.35rem .85rem;border-radius:var(--radius-xs);transition:background-color .15s,color .15s}.page-toc a:hover{background:rgba(var(--color-brand-rgb),var(--alpha-brand-soft));color:var(--color-brand-dark)}.page-toc a:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}#discover,#explanation,#journey{scroll-margin-top:1.25rem}.search-suggestions{margin-top:var(--space-2xs);background:#fff;border:1px solid #e2e8f0;border-radius:var(--radius-sm);box-shadow:0 4px 12px rgba(0,0,0,.1);max-height:200px;overflow-y:auto;position:absolute;top:100%;left:0;right:0;z-index:101}.search-suggestion-item{padding:.75rem 1rem;cursor:pointer;border-bottom:1px solid #f1f5f9;transition:background .15s;display:flex;align-items:center;gap:var(--space-2xs)}.search-suggestion-item:last-child{border-bottom:none}.search-suggestion-item.selected,.search-suggestion-item:hover{background:var(--surface-app)}.search-suggestion-icon{color:var(--color-ink-muted);font-size:.875rem}.search-input:focus{outline:0;border-color:var(--color-brand);box-shadow:var(--shadow-brand-focus)}.search-results{margin-top:var(--space-sm);max-height:400px;overflow-y:auto;position:relative;z-index:100;background:0 0;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;will-change:scroll-position}.search-results-virtual{position:relative}.search-results-spacer{height:0}.search-loading{padding:var(--space-2xl);text-align:center;color:var(--color-ink-muted)}.search-spinner{width:24px;height:24px;border:3px solid #e2e8f0;border-top-color:var(--color-brand);border-radius:50%;animation:.8s linear infinite spin;margin:0 auto .75rem}@keyframes spin{to{transform:rotate(360deg)}}.search-result-item{padding:var(--space-sm);background:#fff;border-radius:var(--radius-sm);margin-bottom:var(--space-2xs);cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s;border:1px solid #e2e8f0;position:relative;z-index:1;box-shadow:0 1px 3px rgba(0,0,0,.1)}.search-result-item .title{font-weight:600;margin-bottom:var(--space-3xs);pointer-events:none;color:var(--color-ink);font-size:.9375rem;line-height:1.45;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-feature-settings:normal}.search-result-item .description{font-size:.875rem;color:var(--color-ink-muted);pointer-events:none;line-height:1.5;letter-spacing:-.005em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-feature-settings:normal}.search-result-item:hover{border-color:var(--color-brand);transform:translateX(4px);box-shadow:var(--shadow-brand-sm)}.search-result-item:active{transform:translateX(2px)}.search-result-item.selected,.search-result-item:focus{outline:2px solid var(--color-brand);outline-offset:2px;background:var(--surface-app);border-color:var(--color-brand)}.search-result-item mark{background:var(--surface-attention);color:var(--color-attention);padding:.125rem .25rem;border-radius:var(--radius-xs);font-weight:600}.toast{position:fixed;top:max(2rem,env(safe-area-inset-top));right:max(2rem,env(safe-area-inset-right));background:#fff;padding:1rem 1.5rem;border-radius:var(--radius-md);box-shadow:0 4px 20px rgba(0,0,0,.15);display:flex;align-items:center;gap:var(--space-xs);z-index:10000;animation:.3s ease-out slideInRight;max-width:400px}.toast.success{border-left-color:var(--color-positive)}.toast.error{border-left-color:var(--color-negative)}.toast.warning{border-left-color:var(--color-attention)}.toast.info{border-left-color:var(--color-brand)}.toast-icon{font-size:1.5rem;flex-shrink:0;display:flex;align-items:center;justify-content:center}.toast-content{flex:1}.toast-title{font-weight:600;color:var(--color-ink);margin-bottom:var(--space-3xs);font-size:.95rem}.toast-message{color:var(--color-ink-muted);font-size:.875rem}.toast-close{background:0 0;border:none;cursor:pointer;padding:var(--space-3xs);color:#9ca3af;font-size:1.25rem;line-height:1;transition:color .2s}.toast-close:hover{color:#4b5563}@keyframes slideInRight{from{transform:translateX(400px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideOutRight{from{transform:translateX(0);opacity:1}to{transform:translateX(400px);opacity:0}}.toast.hiding{animation:.3s ease-out forwards slideOutRight}.loading-spinner{display:inline-block;width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:.8s linear infinite spin}.btn.loading{position:relative;color:transparent!important;pointer-events:none}.btn.loading::after{content:'';position:absolute;left:50%;top:50%;margin-left:-10px;margin-top:-10px;width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:.8s linear infinite spin}.idea-actions{display:flex;gap:var(--space-xs);margin-bottom:var(--space-sm);flex-wrap:wrap}.action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;padding:.75rem .875rem;border:1px solid #d1d5db;border-radius:var(--radius-md);background:#fff;color:var(--color-ink)!important;font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:border-color .3s cubic-bezier(.4, 0, .2, 1),background-color .3s cubic-bezier(.4, 0, .2, 1),color .3s cubic-bezier(.4, 0, .2, 1),transform .3s cubic-bezier(.4, 0, .2, 1),box-shadow .3s cubic-bezier(.4, 0, .2, 1);flex:1;min-width:100px;position:relative}.action-btn .icon{display:flex;align-items:center;justify-content:center;font-size:1.5rem;line-height:1;flex-shrink:0;transition:transform .2s cubic-bezier(.4, 0, .2, 1);margin:0}.action-btn .icon svg.action-icon-svg{width:22px;height:22px}.action-btn:hover .icon{transform:scale(1.1)}.action-btn:active .icon{transform:scale(.95)}.action-btn .label{color:var(--color-ink)!important;font-size:.8125rem;font-weight:600;letter-spacing:-.005em;line-height:1.2;white-space:nowrap;margin:0;text-align:center;font-feature-settings:normal}.action-btn.active .label,.action-btn.completed .label{color:#fff!important}.action-btn.active .icon,.action-btn.completed .icon{opacity:1}.action-btn:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.action-btn:active{transform:scale(.96)}.action-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1);will-change:transform}.save-btn{color:var(--color-ink)!important}.save-btn:not(.active):not(.completed):hover{border-color:var(--color-positive);color:var(--color-positive);background:var(--surface-positive)}.save-btn:not(.active):not(.completed):hover .label{color:var(--color-positive)!important}.start-btn{color:var(--color-ink)!important}.start-btn:not(.active):not(.completed):hover{border-color:var(--color-brand);color:var(--color-brand);background:var(--surface-brand-tint)}.start-btn:not(.active):not(.completed):hover .label{color:var(--color-brand)!important}.complete-btn{color:var(--color-ink)!important}.complete-btn:not(.active):not(.completed):hover{border-color:var(--color-positive);color:var(--color-positive);background:var(--surface-positive)}.complete-btn:not(.active):not(.completed):hover .label{color:var(--color-positive)!important}.share-btn{color:var(--color-ink)!important}.share-btn:not(.active):not(.completed):hover{border-color:var(--color-brand);color:var(--color-brand);background:var(--surface-brand-tint)}.share-btn:not(.active):not(.completed):hover .label{color:var(--color-brand)!important}.action-btn.active{background:var(--color-brand);border-color:var(--color-brand);color:#fff!important}.action-btn.completed{background:var(--color-positive);border-color:var(--color-positive);color:#fff!important}.share-modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:2000;align-items:center;justify-content:center;padding:var(--space-2xl)}.share-modal.show{display:flex}.share-modal-content{background:#fff;border-radius:var(--radius-lg);padding:var(--space-2xl);padding-top:max(2rem,env(safe-area-inset-top));padding-bottom:max(2rem,env(safe-area-inset-bottom));padding-left:max(2rem,env(safe-area-inset-left));padding-right:max(2rem,env(safe-area-inset-right));max-width:500px;width:100%;position:relative}.share-modal-content>h3,.shortcuts-modal-content>h3{font-size:var(--font-size-2xl);font-weight:700;color:#1e293b;line-height:var(--leading-tight);letter-spacing:-.02em}.share-modal-close{position:absolute;top:1rem;right:1rem;background:0 0;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-ink-muted);width:44px;height:44px;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:color .2s,background-color .2s}.share-modal-close:hover{background:var(--surface-app);color:var(--color-ink)}.share-options{display:flex;flex-direction:column;gap:var(--space-sm);margin-top:var(--space-sm)}.share-option{padding:var(--space-sm);border:2px solid #e2e8f0;border-radius:var(--radius-md);cursor:pointer;transition:border-color .2s,background-color .2s;display:flex;align-items:center;gap:var(--space-sm)}.share-option:hover{border-color:var(--color-brand);background:rgba(var(--color-brand-rgb),var(--alpha-brand-subtle))}.share-option-ico{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:2.5rem;height:2.5rem}.share-option-ico svg{display:block}.share-nudge{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%);background:#1d4ed8;color:#fff;padding:1rem 1.5rem;border-radius:var(--radius-md);box-shadow:var(--shadow-brand-lg);z-index:1500;display:flex;align-items:center;gap:var(--space-sm);max-width:90%;animation:.4s ease-out slideUpIn}@keyframes slideUpIn{from{opacity:0;transform:translateX(-50%) translateY(20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.challenge-banner{position:fixed;top:6rem;left:50%;transform:translateX(-50%);background:var(--color-brand-dark);color:#fff;padding:1.5rem 2rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-brand-lg);z-index:1500;text-align:center;max-width:90%;animation:.6s ease-out bounceIn}@keyframes bounceIn{0%{opacity:0;transform:translateX(-50%) scale(.8)}60%{transform:translateX(-50%) scale(1.05)}100%{opacity:1;transform:translateX(-50%) scale(1)}}.confetti{position:fixed;width:10px;height:10px;z-index:2500;top:-10px;border-radius:2px;animation:linear forwards confettiFall;pointer-events:none}@keyframes confettiFall{to{transform:translateY(100vh) rotate(360deg);opacity:0}}.fab-share svg{width:20px;height:20px}.fab-share{position:fixed;bottom:2rem;right:max(2rem,env(safe-area-inset-right));width:56px;height:56px;background:var(--color-brand);color:#fff;border:none;border-radius:50%;font-size:var(--font-size-2xl);cursor:pointer;box-shadow:var(--shadow-brand-md);z-index:1000;display:flex;align-items:center;justify-content:center;transition:transform .3s,box-shadow .3s,background-color .3s}.fab-share:hover{transform:scale(1.1);box-shadow:0 6px 30px rgba(var(--color-brand-rgb),var(--alpha-brand-intense))}.fab-share:active{transform:scale(.95)}.fab-share.hidden{opacity:0;pointer-events:none;transform:scale(0)}@keyframes fabPulse{0%,100%{box-shadow:var(--shadow-brand-md)}50%{box-shadow:0 4px 30px rgba(var(--color-brand-rgb),var(--alpha-brand-intense))}}.social-proof-badge{display:inline-block;background:var(--color-brand);color:#fff;padding:.25rem .75rem;border-radius:var(--radius-xl);font-size:.75rem;font-weight:600;margin-left:var(--space-2xs)}@keyframes badgeGlow{0%,100%{box-shadow:0 0 10px rgba(var(--color-brand-rgb),var(--alpha-brand-strong))}50%{box-shadow:0 0 20px rgba(var(--color-brand-rgb),var(--alpha-brand-intense))}}.shortcuts-modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:2000;align-items:center;justify-content:center;padding:var(--space-2xl)}.shortcuts-modal.show{display:flex}.shortcuts-modal-content{background:#fff;border-radius:var(--radius-lg);padding:var(--space-2xl);padding-top:max(2rem,env(safe-area-inset-top));padding-bottom:max(2rem,env(safe-area-inset-bottom));padding-left:max(2rem,env(safe-area-inset-left));padding-right:max(2rem,env(safe-area-inset-right));max-width:500px;width:100%;max-height:80vh;overflow-y:auto;position:relative}.shortcut-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid #e2e8f0}.shortcut-key{background:var(--surface-app);padding:.25rem .75rem;border-radius:var(--radius-xs);font-family:monospace;font-size:.85rem;border:1px solid #e2e8f0}.loading{opacity:.6;pointer-events:none;position:relative}.loading::after{content:'';position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid rgba(var(--color-brand-rgb),var(--alpha-brand-strong));border-top-color:var(--color-brand);border-radius:50%;animation:.8s linear infinite spin}.onboarding-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);z-index:3000}.onboarding-overlay.show{display:block}.onboarding-tooltip{position:absolute;background:#fff;padding:var(--space-lg);border-radius:var(--radius-md);box-shadow:0 10px 40px rgba(0,0,0,.3);max-width:300px;z-index:3001}.onboarding-tooltip::after{content:'';position:absolute;width:0;height:0;border:10px solid transparent}.onboarding-tooltip.bottom::after{top:-20px;left:50%;transform:translateX(-50%);border-bottom-color:#fff}.onboarding-tooltip.top::after{bottom:-20px;left:50%;transform:translateX(-50%);border-top-color:#fff}.onboarding-nav{display:flex;justify-content:space-between;margin-top:var(--space-sm);gap:var(--space-sm)}.skip-link{position:absolute;top:0;left:0;transform:translateY(-100%);background:var(--color-brand);color:#fff;padding:.75rem 1.5rem;min-height:44px;display:inline-flex;align-items:center;text-decoration:none;z-index:10000;border-radius:0 0 8px}.skip-link:focus{transform:none}.help-btn{position:fixed;bottom:max(6rem,calc(4rem + env(safe-area-inset-bottom)));right:max(2rem,env(safe-area-inset-right));width:56px;height:56px;border-radius:50%;background:var(--color-brand);color:#fff;border:none;font-size:var(--font-size-2xl);cursor:pointer;box-shadow:var(--shadow-brand-md);z-index:1000;transition:transform .3s,box-shadow .3s;display:flex;align-items:center;justify-content:center}.help-btn:hover{transform:scale(1.1);box-shadow:0 6px 30px rgba(var(--color-brand-rgb),var(--alpha-brand-intense))}.help-btn:focus-visible{outline:3px solid rgba(var(--color-brand-rgb),var(--alpha-brand-intense));outline-offset:3px}@media (max-width:640px){.date-badge{position:relative;top:auto;right:auto;align-self:flex-start;margin-left:var(--space-sm);margin-bottom:var(--space-sm);font-size:.8rem;padding:.6rem 1.2rem;opacity:.85}.hero{padding:var(--space-sm)}.site-header{top:max(1rem,env(safe-area-inset-top));left:max(1rem,env(safe-area-inset-left))}.label{font-size:.85rem;letter-spacing:2px}.idea-text{min-height:100px;font-size:clamp(2rem, 9vw, 2.75rem)}.idea-metadata{gap:var(--space-2xs)}.metadata-badge{font-size:.75rem;padding:.4rem .8rem}.btn{padding:1.25rem 1.5rem;font-size:1rem}.btn-primary{font-size:1.1rem;padding:1.5rem 1.75rem}.stats{flex-direction:column;gap:var(--space-sm)}.filter-buttons{justify-content:center;gap:.625rem}.filter-btn{flex:1;min-width:80px;text-align:center;padding:.625rem .875rem}.idea-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem}.action-btn{min-width:auto;width:100%;padding:.875rem .75rem;gap:var(--space-2xs)}.action-btn .icon{font-size:1.625rem}.action-btn .label{font-size:.875rem}.discovery-panel,.my-ideas-section,.progress-section{padding:var(--space-sm)}.search-container{margin-bottom:var(--space-lg)}.search-input{padding:.875rem 1.25rem;font-size:.95rem}.search-results{max-height:300px;margin-top:var(--space-xs)}.search-result-item{padding:.875rem;font-size:.9rem}.button-group{flex-direction:column;align-items:stretch}.button-group .btn{flex:1 1 auto;min-width:0;width:100%}.random-toggle{justify-content:center;width:100%;box-sizing:border-box}.help-btn{bottom:max(5rem,calc(3.5rem + env(safe-area-inset-bottom)));right:max(1rem,env(safe-area-inset-right));width:48px;height:48px;font-size:1.25rem}.share-modal-content,.shortcuts-modal-content{padding:var(--space-lg);margin:var(--space-sm)}.toast{top:max(1rem,env(safe-area-inset-top));right:max(1rem,env(safe-area-inset-right));left:max(1rem,env(safe-area-inset-left));max-width:calc(100% - 2rem - env(safe-area-inset-left) - env(safe-area-inset-right))}.fab-share{bottom:max(1rem,env(safe-area-inset-bottom));right:max(1rem,env(safe-area-inset-right));width:48px;height:48px}}@media (max-width:480px){.filter-buttons{flex-direction:column;align-items:stretch}.filter-btn{flex:1 1 auto;width:100%;min-width:0;text-align:center}.discovery-panel .filter-header{flex-direction:column;align-items:flex-start;gap:var(--space-xs)}.discovery-panel .filter-header .filter-reset{align-self:flex-end}}@media (max-height:520px) and (orientation:landscape){.hero{min-height:auto;padding-top:max(1rem,env(safe-area-inset-top));padding-bottom:var(--space-md)}.idea-text{min-height:0}}@media (min-width:641px) and (max-width:1024px){.hero{padding:max(1.5rem,env(safe-area-inset-top)) max(1.5rem,env(safe-area-inset-right)) max(1.5rem,env(safe-area-inset-bottom)) max(1.5rem,env(safe-area-inset-left))}.idea-text{font-size:clamp(2rem, 4.5vw, 3rem)}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-sm);align-items:start}.stat-item{padding:.75rem .5rem}.discovery-panel{padding:var(--space-lg)}.filter-buttons{gap:var(--space-2xs)}.filter-btn{flex:1 1 auto;min-width:min(100px,100%)}.idea-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-xs)}.idea-actions .action-btn{width:100%;min-width:0}.button-group{align-items:stretch}.button-group .btn{flex:1 1 45%;min-width:min(200px,100%)}}@media (min-width:1025px){.content{max-width:960px}.label{font-size:1rem;margin-bottom:var(--space-lg)}.idea-text{font-size:clamp(3.5rem, 6vw, 5rem);min-height:140px;margin-bottom:var(--space-lg)}.idea-metadata{margin-top:var(--space-lg)}}@media (hover:none) and (pointer:coarse){.action-btn,.btn,.filter-btn{min-height:44px;min-width:44px}.search-result-item{padding:1rem 1.25rem}.stat-item{min-height:44px}}@media (prefers-contrast:high){.action-btn,.btn,.filter-btn{border-width:2px}.btn:focus,.filter-btn:focus,.search-result-item:focus{outline-width:3px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px;border-radius:4px}.action-btn:focus-visible,.btn:focus-visible,.filter-btn:focus-visible{outline:3px solid var(--color-brand);outline-offset:3px;box-shadow:0 0 0 1px rgba(var(--color-brand-rgb),var(--alpha-brand-strong))}@media (prefers-contrast:high){:focus-visible{outline-width:3px;outline-color:#000}}.hero{background:linear-gradient(165deg,#0c1929 0,var(--category-grad-start) 45%,var(--category-grad-end) 100%)!important;transition:background .6s}.metadata-badge.category-badge{background:rgba(0,0,0,.3);border-color:rgba(255,255,255,.3)}.streak-display{display:flex;align-items:center;justify-content:center;gap:var(--space-2xs);margin-top:var(--space-md);padding:.625rem 1.25rem;background:rgba(var(--color-brand-rgb),var(--alpha-brand-soft));border:1px solid rgba(var(--color-brand-rgb),var(--alpha-brand-mid));border-radius:50px;width:fit-content;margin-left:auto;margin-right:auto;cursor:default}.streak-flame{width:16px;height:16px;background:var(--color-attention);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpath d='M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-1.12-2.5-2.5-2.5S6.5 10.62 6.5 12A2.5 2.5 0 0 0 8.5 14.5z'/%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z'/%3E%3C/svg%3E") no-repeat center;mask-size:contain;display:inline-block;font-size:1.25rem;line-height:1}.streak-count{font-size:1.25rem;font-weight:800;color:var(--color-ink);line-height:1;font-variant-numeric:tabular-nums}.streak-label{font-size:.85rem;color:var(--color-ink);font-weight:500}.streak-display.new-record{animation:1s ease-out streakPulse;background:rgba(255,200,50,.25);border-color:rgba(255,200,50,.6)}@keyframes streakPulse{0%,100%{transform:scale(1)}40%{transform:scale(1.12)}70%{transform:scale(.97)}}.pwa-install-banner{position:fixed;bottom:0;left:0;right:0;background:var(--color-ink);color:#fff;z-index:1200;padding:.875rem 1.25rem;padding-bottom:max(.875rem,env(safe-area-inset-bottom));box-shadow:0 -4px 20px rgba(0,0,0,.2);animation:.35s ease-out slideUpIn}.pwa-banner-content{max-width:600px;margin:0 auto;display:flex;align-items:center;gap:.875rem}.pwa-banner-text{flex:1;font-size:.9rem;line-height:1.3}.pwa-install-btn{background:var(--color-brand);color:#fff;border:none;padding:.6rem 1.25rem;border-radius:var(--radius-sm);font-weight:700;font-size:.9rem;cursor:pointer;white-space:nowrap;transition:background .2s}.pwa-install-btn:hover{background:#1d4ed8}.pwa-dismiss-btn{background:0 0;color:rgba(255,255,255,.6);border:none;font-size:1.4rem;cursor:pointer;padding:var(--space-3xs);line-height:1;transition:color .2s}.pwa-dismiss-btn:hover{color:#fff}.welcome-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:4000;align-items:center;justify-content:center;padding:var(--space-lg)}.welcome-modal.show{display:flex}.welcome-modal-content{background:#fff;border-radius:var(--radius-xl);padding:2.5rem 2rem;max-width:440px;width:100%;text-align:center;box-shadow:0 25px 60px rgba(0,0,0,.3);position:relative}.welcome-icon-old{font-size:3rem;margin-bottom:var(--space-sm);line-height:1}.welcome-modal-content h2{color:var(--color-ink);font-size:var(--font-size-2xl);font-weight:800;margin-bottom:var(--space-xs);line-height:var(--leading-tight);font-family:var(--font-display);text-wrap:balance}.welcome-modal-content p{color:var(--color-ink-muted);font-size:var(--font-size-md);line-height:var(--leading-relaxed);margin-bottom:var(--space-lg)}.welcome-stats-row{display:flex;justify-content:center;gap:var(--space-lg);margin-bottom:var(--space-2xl);padding:var(--space-sm);background:#f7f9ff;border-radius:var(--radius-md)}.welcome-stat{display:flex;flex-direction:column;align-items:center;gap:.2rem}.welcome-stat strong{font-size:1.4rem;font-weight:800;color:var(--color-brand)}.welcome-stat span{font-size:.75rem;color:var(--color-ink-muted);font-weight:500}.welcome-options{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xs);margin-bottom:var(--space-lg)}.welcome-option{padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:var(--radius-md);background:#fff;color:var(--color-ink);font-size:.95rem;font-weight:600;cursor:pointer;transition:border-color .2s,background-color .2s,color .2s;text-align:center}.welcome-option:hover{border-color:var(--color-brand);background:rgba(var(--color-brand-rgb),var(--alpha-brand-subtle))}.welcome-option.selected{border-color:var(--color-brand);background:var(--color-brand);color:#fff}.welcome-skip{margin-top:var(--space-sm);font-size:.85rem;color:var(--color-ink-muted);cursor:pointer;text-decoration:underline;background:0 0;border:none;display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;padding:.65rem 1rem;box-sizing:border-box;border-radius:var(--radius-sm)}.welcome-skip:hover{color:var(--color-ink-muted)}.welcome-skip:focus{outline:0}.welcome-skip:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.welcome-progress{display:flex;justify-content:center;gap:.4rem;margin-bottom:var(--space-lg)}.welcome-dot{width:8px;height:8px;border-radius:50%;background:#e2e8f0;transition:background .2s}.welcome-dot.active{background:var(--color-brand)}@media (max-width:480px){.welcome-modal-content{padding:2rem 1.5rem}.welcome-options{grid-template-columns:1fr 1fr}}.toast.streak{background:linear-gradient(135deg,#f6d365 0,#fda085 100%);color:#7b3f00;font-weight:700;box-shadow:0 4px 20px rgba(253,160,133,.4)}.section-divider{margin:3rem 0 0;height:1px;background:linear-gradient(90deg,transparent 0,rgba(var(--color-brand-rgb),var(--alpha-brand-mid)) 50%,transparent 100%);position:relative}.section-divider-label{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#fff;padding:0 1rem;color:var(--color-ink-muted);font-size:var(--font-size-sm);font-weight:600}.network-strip{margin:2rem 0;padding:1.75rem 1.5rem;background:#fff;border:1px solid #e8edf3;border-radius:var(--radius-lg);box-shadow:0 2px 10px rgba(15,23,42,.05)}.network-strip h2{font-family:var(--font-display);font-size:var(--font-size-2xl);letter-spacing:-.01em;color:var(--color-ink);margin-bottom:.35rem}.network-strip>p{color:#475569;font-size:.95rem;margin-bottom:var(--space-md)}.network-strip-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:.85rem}.network-card{display:flex;align-items:center;gap:.7rem;padding:.9rem 1rem;border:1px solid #e8edf3;border-radius:var(--radius-md);text-decoration:none;color:var(--color-ink);font-weight:600;transition:transform .2s,box-shadow .2s,border-color .2s}.network-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(15,23,42,.1)}.network-card:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.network-card-icon{display:inline-flex;flex-shrink:0;color:var(--color-ink-muted);transition:color .2s}.network-card-icon svg{width:20px;height:20px}.network-card:hover .network-card-icon{color:var(--color-ink)}.network-card--history:hover{border-color:var(--hover-history)}.network-card--math:hover{border-color:var(--hover-math)}.network-card--writing:hover{border-color:var(--hover-writing)}.network-card--science-kits:hover{border-color:var(--hover-science-kits)}.network-card--try:hover{border-color:var(--hover-try)}.network-card--surprise:hover{border-color:var(--hover-surprise)}.educational-resources{margin-top:var(--space-2xl);padding:var(--space-md);background:var(--surface-brand-tint);border-radius:var(--radius-md);border:1px solid rgba(var(--color-brand-rgb),var(--alpha-brand-mid))}.educational-resources p{font-size:var(--font-size-sm);color:var(--color-ink);margin-bottom:var(--space-xs);line-height:var(--leading-normal)}.educational-resources .edu-link{display:inline-block;background:#fff;color:var(--color-brand);padding:.75rem 1.5rem;border-radius:var(--radius-sm);text-decoration:none;font-weight:600;font-size:var(--font-size-sm);transition:transform .2s,box-shadow .2s;box-shadow:0 2px 8px rgba(0,0,0,.08)}.educational-resources .edu-link:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(var(--color-brand-rgb),var(--alpha-brand-mid))}.educational-resources .edu-link:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.educational-resources .edu-screen-free{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid rgba(var(--color-brand-rgb),var(--alpha-brand-mid))}.site-header{position:absolute;top:max(1.75rem,env(safe-area-inset-top));left:max(2rem,env(safe-area-inset-left));z-index:2}.site-brand{display:inline-flex;align-items:center;min-height:44px;font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:700;letter-spacing:-.01em;color:rgba(255,255,255,.92);text-decoration:none;transition:color .2s}.site-brand:hover{color:#fff}.site-footer{border-top:1px solid var(--border-hairline);background:var(--surface-app);padding:2.5rem 1.5rem 3rem}.site-footer-inner{max-width:var(--content-max);margin:0 auto;display:flex;flex-wrap:wrap;align-items:baseline;gap:.75rem 2rem}.site-footer-brand{font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:700;color:var(--color-ink);margin:0}.site-footer-nav{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}.site-footer-nav a{display:inline-flex;align-items:center;min-height:44px;color:var(--color-ink-muted);text-decoration:none;font-size:var(--font-size-sm);transition:color .2s}.site-footer-nav a:hover{color:var(--color-brand);text-decoration:underline}