:root{color:#263329;background:#f7f7f2;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}.page{min-height:100vh;display:grid;place-items:center;padding:2rem}.hero{width:min(720px,100%);padding:clamp(2rem,8vw,5rem);background:#fff;border:1px solid #e4e6dd;border-radius:24px;box-shadow:0 16px 45px #29362a12}.eyebrow{margin:0 0 1rem;color:#5d7a66;font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}h1{margin:0;font-size:clamp(2rem,6vw,4rem);line-height:1.14;letter-spacing:-.045em}.description{max-width:34rem;margin:1.5rem 0 0;color:#627066;line-height:1.7}.status{display:inline-flex;gap:.6rem;align-items:center;margin:2rem 0 0;padding:.7rem 1rem;border-radius:999px;background:#edf4ed;color:#42604b;font-size:.9rem}.status span{width:.55rem;height:.55rem;background:#6d9a77;border-radius:50%}.loading{min-height:100vh;display:grid;place-items:center;color:#627066}.topbar{height:72px;padding:0 5vw;display:flex;align-items:center;gap:3rem;border-bottom:1px solid #e4e6dd;background:#fff}.brand{color:#263329;text-decoration:none;font-weight:750;letter-spacing:-.02em}.brand-mark{color:#6d9a77;margin-right:.4rem}nav{display:flex;gap:1.5rem;flex:1}nav a{color:#77847a;text-decoration:none;font-size:.92rem}nav a.router-link-active{color:#31563d;font-weight:700}.account{display:flex;align-items:center;gap:1rem;color:#627066;font-size:.86rem}.account button,.text-button{border:0;background:transparent;color:#5d7a66;cursor:pointer}.app-shell{max-width:1180px;margin:0 auto;padding:3.5rem 2rem}.content{width:100%}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.5rem}.page-heading h1{font-size:clamp(2rem,5vw,3.2rem)}.page-heading .eyebrow{margin-bottom:.7rem}.muted{color:#77847a;line-height:1.6}.primary-button{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:10px;padding:.8rem 1.1rem;background:#52755d;color:#fff;font-weight:650;cursor:pointer;text-decoration:none}.primary-button:disabled{opacity:.6}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.3rem}.stat-grid article,.panel{background:#fff;border:1px solid #e4e6dd;border-radius:16px}.stat-grid article{padding:1.3rem}.stat-grid span,.stat-grid small{display:block;color:#77847a;font-size:.84rem}.stat-grid strong{display:block;margin:.45rem 0;font-size:2rem;letter-spacing:-.04em}.stat-grid .unit{display:inline;margin-left:.2rem;font-size:.9rem;color:#263329}.panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}.panel{padding:1.4rem}.panel-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}h2{margin:0;font-size:1.05rem}.panel-title a{color:#5d7a66;font-size:.82rem;text-decoration:none}.item-list{display:grid;gap:.2rem}.item{display:grid;grid-template-columns:1fr 1fr auto;gap:1rem;padding:.8rem 0;border-bottom:1px solid #eef0ea;align-items:center}.item span,.item em{color:#77847a;font-size:.82rem;font-style:normal}.empty{color:#8a948d;padding:1.5rem .3rem;text-align:center}.auth-page{min-height:100vh;display:grid;place-items:center;padding:2rem;background:#f7f7f2}.auth-card{width:min(420px,100%);padding:2.5rem;background:#fff;border:1px solid #e4e6dd;border-radius:20px;box-shadow:0 16px 45px #29362a12}.auth-card h1{font-size:2.2rem;margin-bottom:.6rem}form{display:grid;gap:1rem;margin-top:1.8rem}label{display:grid;gap:.4rem;color:#526158;font-size:.84rem}input,textarea{width:100%;border:1px solid #dfe4dc;border-radius:9px;padding:.75rem .85rem;color:#263329;background:#fcfcfa;font:inherit}textarea{min-height:120px;resize:vertical}.text-button{display:block;margin:1.2rem auto 0;font-size:.85rem}.error{color:#ad5f55;font-size:.85rem}.heading-actions{display:flex;gap:.7rem;align-items:center}.secondary-button{display:inline-flex;align-items:center;border:1px solid #bfcfc1;border-radius:10px;padding:.75rem 1rem;background:#f4f8f3;color:#52755d;font-weight:650;cursor:pointer}.inline-form{display:flex;gap:.7rem;align-items:center;margin-bottom:1.2rem}.inline-form input{flex:1}.table-panel{padding:.4rem 1.3rem}.table-row{display:grid;grid-template-columns:1.2fr 1.5fr 1fr 1fr;gap:1rem;padding:1rem .3rem;border-bottom:1px solid #eef0ea;align-items:center}.table-row:last-child{border-bottom:0}.table-head{color:#8a948d;font-size:.8rem}.tag{display:inline-block;padding:.25rem .55rem;border-radius:999px;background:#edf4ed;color:#52755d;font-size:.75rem;font-style:normal}.sentence-list{display:grid;gap:1rem}.sentence-card p{margin:0 0 .7rem;font-size:1.15rem;line-height:1.5}.sentence-card span,.sentence-card small{display:block;color:#77847a;line-height:1.6}.sentence-form{max-width:680px;margin-bottom:1.3rem}@media(max-width:720px){.topbar{padding:0 1rem;gap:1rem}nav{gap:.8rem}.account span{display:none}.app-shell{padding:2rem 1rem}.page-heading{align-items:start;flex-direction:column;margin-bottom:1.8rem}.heading-actions{width:100%;flex-wrap:wrap}.stat-grid{grid-template-columns:1fr 1fr}.panel-grid{grid-template-columns:1fr}.inline-form{align-items:stretch;flex-direction:column}.table-row{grid-template-columns:1fr 1fr}}.capture-panel{margin-bottom:1.3rem}.capture-panel textarea{min-height:145px;margin-top:.4rem}.parse-preview{margin-top:1rem;padding-top:.8rem;border-top:1px solid #eef0ea;color:#627066;font-size:.88rem}.preview-row{display:grid;grid-template-columns:1fr 1fr 2fr;gap:1rem;padding:.55rem 0;border-bottom:1px solid #eef0ea}.success{color:#52755d;font-size:.85rem}.danger-button{border:0;background:transparent;color:#ad5f55;cursor:pointer;font:inherit;font-size:.78rem}.word-picker{display:grid;gap:.55rem;padding:1rem;border:1px solid #e4e6dd;border-radius:10px;background:#fafbf8}.word-check{display:flex;grid-template-columns:none;align-items:center;gap:.5rem;color:#263329}.word-check input{width:auto}.word-check small{color:#77847a;margin-left:.3rem}.sentence-words{margin-top:1rem;padding-top:.8rem;border-top:1px solid #eef0ea}.linked-item{display:flex;gap:1rem;padding:.55rem 0}.linked-item span{color:#77847a}.date-filter{margin-bottom:1rem;padding:.8rem 1rem}.date-filter summary{cursor:pointer;color:#52755d;font-weight:650}.date-fields{display:flex;align-items:center;gap:.8rem;padding-top:.8rem}.date-fields label{display:flex;align-items:center;gap:.35rem}.date-fields input{width:auto;padding:.45rem .55rem}.form-tip{margin:0;font-size:.84rem}.review-count{color:#52755d;padding:.6rem .9rem;background:#edf4ed;border-radius:999px;font-size:.85rem}.review-card{width:min(680px,100%);margin:3rem auto 0;padding:clamp(2rem,8vw,4rem);text-align:center}.review-label{color:#77847a}.review-card h2{margin:1.5rem 0;font-size:clamp(2.6rem,8vw,5rem);letter-spacing:-.06em}.review-example{color:#77847a;font-style:italic}.answer{display:grid;gap:.5rem;padding:1rem;margin:1.5rem 0;border-radius:10px;background:#f2f7f1}.answer strong{font-size:1.4rem}.answer span{color:#77847a;font-size:.85rem}.reveal-button{margin:1.5rem auto 0}.review-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:.7rem;margin-top:1.5rem}.review-actions button{border:1px solid #d6dfd5;border-radius:9px;padding:.7rem 1rem;background:#fff;color:#526158;cursor:pointer}.review-actions .primary-button{border:0;color:#fff}.review-empty{text-align:center}.review-empty h2{margin-top:0}
