@font-face{font-family:Nator;src:local("Inter"),local("Arial");font-display:swap}
:root{font-family:Nator,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:#242b29;background:#f7f9f8;font-synthesis:none;letter-spacing:0;--paper:#f7f9f8;--line:#e0e6e3;--mint:#9bf0da;--muted:#75817c;--header:76px;--page-gutter:clamp(48px,7.5vw,108px)}
*{box-sizing:border-box}html{scrollbar-gutter:stable}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{color:inherit;cursor:pointer;letter-spacing:0}a{color:inherit;text-decoration:none}button:disabled{cursor:wait;opacity:.6}[hidden]{display:none!important}:focus-visible{outline:2px solid #388e71;outline-offset:4px}
.header{height:var(--header);padding:0 var(--page-gutter);display:flex;align-items:center;justify-content:space-between;background:transparent;position:sticky;top:0;z-index:40;transition:background .2s ease,backdrop-filter .2s ease}
.header.is-scrolled{background:#f7f9f8ed;backdrop-filter:blur(16px)}
.brand{display:inline-flex;align-items:center;gap:10px;font-size:18px;font-weight:650;letter-spacing:-.3px}.brand img{width:28px;height:28px;object-fit:contain}
.account{position:relative;display:flex;align-items:center;gap:12px}.plan-badge{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:3px 9px;border-radius:7px;background:#e8eeeb;color:#5d7066;font-size:12px;font-weight:500;line-height:1.4;white-space:nowrap}.plan-badge[data-plan=pro]{background:#d9f5e9;color:#25694d}.account-plan{min-width:44px}.account-plan[aria-hidden=true]{visibility:hidden}.avatar-button{height:34px;width:34px;padding:0;border:0;border-radius:50%;background:#e1eee7;overflow:hidden;display:grid;place-items:center;font-size:14px;font-weight:600}.avatar-button img{width:100%;height:100%;object-fit:cover;grid-area:1/1}.avatar-button span{grid-area:1/1}
.account-menu{position:absolute;inset-inline-end:0;top:46px;width:248px;max-width:calc(100vw - 32px);background:white;border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:0 8px 28px #202c2610}.account-menu p{margin:0 0 4px;overflow-wrap:anywhere;font-size:14px}.account-menu .muted{font-size:12px;margin-bottom:14px}.account-menu button,.account-menu a{display:block;width:100%;padding:10px 0;text-align:left;border:0;background:none;font-size:13px}.account-menu .danger{color:#a74444}.muted{color:var(--muted)}
.library{--sidebar:72px;position:relative;margin-inline:var(--page-gutter)}.library.timeline-open{--sidebar:320px}
.cards-region{margin-left:var(--sidebar);padding:28px 0 64px 24px;container-type:inline-size;transition:margin-left .42s cubic-bezier(.22,1,.36,1)}
.view-heading{min-height:36px;margin-bottom:22px;display:flex;align-items:center;gap:12px}.view-heading h1{font-size:19px;font-weight:600;line-height:1.5;margin:0;overflow-wrap:anywhere;min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.view-meta{color:var(--muted);font-size:12px;margin-left:auto;white-space:nowrap;font-variant-numeric:tabular-nums}.video-actions{position:relative;flex-shrink:0}.video-menu{position:absolute;inset-inline-end:0;top:40px;z-index:36;min-width:136px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px;box-shadow:0 8px 28px #202c2610}.video-menu button{width:100%;border:0;background:none;border-radius:7px;padding:10px 12px;text-align:start;font-size:13px;color:#a74444}.video-menu button:hover{background:#fbefed}
.icon-button{width:32px;height:32px;border:0;background:transparent;display:inline-grid;place-items:center;border-radius:10px;flex-shrink:0}.icon-button:hover{background:#e8eeeb}.icon-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
/* Container width includes the sidebar's expansion: the feed responds to real space. */
.cards{--card-columns:1;--card-gap:16px;display:grid;grid-template-columns:repeat(var(--card-columns),minmax(0,1fr));grid-auto-rows:4px;column-gap:var(--card-gap);position:relative;align-items:start;overflow-anchor:none}
@container(min-width:580px){.cards{--card-columns:2}}
@container(min-width:800px){.cards{--card-columns:3}}
@container(min-width:1040px){.cards{--card-columns:4}}
@container(min-width:1800px){.cards{--card-columns:5}}
@container(min-width:2200px){.cards{--card-columns:6}}
.word-card{min-width:0;align-self:start;container-type:inline-size}
.card-inner{background:#fff;border:0;border-radius:22px;padding:clamp(20px,6cqi,28px);overflow:hidden;display:flex;flex-direction:column;min-height:240px;transition:box-shadow .2s ease,transform .2s ease}
@media(hover:hover){.word-card:hover .card-inner{box-shadow:0 8px 28px #283b3010;transform:translateY(-2px)}}
.card-term{margin:0;font-size:clamp(21px,8cqi,24px);font-weight:600;line-height:1.35;overflow-wrap:anywhere;letter-spacing:-.4px}.card-source-term{display:block;color:#6c8377;font-size:clamp(18px,6.5cqi,20px);line-height:1.45;margin-top:7px;overflow-wrap:anywhere;letter-spacing:-.2px}
.card-explanation{margin:18px 0 22px;font-size:14px;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere}
.card-footer{margin-top:auto;display:flex;align-items:center;gap:9px;min-width:0;color:#78847e}.card-footer img{width:38px;height:27px;object-fit:cover;flex-shrink:0;border-radius:6px;background:#edf1ee}.card-video-title{font-size:11px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-width:0}.card-footer time{margin-left:auto;font-size:11px;flex-shrink:0;font-variant-numeric:tabular-nums}.card-footer:hover{color:#286c51}
.cards-state{text-align:center;color:var(--muted);font-size:13px;padding:24px 20px}.cards-state:empty{display:none}.cards-state p{margin:0 0 16px}.more-row{text-align:center}.more-row:has(button:not([hidden])){padding:12px 0 24px}.load-sentinel{height:1px;pointer-events:none;overflow-anchor:none}
.plain-button,.delete-button{background:#fff;border:1px solid #ccd8d1;border-radius:10px;padding:10px 18px;font-size:13px;min-height:38px}.plain-button:hover{background:#eef5f0}.text-button{border:0;background:none;padding:12px 0;font-size:12px;color:#587564}
.timeline{position:fixed;top:var(--header);bottom:0;left:var(--page-gutter);z-index:30;width:var(--sidebar);transition:width .42s cubic-bezier(.22,1,.36,1);background:var(--paper);overflow:hidden}
.timeline-ruler{position:absolute;inset:0;display:flex;justify-content:center;padding-top:90px}.timeline-ruler>button{border:0;background:none;width:56px;padding:0 12px;align-self:flex-start;text-align:left;min-height:280px}.timeline-ruler{opacity:1;transition:opacity .16s ease}.timeline.is-open .timeline-ruler{opacity:0;pointer-events:none}
.ruler-tick{display:block;width:17px;height:2px;border-radius:2px;background:#b1c0b8;margin:0 0 10px}.ruler-tick.major{width:25px;background:#799485}.ruler-tick.active{height:3px;background:#33795a;width:27px}
.timeline-detail{position:absolute;inset:0;width:320px;padding:28px 22px;overflow-y:auto;overscroll-behavior:contain;opacity:0;visibility:hidden;scrollbar-width:thin;scrollbar-color:#ccd8d1 transparent;transform:translateX(-12px);transition:opacity .18s ease,transform .42s cubic-bezier(.22,1,.36,1),visibility 0s linear .2s}.timeline.is-open .timeline-detail{opacity:1;visibility:visible;transform:translateX(0);transition-delay:.06s,0s,0s}

.timeline-year{font-size:22px;line-height:1.3;margin:26px 0 20px;font-weight:650}.timeline-year:first-child{margin-top:4px}.timeline-date{margin:22px 0 12px;font-size:18px;font-weight:500;color:#7f8b84;font-variant-numeric:tabular-nums}.timeline-video{width:calc(100% + 14px);border:0;display:flex;align-items:flex-start;gap:12px;background:transparent;text-align:start;border-radius:12px;padding:7px;margin-left:-7px}.timeline-video:hover,.timeline-video[aria-current=true]{background:#e9f4ed}.timeline-video img{width:112px;height:64px;object-fit:cover;border-radius:9px;background:#edf1ee;flex-shrink:0}.timeline-video-title{font-size:13px;line-height:1.5;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.timeline-video-time{display:block;font-size:12px;line-height:1.5;color:#7f8b84;margin-top:4px;font-variant-numeric:tabular-nums}.timeline-state{color:var(--muted);font-size:12px;line-height:1.8}.mobile-timeline{display:none}
.sign-in{min-height:calc(100svh - var(--header));padding:48px var(--page-gutter) 100px;display:flex;align-items:center;flex-direction:column;justify-content:center}.sign-in>img{margin-bottom:22px;object-fit:contain}.sign-in h1{font-size:28px;font-weight:600;margin:0 0 32px;letter-spacing:-.5px}.google-sign-in{min-height:44px;display:flex;align-items:center;justify-content:center;gap:12px;padding:0 24px;border:1px solid #cfdad4;border-radius:12px;background:#fff;font-size:14px}.google-sign-in:hover{background:#edf5f0}.privacy-link{font-size:12px;color:var(--muted);margin-top:25px}
.center-state{min-height:calc(100svh - var(--header));display:flex;flex-direction:column;justify-content:center;align-items:center;padding:80px var(--page-gutter);color:var(--muted);font-size:14px}.spinner{display:block;height:20px;width:20px;border:2px solid #dce7df;border-top-color:#4c8769;border-radius:50%;animation:spin .8s linear infinite}.notice{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#273d30;color:#fff;padding:12px 18px;border-radius:12px;z-index:80;max-width:calc(100vw - 32px);font-size:13px}
dialog{border:1px solid var(--line);border-radius:22px;max-width:420px;width:calc(100% - 32px);padding:28px;color:#25332b}dialog::backdrop{background:#14261e40}dialog h2{margin:0 0 16px;font-size:19px}dialog p{font-size:14px;color:#6d7b72;line-height:1.7}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.delete-button{background:#a94040;color:#fff;border-color:#a94040}.error{color:#a94040!important}
.privacy-page{max-width:calc(652px + 2 * var(--page-gutter));padding:64px var(--page-gutter) 80px;margin:auto}.privacy-page h1{font-size:25px;margin:0 0 34px}.privacy-page h2{font-size:16px;margin:32px 0 12px}.privacy-page p{font-size:14px;line-height:1.9;color:#59685e}.privacy-page a{color:#286c51;text-decoration:underline}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:700px){
 :root{--header:64px;--page-gutter:24px}.header{padding:0 var(--page-gutter)}.brand{font-size:17px}.library{--sidebar:0px}.cards-region{margin-left:0;padding:22px 0 48px;transition:none}.view-heading{margin-left:40px;margin-bottom:20px;min-height:32px;gap:8px}.view-heading h1{font-size:17px}.view-meta{font-size:11px}.mobile-timeline{display:grid;position:absolute;top:22px;left:0;z-index:35}
 /* On a phone the expanded sidebar sits above the feed, so cards stay unobscured. */
 .timeline{display:block;position:relative;top:auto;bottom:auto;left:0;width:100%;height:0;transition:height .38s cubic-bezier(.22,1,.36,1)}.timeline.is-open{width:100%;height:min(55svh,480px)}.timeline-ruler{display:none}.timeline-detail{width:100%;padding:64px 0 20px}.library.timeline-open>.mobile-timeline{visibility:visible}.card-inner{padding:22px;min-height:230px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition:none!important}}

.account-language{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;padding:10px 0}.account-language-picker{position:relative;display:inline-flex;align-items:center;max-width:132px;min-width:0}.account-language select{appearance:none;field-sizing:content;min-width:0;max-width:132px;border:0;background:transparent;font:inherit;color:#587568;padding-block:6px;padding-inline:0 18px;text-align:end;text-align-last:end;cursor:pointer}.account-language-picker svg{position:absolute;inset-inline-end:0;width:12px;height:12px;pointer-events:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.delete-video-name{font-weight:500;color:#25332b;overflow-wrap:anywhere}

.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.subscription-page{max-width:calc(780px + 2 * var(--page-gutter));margin:5vh auto 0;padding:24px var(--page-gutter) 64px}.subscription-page>h1{font-size:22px;font-weight:600;letter-spacing:-.5px;margin:0 0 24px}.subscription-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch}.subscription-plan{background:white;border-radius:24px;padding:28px;display:flex;flex-direction:column;align-items:stretch;min-width:0}.subscription-pro{box-shadow:inset 0 0 0 1px #bddccc}.subscription-title{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:28px;margin-bottom:24px}.subscription-title h2{font-size:18px;font-weight:600;letter-spacing:-.3px;margin:0}.subscription-price{font-size:44px;line-height:1.2;letter-spacing:-1.5px;margin:0 0 12px;font-weight:600;min-height:53px}.subscription-price span{font-size:14px;letter-spacing:0;font-weight:400;color:var(--muted)}.subscription-allowance{font-size:16px;font-weight:500;line-height:1.5;margin:0 0 24px}.subscription-features{list-style:none;padding:0;margin:0 0 28px;font-size:14px;line-height:1.65;display:grid;gap:12px}.subscription-features li{position:relative;padding-inline-start:22px;overflow-wrap:anywhere}.subscription-features li:before{content:'✓';position:absolute;inset-inline-start:0;color:#408265;font-size:14px}.subscription-action{margin-top:auto}.subscription-button{display:flex;align-items:center;justify-content:center;background:#263d32;color:white;border:0;min-height:44px;text-align:center;border-radius:12px;width:100%;line-height:1.5}.subscription-button:hover{background:#355341}.subscription-secondary{background:#edf3ef;color:#405c4c}.subscription-secondary:hover{background:#e1ebe4}.subscription-button:disabled{opacity:.5;cursor:default}.subscription-fine,.subscription-status{font-size:12px;line-height:1.7;color:var(--muted);margin:16px 0 0}.subscription-status:empty{display:none}.subscription-footer{display:flex;justify-content:center;gap:20px;font-size:12px;color:var(--muted);margin-top:24px}.subscription-plan .text-button{text-align:start;margin-top:12px}button[hidden]{display:none}@media(max-width:600px){.subscription-page{margin-top:2vh;padding:20px var(--page-gutter) 48px}.subscription-grid{grid-template-columns:minmax(0,1fr);gap:16px}.subscription-plan{padding:24px}.subscription-title{margin-bottom:20px}.subscription-features{gap:10px;margin-bottom:24px}}

.header-brand-group{display:flex;align-items:center;gap:12px}
.account-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.account-identity{min-width:0;flex:1}.account-summary .muted{margin-bottom:0}.account-summary .plan-badge{flex-shrink:0}
.account-plans-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.account-plans-row>a{width:auto}.account-menu .account-upgrade{color:#28775c;font-weight:500;flex-shrink:0}
.account-menu .account-secondary{font-size:11px;min-height:36px}.account-menu a.account-secondary{color:var(--muted)}

/* Public product context remains visible before sign-in and on pricing. */
.product-overview{font-size:14px;line-height:1.7;margin:0 0 28px;max-width:660px}.product-overview p{margin:0 0 12px;overflow-wrap:anywhere}.product-overview .product-how{font-size:13px;color:var(--muted)}.product-install{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 18px;border-radius:12px;background:#263d32;color:#fff;font-size:14px;font-weight:500;line-height:1.5;max-width:100%}.product-install:hover{background:#355341}.product-install .chrome-icon{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.product-install span{min-width:0}.product-install:focus-visible{outline:2px solid #278563;outline-offset:3px}.sign-in .product-overview{max-width:500px;text-align:center}.sign-in h1{margin-bottom:20px}.subscription-footer{flex-wrap:wrap;row-gap:12px}.sign-in .subscription-footer{max-width:500px;text-align:center}.sign-in .google-sign-in{max-width:100%}
