:root{font-family:Arial,Helvetica,sans-serif;color:#202d45;background:#f5f6f8;line-height:1.55;font-size:16px;--ink:#202d45;--muted:#647187;--accent:#e1914e;--line:#e2e6ec}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,label.button{touch-action:manipulation}button,.button{cursor:pointer}button{border:0}a{color:inherit}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,label.button:focus-within{outline:3px solid #457eaa;outline-offset:3px}button{transition:background .15s,transform .15s}button:hover:not(:disabled){filter:brightness(.95)}.rail{background:var(--ink);color:#fff;position:fixed;inset:0 auto 0 0;width:238px;padding:36px 24px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-size:25px;line-height:1.07;letter-spacing:-.7px}.brand b{font-weight:600}.brand-mark{font-size:26px;width:47px;height:47px;display:grid;place-items:center;background:#fff1;border:1px solid #ffffff30;border-radius:15px}.rail-label{font-size:12px;letter-spacing:1.3px;color:#c1cbd9;margin:49px 0 17px}nav{display:flex;flex-direction:column;gap:9px}nav a{padding:13px 14px;text-decoration:none;border-radius:9px;color:#cbd3de;font-size:15px;display:flex;gap:13px;align-items:center}nav a span{font-size:23px;width:24px;text-align:center;line-height:1}nav a.active{background:#fff;color:var(--ink);font-weight:600}nav a:hover{background:#ffffff12}nav a.active:hover{background:#f5f6f8}.rail-bottom{margin-top:auto}.rail-bottom p{font-family:Georgia,serif;font-size:23px;line-height:1.3;color:#f4aa63;margin-bottom:35px}.rail-button{color:#fff;background:none;padding:0;font-size:14px}.private-label{display:block;color:#c1cbd9;font-size:12px;margin-top:17px}main{margin-left:238px;padding:0 42px;max-width:1580px}.topbar{height:97px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:14px}.topbar>div{display:flex;align-items:center;gap:20px}.badge{border:1px solid var(--line);border-radius:30px;padding:6px 12px;font-size:12px;background:#fff}.avatar{background:#eee4d8;width:36px;height:36px;border-radius:50%;color:var(--ink);font-weight:bold}#view{padding:35px 0 25px}.eyebrow{font-size:12px;letter-spacing:1.4px;font-weight:700;color:#95714a;text-transform:uppercase;margin:0 0 8px}h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:42px;letter-spacing:-1.3px;line-height:1.2;margin:0 0 12px}h2{font-size:21px;font-weight:600;letter-spacing:-.4px;margin:0 0 8px}h3{font-size:16px;margin:0 0 8px}p{margin:0 0 16px}.sub{color:var(--muted)}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:27px}.page-heading p{margin-bottom:0}.layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:24px;align-items:start}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:27px;margin-bottom:22px;box-shadow:0 2px 5px #202d4503}.card-heading{display:flex;justify-content:space-between;gap:10px;margin-bottom:23px;align-items:start}.card-heading p{font-size:14px;margin:0}.small-label{font-size:12px;color:var(--muted);white-space:nowrap}.section-number{font-size:14px;width:27px;height:27px;background:#f6eee5;color:#98703f;display:inline-grid;place-items:center;border-radius:7px;margin-right:8px}.quick-picks{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 21px}.chip{border:1px solid var(--line);background:#fff;border-radius:8px;color:#4b586e;padding:8px 13px;font-size:14px}.chip.selected{background:#f9eddf;color:#724315;border-color:#e8be92}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:17px}.field label{font-size:14px;font-weight:600}.optional{font-weight:400;color:var(--muted);font-size:12px;margin-left:5px}input,select,textarea{width:100%;border:1px solid #d7dce4;border-radius:8px;padding:11px 12px;color:var(--ink);background:#fff;min-width:0}textarea{resize:vertical;min-height:112px;line-height:1.6}input::placeholder,textarea::placeholder{color:#8993a3}input[type=range]{padding:0;accent-color:var(--accent)}.range-labels{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.primary,.secondary,.danger,.button{padding:11px 17px;border-radius:8px;font-weight:600;font-size:14px;display:inline-flex;justify-content:center;align-items:center;gap:8px;text-decoration:none}.primary{background:var(--ink);color:#fff}.secondary{background:#fff;border:1px solid #d7dce4;color:var(--ink)}.danger{background:#b53939;color:#fff}.button-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.form-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid var(--line);padding-top:19px;margin-top:5px}.fine{font-size:12px;color:var(--muted);margin:11px 0 0;line-height:1.6}.form-footer .fine{margin:0;max-width:230px}.dark-card{background:var(--ink);color:#fff;border-color:var(--ink);padding:27px;position:relative;overflow:hidden}.dark-card .eyebrow{color:#f4aa63}.dark-card h2{font-family:Georgia,serif;font-size:29px;font-weight:400;line-height:1.2;margin:13px 0}.dark-card p{color:#d3dbe6;font-size:14px;margin-top:13px}.dark-card .primary{background:#f4aa63;color:#302515;margin-top:5px}.dark-card .fine{color:#c1cbd9}.metric-row{display:flex;gap:18px;margin:18px 0 5px}.metric{flex:1}.metric strong{font-family:Georgia,serif;font-size:34px;font-weight:400;display:block}.metric span{font-size:12px;color:var(--muted)}.divider{height:1px;background:var(--line);margin:22px 0}.entry{padding:17px 0;border-top:1px solid var(--line);display:flex;gap:12px;align-items:start}.entry:first-of-type{border-top:none}.entry-icon{border-radius:10px;background:#f8efe5;padding:8px;font-size:18px}.entry-text{flex:1;min-width:0}.entry h3{margin:0 0 2px}.entry p{font-size:14px;margin:2px 0;color:var(--muted);overflow-wrap:anywhere}.entry small{font-size:12px;color:#818c9d}.text-button{background:none;color:#655137;font-size:14px;text-decoration:underline;text-underline-offset:3px;padding:0}.empty{padding:23px 0;color:var(--muted);font-size:14px}.empty h3{color:var(--ink)}.empty .button-row{margin-top:20px}.demo-banner{display:flex;gap:15px;justify-content:space-between;background:#f9e8d2;border:1px solid #ebd1ae;padding:12px 16px;border-radius:8px;margin-top:18px;font-size:14px}.demo-banner[hidden]{display:none}.notice{background:#f3f6f9;border-left:3px solid #96abc5;border-radius:6px;padding:13px 15px;font-size:14px;margin:15px 0}.notice.error{background:#fff0ef;border-color:#b53939}.grid-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}.drink-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:23px;text-align:left;display:flex;flex-direction:column;align-items:start;min-height:240px}.drink-card h2{font-family:Georgia,serif;font-size:27px;font-weight:400;margin:12px 0 6px}.drink-card p{font-size:14px;color:var(--muted);margin:0 0 18px}.drink-card .tag{margin-top:auto}.tag{background:#f3f5f8;border-radius:5px;padding:4px 8px;font-size:12px;color:#617088;display:inline-block}.drink-count{font-size:12px;color:#8f7857}.search-bar{max-width:360px;margin-bottom:24px}.detail-heading{margin:24px 0}.recipe-facts{display:flex;flex-wrap:wrap;gap:25px;background:#f6f7f9;padding:18px;border-radius:10px;margin:20px 0}.recipe-facts small{display:block;color:var(--muted);font-size:12px}.steps{padding-left:24px;margin:18px 0}.steps li{padding:8px 0 8px 8px;border-bottom:1px solid #edf0f3;overflow-wrap:anywhere}.steps li::marker{color:#9c7140;font-weight:bold}.prewrap{white-space:pre-wrap;overflow-wrap:anywhere}.practice-card{text-align:center;min-height:335px;padding:35px 29px}.practice-card .eyebrow{margin-bottom:19px}.practice-card h2{font-family:Georgia,serif;font-size:29px;font-weight:400;line-height:1.3;margin:0 0 22px}.practice-card .answer{background:#f4f6f9;padding:21px;text-align:left;border-radius:10px;margin:20px 0}.practice-card .button-row{justify-content:center}.practice-card .fine{margin:18px 0}.mode-tabs{display:flex;gap:8px;margin:0 0 24px;flex-wrap:wrap}.mode-tabs button{padding:9px 16px;border-radius:25px;border:1px solid var(--line);color:var(--muted);background:#fff;font-size:14px}.mode-tabs button.active{color:#fff;background:var(--ink);border-color:var(--ink)}.progress-bar{height:8px;background:#edf0f3;border-radius:4px;overflow:hidden;margin:10px 0 8px}.progress-bar span{display:block;height:100%;background:#c88748}.activity-bars{display:flex;height:145px;align-items:end;gap:14px;margin:25px 0 10px}.activity-column{display:flex;flex:1;flex-direction:column;align-items:center;gap:9px;font-size:12px;color:var(--muted);min-width:0}.activity-column .bar{background:#dfb083;width:100%;max-width:45px;border-radius:5px 5px 0 0;min-height:3px}.activity-column strong{font-size:12px;font-weight:400}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px}.stat-card strong{display:block;font-family:Georgia,serif;font-size:36px;font-weight:400}.stat-card span{font-size:14px;color:var(--muted)}.ai-output{white-space:pre-wrap;background:#f5f7fa;border-radius:8px;padding:18px;margin-top:16px;font-size:15px;overflow-wrap:anywhere;line-height:1.75}.ai-output[hidden]{display:none}.model-status{font-size:14px;color:var(--muted);margin:16px 0 8px}progress{width:100%;accent-color:#c88748;height:8px}footer{border-top:1px solid var(--line);padding:20px 0 25px;color:#7d8798;font-size:12px;display:flex;justify-content:space-between;gap:15px}dialog{border:1px solid var(--line);border-radius:15px;color:var(--ink);padding:29px;max-width:590px;width:calc(100% - 32px);max-height:90vh;overflow:auto;box-shadow:0 24px 80px #17223935}dialog::backdrop{background:#17223975;backdrop-filter:blur(3px)}dialog h2{font-family:Georgia,serif;font-size:28px;font-weight:400}.dialog-top{display:flex;justify-content:space-between;gap:15px;margin-bottom:13px}.icon-button{background:#f0f2f5;border-radius:50%;height:31px;min-width:31px;padding:0;color:var(--ink)}.settings-section{border-top:1px solid var(--line);padding-top:20px;margin-top:23px}.settings-section p{font-size:14px;color:var(--muted)}#toast{position:fixed;bottom:24px;left:calc(50% + 100px);transform:translateX(-50%);background:var(--ink);color:#fff;border-radius:9px;padding:12px 20px;font-size:14px;box-shadow:0 5px 20px #0002;max-width:90vw;z-index:10}.inline-score{color:#99713f;font-size:14px}.history-date{font-size:12px;color:var(--muted);margin:0 0 7px}.vocab{padding:14px 0;border-bottom:1px solid var(--line)}.vocab p{margin:5px 0;font-size:14px;color:var(--muted)}.row-between{display:flex;justify-content:space-between;gap:15px;align-items:center}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1450px){main{padding:0 60px}.layout{gap:30px}.card{padding:31px}}
@media(max-width:1100px){.rail{width:205px;padding:30px 18px}main{margin-left:205px;padding:0 25px}.layout{grid-template-columns:minmax(0,1.5fr) minmax(250px,1fr);gap:18px}.card{padding:22px}.grid-three{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar .badge{display:none}}
@media(max-width:850px){.layout{grid-template-columns:1fr}.rail{width:180px;padding:28px 13px}.brand{font-size:22px}.brand-mark{width:38px;height:38px;font-size:20px}nav a{padding:11px 9px;font-size:14px;gap:8px}main{margin-left:180px}.rail-label{font-size:10px;letter-spacing:1px}.rail-bottom p{font-size:22px}.page-heading{align-items:start}h1{font-size:36px}.layout>aside{display:grid;grid-template-columns:1fr 1fr;gap:18px}.layout>aside>.card{margin:0}.layout>aside>.card:last-child:nth-child(odd){grid-column:1 / -1}}
@media(max-width:620px){.rail{position:static;width:auto;padding:20px 18px 0;display:block}.brand{font-size:19px;display:inline-flex}.brand br{display:none}.brand b{margin-left:4px}.brand-mark{height:35px;width:35px}.rail-label,.rail-bottom{display:none}nav{flex-direction:row;gap:5px;margin:20px -3px 0}nav a{padding:11px 8px;font-size:12px;flex:1;justify-content:center;border-radius:8px 8px 0 0;gap:5px}nav a span{font-size:17px;width:auto}main{margin-left:0;padding:0 18px}.topbar{height:67px}.topbar .badge{display:none}#view{padding-top:24px}.page-heading{display:block}.page-heading .primary{margin-top:16px}h1{font-size:34px}.field-grid{gap:13px}.card{padding:21px}.layout>aside{display:block}.layout>aside>.card{margin-bottom:19px}.grid-three{grid-template-columns:1fr 1fr;gap:12px}.drink-card{padding:17px;min-height:220px}.drink-card h2{font-size:23px}.stats-grid{gap:8px}.stat-card{padding:14px 10px}.stat-card strong{font-size:29px}.stat-card span{font-size:12px}.form-footer{align-items:start}.form-footer .fine{max-width:160px}.demo-banner{display:block}.demo-banner button{margin-top:8px}.card-heading{gap:8px}.small-label{white-space:normal;text-align:right}.practice-card{padding:28px 21px}.practice-card h2{font-size:26px}footer{display:block}footer span{display:block;margin-top:5px}#toast{left:50%;width:max-content;max-width:calc(100% - 30px)}.recipe-facts{gap:18px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto;transition:none!important}}
