:root{font-family:Inter,system-ui,sans-serif;color:#203c3a;background:#f3f5f0}*{box-sizing:border-box}body{margin:0}header{display:flex;align-items:center;gap:12px;padding:18px 5%;border-bottom:1px solid #dde4db;background:#fff}.brand{font-weight:750;margin-right:auto}main{max-width:880px;margin:auto;padding:32px 20px}.intro small{color:#698079;letter-spacing:2px;font-size:10px}h1{font-size:36px;margin:12px 0 8px}p{line-height:1.5}nav{display:flex;gap:8px;margin:28px 0;overflow:auto}button,select,input,textarea{font:inherit}button{cursor:pointer;border:1px solid #d5ded6;background:#fff;color:#203c3a;border-radius:10px;padding:11px 14px}button.active,.primary{background:#24594c;color:#fff;border-color:#24594c}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.card{background:#fff;border:1px solid #e0e6dd;border-radius:18px;padding:22px;margin-bottom:15px}.card h3{margin:8px 0 12px}.label{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#648075}.details{white-space:pre-wrap;overflow-wrap:anywhere}.muted{font-size:12px;color:#728279}.empty{padding:36px;border:1px dashed #b9cabe;border-radius:18px;margin-bottom:20px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}dialog{border:0;border-radius:20px;padding:26px;width:min(92vw,480px);max-height:90vh}dialog::backdrop{background:#173d3555}label{display:block;margin:12px 0;font-size:13px}input,textarea,select{display:block;width:100%;margin-top:6px;padding:10px;border:1px solid #cbd7cc;border-radius:8px;background:white}header select{max-width:190px;margin:0}textarea{min-height:95px}#error{color:#a13d2b;white-space:pre-wrap}a{color:#24594c}@media(max-width:540px){header{flex-wrap:wrap;padding:14px}.brand{width:100%}h1{font-size:30px}main{padding:25px 16px}nav button{font-size:13px;padding:10px}.card{padding:18px}}

/* Keep form text large enough to avoid focus zoom in mobile WebKit. */
input,textarea,select{font-size:16px;min-width:0;max-width:100%}
textarea{resize:vertical}
header>*{min-width:0}
.grid{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
.card,.empty,#heading,#dates,#error{overflow-wrap:anywhere}
dialog{max-width:calc(100vw - 24px);max-height:90dvh;overflow:auto}
nav{max-width:100%}
nav button{flex-shrink:0}

.proposal-field{padding:16px 0;border-top:1px solid #e0e6dd}.proposal-field h4{margin:0 0 10px;font-size:14px}.proposal-field small{display:block;font-size:12px;margin-bottom:4px}.proposal-before{color:#728279;margin-bottom:12px}.proposal-after{background:#f0f6f1;border-radius:10px;padding:12px}.proposal-after div{font-weight:600}.proposal-before div,.proposal-after div{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}#proposal-status:empty{display:none}
.shopping-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.shopping-toolbar p{margin:0}.shopping-list{padding:20px}.shopping-list-head{display:flex;align-items:center;justify-content:space-between}.shopping-list-head h3{margin:8px 0 12px}.shopping-rows{border-top:1px solid #e0e6dd}.shopping-row{display:grid;grid-template-columns:42px 1fr 40px 40px;align-items:center;gap:6px;padding:12px 0;border-bottom:1px solid #e8ece6}.shopping-row.bought strong{text-decoration:line-through;color:#728279}.shopping-check,.compact{padding:8px;min-width:36px;border:0;background:transparent;font-size:21px}.shopping-check{color:#24594c}.compact{color:#698079}.shopping-item{display:flex;min-width:0;flex-direction:column;gap:3px}.shopping-item strong,.shopping-item small{overflow-wrap:anywhere}.shopping-item small{color:#728279}.invite-code{overflow-wrap:anywhere}@media(max-width:540px){.shopping-toolbar{align-items:stretch;flex-direction:column}.shopping-list{padding:16px}.shopping-row{grid-template-columns:38px 1fr 34px 34px}.shopping-check,.compact{padding:6px}}
.clarification-summary{padding:18px 20px}.clarification-summary-head,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.count-badge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:30px;height:30px;padding:0 9px;border-radius:999px;background:#e9f1eb;color:#24594c;font-weight:750;font-size:13px}.clarification-preview{margin:14px 0 16px;border-top:1px solid #e5ebe3}.clarification-preview-row{display:grid;grid-template-columns:10px 1fr;gap:10px;align-items:start;padding:12px 0;border-bottom:1px solid #e5ebe3}.clarification-preview-row>span{width:7px;height:7px;margin-top:8px;border-radius:50%;background:#d59a38}.clarification-preview-row p{margin:0;line-height:1.42;font-weight:600}.clarification-more{margin:-4px 0 14px;color:#728279;font-size:13px}.section-heading h2{margin:6px 0 0}.section-note{margin:8px 0 20px;color:#60746d}.clarification-list{display:grid;gap:12px}.clarification-card{display:grid;grid-template-columns:34px 1fr;gap:14px;margin:0;padding:18px}.clarification-card h3{margin:0 0 8px;font-size:17px;line-height:1.4}.clarification-card .muted{margin:0 0 14px;line-height:1.45}.clarification-index{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;background:#f3eee2;color:#8a6425;font-weight:750}@media(max-width:540px){.clarification-summary{padding:16px}.clarification-card{grid-template-columns:30px 1fr;padding:16px;gap:10px}.clarification-index{width:28px;height:28px}.clarification-card h3{font-size:16px}}
