/* La vita in italiano — everyday notebook */
:root{--navy:#243b38;--ink:#273b37;--cream:#f5f1e8;--paper:#fffdf8;--coral:#c76c53;--mint:#d5e4d8;--yellow:#ead9aa;--blue:#b7d4d1;--pink:#ead5ca;--line:#dedbd1;--muted:#6b7770;--shadow:0 14px 36px rgba(38,51,45,.10)}
body{background:#f5f1e8;color:var(--ink)}.app-shell{background:none;overflow:visible}
.topbar{background:rgba(245,241,232,.96);border-color:#dedbd1;height:74px}.brand-mark{width:46px;height:46px;border-radius:14px;background:var(--navy);font-family:Georgia,serif;font-weight:600;font-size:.86rem;transform:rotate(-5deg)}.brand b{font-size:1.12rem}.brand small{font-size:.72rem}
.hero{min-height:385px;grid-template-columns:1fr minmax(260px,38%);background:#e3e7da;border-bottom:1px solid #d1d8ca}.hero-copy{padding:72px 26px 66px max(26px,calc((100vw - 1190px)/2));align-self:center}.hero h1{font-size:clamp(3.6rem,7vw,7rem);line-height:.92;letter-spacing:-.055em;margin:14px 0 22px}.hero h1 i{color:#ad5945}.hero-copy p{line-height:1.6;max-width:630px;margin-bottom:24px}.eyebrow,.section-kicker{color:#ad5945}.primary-button{box-shadow:none;border-radius:10px}.hero .primary-button{text-decoration:none}
.hero-notebook{width:min(390px,80%);min-height:305px;margin:auto;align-self:center;position:relative;background:#fffdf8;transform:rotate(4deg);padding:32px 34px;box-shadow:14px 15px 0 #c9d7c7,0 14px 30px rgba(38,51,45,.13);border:1px solid #d6d5c8;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 38px,rgba(67,103,104,.12) 39px,transparent 40px)}.notebook-label{font-size:.67rem;font-weight:900;letter-spacing:.19em;color:#b45f4b}.note-phrase{font-family:Georgia,serif;font-size:1.8rem;line-height:1.25;margin-top:18px}.note-phrase em{color:#b45f4b;font-style:italic}.note-translation{font-size:.82rem;color:#6c7973;margin-top:8px}.note-rule{width:63%;border-bottom:1px solid #b6c6bc;margin-top:22px}.note-phrase.second{font-size:1.4rem;margin-top:12px}.note-stamp{position:absolute;right:-20px;bottom:23px;width:82px;height:82px;background:#eacb85;display:grid;place-content:center;text-align:center;border-radius:50%;font-family:Georgia,serif;font-size:.85rem;transform:rotate(-10deg)}
.timeline,.dashboard{max-width:1240px;padding:56px 28px 30px}.timeline{padding-bottom:32px}.dashboard{padding-top:45px;padding-bottom:85px}.section-heading{align-items:center}.section-heading h2{font-size:clamp(2rem,4vw,3.25rem)}.section-help{max-width:700px;margin:12px 0 0;color:#66766f;line-height:1.5;font-size:.95rem}.text-button{color:#ac5645;border:1px solid #d9b5a6;border-radius:9px;white-space:nowrap;background:#fffdf8;padding:11px 15px}
.category-strip{display:block;overflow:visible;padding:0}.topic-group{margin:31px 0 38px}.topic-group-head{display:flex;align-items:baseline;gap:12px;margin-bottom:15px}.topic-group-head h3{font-family:Georgia,serif;font-size:1.5rem;margin:0}.topic-group-head span{font-size:.85rem;color:var(--muted)}.topic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.category-card{border:1px solid #dedbd1;border-radius:14px;min-height:166px;padding:17px;display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto 1fr auto;column-gap:10px;transition:.2s transform,.2s border-color}.category-card:hover{transform:translateY(-3px);border-color:#b77b68}.category-card .topic-icon{font-size:1.55rem;width:36px;height:36px;background:#e7eee5;border-radius:10px;display:grid;place-items:center}.category-card .topic-text{align-self:center}.category-card b{font-size:1.16rem;line-height:1.16}.category-card small{font-size:.76rem;margin-top:7px}.topic-actions{grid-column:1/-1;display:flex;gap:8px;margin-top:18px}.topic-actions button{border:1px solid #d6d7ca;background:#f5f7ee;border-radius:8px;padding:8px 10px;font-size:.77rem;font-weight:750;cursor:pointer}.topic-actions button:first-child{background:var(--navy);border-color:var(--navy);color:white}.topic-actions button:hover{filter:brightness(.95)}
.practice-filter{display:flex;gap:12px;align-items:center;padding:15px 17px;background:#e6e9dd;border-radius:12px;width:fit-content;max-width:100%;margin:0 0 24px}.practice-filter span{font-size:.86rem}.practice-filter select{background:#fffdf8;border-color:#cbd1c5;border-radius:8px;min-width:245px}.mode-card{border-radius:14px;min-height:192px}.mode-card h3{font-size:1.37rem}.mode-card:before{opacity:.45}.mode-icon{margin:11px 0 8px}.mode-card.navy{background:#29433f}.question-card,.result-card{border-radius:18px}.exercise-view,.result-view{background:#e8eee5}.exercise-header{background:#fffdf8}.choice-button,.feedback,.gap-sentence{border-radius:9px}.glossary-dialog{border-radius:17px}
@media(max-width:1050px){.topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:45px 25px 36px}.hero-notebook{display:none}.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline{padding-top:45px}.mode-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.topbar{height:68px}.brand b{font-size:1rem}.hero h1{font-size:3.7rem;margin:10px 0 18px}.hero-copy{padding:37px 20px 38px}.hero-copy p{font-size:.94rem}.timeline,.dashboard{padding:36px 16px 20px}.dashboard{padding-bottom:65px}.section-heading{display:flex;align-items:flex-start;flex-direction:column;gap:13px}.section-heading h2{font-size:2.25rem}.section-help{font-size:.85rem}.topic-group{margin:19px 0 28px}.topic-group-head{display:block}.topic-group-head h3{font-size:1.32rem}.topic-group-head span{display:block;margin-top:3px}.topic-grid{gap:9px}.category-card{padding:12px;min-height:157px;grid-template-columns:1fr}.category-card .topic-icon{width:30px;height:30px;font-size:1.3rem}.category-card b{font-size:1rem;margin-top:7px}.category-card small{font-size:.7rem;margin-top:4px}.topic-actions{gap:5px;margin-top:12px}.topic-actions button{padding:8px 6px;font-size:.7rem;flex:1}.practice-filter{width:100%;display:block}.practice-filter span{display:block;margin-bottom:8px}.practice-filter select{width:100%;min-width:0}.mode-grid{grid-template-columns:1fr}.mode-card{min-height:166px}.overall-progress{width:100%}.text-button{font-size:.85rem}.question-card{border-radius:12px}.glossary-dialog{border-radius:8px}}

/* Four consolidated themes and a phrase-first glossary */
.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.category-card{min-height:210px;padding:23px;grid-template-columns:48px 1fr;grid-template-rows:1fr auto;column-gap:16px}.category-card .topic-icon{width:44px;height:44px;font-size:1.8rem}.category-card b{font-size:1.55rem}.category-card small{font-size:.85rem}.category-card .topic-text p{margin:12px 0 0;color:#66766f;line-height:1.45;font-size:.86rem}.topic-actions{margin-top:20px}.topic-actions button{font-size:.86rem;padding:10px 14px}.glossary-subheading{font-family:Georgia,serif;font-size:1.22rem;color:var(--navy);margin:25px 0 8px;padding-bottom:8px;border-bottom:1px solid var(--line)}.phrase-row{display:grid;grid-template-columns:minmax(0,1fr) 36px;gap:8px 18px;padding:15px 0;border-bottom:1px solid #e7ebe8;line-height:1.45}.phrase-row b{grid-column:1;font-family:Georgia,serif;font-size:1.04rem;font-weight:600}.phrase-row span{grid-column:1;color:#64746e;font-size:.9rem}.phrase-row button{grid-column:2;grid-row:1/3;align-self:center;border:0;background:#edf4f1;border-radius:50%;width:34px;height:34px;cursor:pointer}.feedback-translation{display:block;margin-top:6px;color:#587067;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:.9rem;font-weight:400}.mode-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:800px){.topic-grid,.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.topic-grid{grid-template-columns:1fr}.category-card{min-height:185px;padding:18px;grid-template-columns:42px 1fr}.category-card b{font-size:1.28rem}.category-card small{font-size:.76rem}.category-card .topic-text p{font-size:.8rem;margin-top:8px}.topic-actions button{font-size:.8rem}.mode-grid{grid-template-columns:1fr}}
