@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,700;9..144,800&family=Nunito+Sans:wght@400;600;700;800;900&display=swap";:root{--bg: #f2ece3;--paper: #fffaf1;--card: #ffffff;--ink: #15261f;--muted: #6f786f;--line: rgba(21, 38, 31, .12);--brand: #1e4a36;--brand-2: #e4a84f;--soft: #e8f1e7;--danger: #b44a3f;--shadow: 0 24px 80px rgba(55, 43, 29, .12);font-family:Nunito Sans,PingFang SC,Hiragino Sans GB,sans-serif;font-size:14px;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-width:320px;font-size:14px;background:radial-gradient(circle at 5% 10%,rgba(228,168,79,.22),transparent 34rem),radial-gradient(circle at 90% 0%,rgba(30,74,54,.16),transparent 30rem),var(--bg)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:14px;background:#ffffffd1;color:var(--ink);outline:none;padding:10px 12px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}textarea{min-height:96px;resize:vertical;line-height:1.55}input:focus,textarea:focus,select:focus{border-color:#1e4a3680;box-shadow:0 0 0 4px #1e4a361a;background:#fff}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Fraunces,Songti SC,serif;letter-spacing:-.04em}.auth-shell,.app-shell{min-height:100vh}.auth-shell{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,480px);gap:32px;align-items:center;padding:32px}.auth-hero{position:relative;overflow:hidden;border-radius:30px;background:linear-gradient(135deg,#1e4a36f5,#12271ef5),var(--brand);color:#fff;padding:clamp(28px,5vw,58px);min-height:480px;box-shadow:var(--shadow)}.auth-hero:after{content:"";position:absolute;right:-120px;bottom:-120px;width:360px;height:360px;border-radius:50%;background:#e4a84f47}.auth-hero h1{max-width:660px;font-size:clamp(28px,4vw,40px);line-height:1.08;margin:24px 0}.hero-copy{max-width:540px;color:#ffffffc2;font-size:1rem;line-height:1.65}.brand-mark{display:grid;width:60px;height:60px;place-items:center;border-radius:20px;background:linear-gradient(145deg,#f1b85f,#ffe0a3);color:#1b3b2d;font-family:Fraunces,serif;font-size:2rem;font-weight:900;box-shadow:inset 0 -10px 20px #58310a26}.brand-mark.small{width:42px;height:42px;border-radius:14px;font-size:1.35rem}.auth-card,.panel{border:1px solid rgba(21,38,31,.1);border-radius:22px;background:#fffaf1e0;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.auth-card{padding:24px}.auth-card h2,.panel h2{font-size:clamp(1.25rem,1.7vw,1.55rem);margin-bottom:14px}.auth-card form,.embedded-form,.quick-composer{display:grid;gap:12px}label span{display:block;margin:0 0 8px;color:var(--muted);font-size:.86rem;font-weight:800}.auth-switcher{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.auth-switcher button,.ghost,.danger,.link-danger,.icon-button{border:0;background:var(--soft);color:var(--brand);border-radius:999px;font-weight:900;padding:8px 12px}.auth-switcher button.active,.ghost:hover,.icon-button:hover{background:var(--brand);color:#fff}.primary{border:0;border-radius:14px;background:var(--brand);color:#fff;font-weight:900;padding:10px 14px;box-shadow:0 12px 30px #1e4a362e}.primary:hover{background:#163629}.full{width:100%}.danger,.link-danger{background:#b44a3f1a;color:var(--danger)}.link-danger{padding:7px 10px}.app-shell{display:grid;grid-template-columns:230px minmax(0,1fr);gap:18px;padding:18px}.sidebar{position:sticky;top:20px;height:calc(100vh - 40px);align-self:start}.sidebar{display:flex;flex-direction:column;border-radius:26px;background:#13281f;color:#fff;padding:18px;box-shadow:var(--shadow)}.brand-row{display:flex;gap:12px;align-items:center;margin-bottom:22px}.brand-row strong,.brand-row span{display:block}.brand-row span,.sidebar-footer span{color:#ffffff8c;font-size:.84rem}nav{display:grid;gap:10px}nav button{border:0;border-radius:14px;background:#ffffff14;color:#ffffffb8;font-weight:900;padding:11px 13px;text-align:left}nav button.active,nav button:hover{background:#f1b85f;color:#183226}.sidebar-footer{display:grid;gap:10px;margin-top:auto}.sidebar-footer button{border:0;border-radius:14px;padding:10px;font-weight:900}.workspace{min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.topbar h1{font-size:clamp(24px,2.4vw,40px);line-height:1.1;margin:0}.topbar-actions,.composer-actions,.capture-actions,.word-actions,.rename-row,.inline-form,.tag-row,.metric-row,.capture-head,.word-head,.section-title{display:flex;align-items:center;gap:10px}.topbar-actions,.section-title{justify-content:space-between}.stacked-form{display:grid;gap:10px}.dashboard-grid,.detail-layout,.quick-layout{display:grid;gap:18px}.dashboard-grid{grid-template-columns:minmax(0,1fr)}.quick-layout{grid-template-columns:minmax(320px,420px) minmax(0,1fr);align-items:start}.panel{padding:18px}.hero-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end;background:linear-gradient(145deg,#fffaf1eb,#e8f1e7eb),var(--paper)}.embedded-form{border-top:1px solid var(--line);margin-top:4px;padding-top:18px}.hero-panel .embedded-form{grid-column:1 / -1}.hero-panel h2{font-size:clamp(22px,2.3vw,35px);line-height:1.12;margin-bottom:10px}.hero-panel p,.scenario-card p,.muted,.article-card p{color:var(--muted);line-height:1.6}.metric-row{align-items:stretch}.metric-row div{min-width:110px;border-radius:18px;background:#fff;padding:12px}.metric-row strong{display:block;font-family:Fraunces,serif;font-size:1.55rem}.metric-row span{color:var(--muted);font-size:.8rem;font-weight:800}.card-grid,.word-grid,.capture-list,.article-list{display:grid;gap:14px}.card-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.word-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.scenario-card,.word-card,.capture-card,.article-card,.empty-card{border:1px solid var(--line);border-radius:20px;background:#fff;padding:14px;text-align:left}button.scenario-card{width:100%;color:inherit}.scenario-card:hover,.word-card:hover,.capture-card:hover{border-color:#1e4a3647;transform:translateY(-1px)}.scenario-card h3,.word-card h3,.capture-card h3,.article-card h3{font-size:1rem;margin:8px 0 6px}.special-scene{background:linear-gradient(145deg,#e8f1e7f0,#fff2d9b8),#fff}.card-meta,.tag-row{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:.8rem;font-weight:800}.pill,.tag-row span{display:inline-flex;align-items:center;border-radius:999px;background:var(--soft);color:var(--brand);font-size:.74rem;font-weight:900;padding:6px 10px}.pill.alt,.tag-row span.due-stat{background:#fff2d9;color:#9c6420}.warn{color:#b97922}.eyebrow{margin:0 0 8px;color:var(--brand);font-size:.72rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.notice,.error{border-radius:14px;padding:10px 12px;font-weight:800}.notice{background:#1e4a361a;color:var(--brand)}.error{background:#b44a3f1a;color:var(--danger)}.inline-error{margin:0}.quick-composer{align-self:start}.select-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.subhead{color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;margin:0 0 12px}.word-head{justify-content:space-between;align-items:flex-start}.word-head span{color:var(--muted);font-size:.82rem}.translation,.capture-english{color:var(--brand);font-weight:900}.example{line-height:1.7}.word-actions,.capture-actions,.rename-row,.study-nav{flex-wrap:wrap;margin-top:12px}.word-actions select,.capture-actions select{width:auto;min-width:130px;padding:8px 10px;border-radius:14px}.article-card pre{white-space:pre-wrap;font-family:inherit;line-height:1.8;color:var(--ink)}.mode-tabs,.study-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.status-button-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.mode-tabs button,.status-button-row button{border:0;border-radius:999px;background:var(--soft);color:var(--brand);font-weight:900;padding:8px 10px;white-space:nowrap}.mode-tabs button.active,.status-button-row button.active{background:var(--brand);color:#fff}.status-button-row button.good{background:#dff7e7;color:#146032}.status-button-row button.warn{background:#fff0c2;color:#7a4a00}.status-button-row button.bad{background:#ffe0da;color:#9f2517}.status-button-row button.muted{background:#ece7df;color:#5f574d}.study-card{border:1px solid var(--line);border-radius:22px;background:#fff;padding:18px}.study-card h3{margin:18px 0 10px;font-size:clamp(26px,5vw,40px);line-height:1.05}.review-prompt{display:grid;gap:10px;min-height:180px;place-items:center;border-radius:20px;border:1px solid transparent;background:var(--soft);padding:20px;color:var(--ink);font-size:clamp(28px,6vw,40px);font-weight:900;text-align:center;cursor:pointer;width:100%}.review-prompt:hover{border-color:#264f402e;background:#eef3eb}.review-prompt small{font-size:12px;font-weight:800;color:var(--muted)}.study-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.words-panel .mode-tabs{margin:12px 0 18px}.inline-form .primary{min-width:72px;white-space:nowrap}.capture-card{display:grid;grid-template-columns:120px minmax(0,1fr);gap:14px}.capture-list.compact .capture-card{grid-template-columns:86px minmax(0,1fr)}.capture-image-button{display:block;width:100%;height:120px;border:0;border-radius:14px;background:var(--soft);padding:0;overflow:hidden}.capture-image-button:hover img{transform:scale(1.03)}.capture-card img,.image-preview img{width:100%;height:120px;object-fit:cover;border-radius:14px;background:var(--soft);transition:transform .2s ease}.image-preview{position:relative;overflow:hidden;border-radius:16px}.image-preview img{height:220px}.image-preview button{position:absolute;top:12px;right:12px;border:0;border-radius:999px;background:#0000009e;color:#fff;padding:8px 12px;font-weight:900}.file-button{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--soft);color:var(--brand);padding:8px 12px;font-weight:900;overflow:hidden}.file-button input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.profile-panel{max-width:720px}.credit-card{display:grid;gap:12px;padding:16px;border:1px solid rgba(32,35,30,.1);border-radius:20px;background:#ffffffb8}.credit-card>div{display:flex;justify-content:space-between;gap:16px}.credit-card progress{width:100%;height:10px;accent-color:var(--green)}.image-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:18px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.image-lightbox-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:#0d1813c7}.image-lightbox-panel{position:relative;z-index:1;width:min(1080px,94vw);max-height:92vh;border-radius:20px;background:#101b16;padding:14px;box-shadow:0 30px 90px #00000052}.image-lightbox-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#fff;padding:4px 4px 12px}.image-lightbox-panel img{display:block;width:100%;max-height:calc(92vh - 76px);object-fit:contain;border-radius:14px;background:#0b120f}.word-edit-panel{position:relative;z-index:1;display:grid;gap:14px;width:min(680px,94vw);max-height:92vh;overflow:auto;border:1px solid rgba(21,38,31,.1);border-radius:22px;background:var(--paper);color:var(--ink);padding:18px;box-shadow:var(--shadow)}.word-edit-panel h2{margin-bottom:0}.word-edit-panel textarea{min-height:86px}.credit-help-panel{max-width:760px;overflow:auto;color:#fff}.credit-help-panel section{display:grid;gap:12px;margin-top:16px}.cost-grid,.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.cost-grid div,.plan-grid article{display:grid;gap:6px;padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:#ffffff14}.plan-grid article.active{border-color:var(--green);box-shadow:0 0 0 2px #3fb87b29}@media (max-width: 1180px){.app-shell{grid-template-columns:220px minmax(0,1fr)}.quick-layout{grid-template-columns:1fr}}@media (max-width: 820px){.auth-shell{grid-template-columns:1fr;padding:18px}.auth-hero{min-height:auto;padding:28px}.app-shell{display:block;padding:12px}.sidebar{position:static;height:auto;margin-bottom:14px;border-radius:26px}.sidebar nav{grid-template-columns:repeat(3,1fr)}nav button{text-align:center}.sidebar-footer{grid-template-columns:minmax(0,1fr) auto;align-items:center;margin-top:16px}.topbar{align-items:flex-start;flex-direction:column}.topbar-actions,.metric-row,.hero-panel,.section-title,.capture-card{display:grid;grid-template-columns:1fr;width:100%}.card-grid,.word-grid,.select-grid{grid-template-columns:1fr}.panel{border-radius:20px;padding:16px}.capture-card img,.capture-image-button{height:190px}}
