@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#273b32;background:#faf8f2;font-synthesis:none;--green:#234638;--muted:#747b71;--border:#e6e5da}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}a{color:inherit}header{max-width:1280px;margin:auto;padding:26px 44px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border)}.brand{text-decoration:none;font-weight:700;font-size:19px;display:flex;gap:12px;align-items:center}.brand-icon{background:var(--green);color:#efdeb0;border-radius:12px;padding:7px 12px;font-size:25px}.quiet{background:transparent;border:0;color:var(--green);padding:10px;border-radius:8px}.quiet:hover{background:#e9ede6}main{max-width:1192px;margin:55px auto;padding:0 28px;min-height:65vh}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:#957443;text-transform:uppercase}h1,h2,h3{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400}h1{font-size:64px;line-height:1.05;margin:16px 0}h2{font-size:34px;margin:0}h3{font-size:27px;margin:0}.intro{display:flex;align-items:center;justify-content:space-between;gap:24px}.intro p{color:var(--muted);line-height:1.7}.season{border:1px solid #dcdccf;border-radius:50%;width:115px;height:115px;flex-shrink:0;display:grid;place-content:center;text-align:center;color:#947b4c;font-size:11px;letter-spacing:2px;transform:rotate(8deg)}.season strong{font-family:Georgia,serif;font-weight:400;font-size:35px;line-height:1.3}.tabs{display:flex;gap:28px;border-bottom:1px solid var(--border);margin:35px 0 30px}.tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:14px 0;color:var(--muted);font-weight:600}.tabs button.active{color:var(--green);border-color:var(--green)}.workspace{display:grid;grid-template-columns:235px 1fr;gap:40px}.sidebar-label{font-size:11px;letter-spacing:1.5px;color:var(--muted);padding:6px 12px 14px}.person{width:100%;text-align:left;display:flex;align-items:center;gap:12px;border:1px solid transparent;background:transparent;padding:12px;border-radius:11px;margin:0 0 5px;color:var(--green)}.person.active{background:#e9eee5;border-color:#dbe2d5}.avatar{display:grid;place-content:center;width:37px;height:37px;background:#ede8dd;border-radius:50%;font-size:12px;font-weight:700;flex-shrink:0}.person.active .avatar{background:var(--green);color:#fff}.person small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.add-person{font-size:13px;margin-top:8px}.list-top{display:flex;justify-content:space-between;align-items:center;gap:16px}.list-top p{font-size:13px;color:var(--muted);margin:9px 0}.primary{background:var(--green);color:#fff;border:0;border-radius:9px;padding:13px 19px;font-size:13px;font-weight:600}.primary:hover{background:#315c47}.privacy{background:#f0eee3;color:#75694b;font-size:12px;line-height:1.6;padding:12px 16px;border-radius:8px;margin:20px 0}.gift{border:1px solid var(--border);background:#fffefb;border-radius:13px;padding:22px;margin-top:12px;display:flex;gap:18px;align-items:flex-start}.gift-icon{width:48px;height:48px;background:#f0eee5;display:grid;place-content:center;border-radius:10px;font-size:23px;color:#9b8255;flex-shrink:0}.gift-body{flex:1;min-width:0}.gift h4{margin:1px 0 9px;font-size:15px;font-weight:600;overflow-wrap:anywhere}.gift p{font-size:13px;color:var(--muted);line-height:1.6;margin:5px 0;white-space:pre-wrap;overflow-wrap:anywhere}.gift a{font-size:12px;color:#5e735c}.gift-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:14px}.small-button{background:#eef1e9;border:0;border-radius:6px;color:var(--green);padding:8px 11px;font-size:12px}.badge{font-size:11px;color:#786c53;background:#f1eddf;border-radius:5px;padding:6px 9px;display:inline-block}.badge.purchased{color:#466f50;background:#e7efdf}.empty{border:1px dashed #d8ddcf;border-radius:12px;padding:45px 25px;text-align:center;margin-top:20px}.empty p{color:var(--muted);font-size:14px;line-height:1.6}.welcome{max-width:640px;margin:90px auto;text-align:center}.welcome .primary{margin:12px 6px}.welcome p{line-height:1.8;color:var(--muted)}footer{max-width:1192px;margin:65px auto 25px;padding:24px 28px;border-top:1px solid var(--border);font-size:11px;color:var(--muted);display:flex;justify-content:space-between}footer span{color:#af9564}dialog{border:1px solid var(--border);border-radius:18px;padding:28px;width:min(480px,calc(100% - 30px));color:var(--green);background:#fffefb}dialog::backdrop{background:#17302577;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px}dialog h2{font-size:31px}label{display:block;font-size:13px;margin:16px 0 7px}input,textarea,select{width:100%;border:1px solid #d7dbd1;background:white;border-radius:8px;padding:12px;color:#273b32}textarea{min-height:90px;resize:vertical}input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid #9a8154;outline-offset:3px}.help{font-size:12px;color:var(--muted);line-height:1.6}.error{color:#a54235;font-size:13px}#modal-submit{width:100%;margin-top:12px}.preview-banner{background:#e9dcb8;color:#59492a;text-align:center;padding:10px 20px;font-size:11px;line-height:1.5}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--green);color:white;padding:13px 22px;border-radius:10px;box-shadow:0 4px 25px #0002;max-width:90vw;font-size:13px;z-index:10}
@media(max-width:700px){header{padding:18px 20px}.brand{font-size:16px}.brand-icon{font-size:20px}main{margin-top:32px;padding:0 20px}h1{font-size:46px}.season{width:80px;height:80px;font-size:9px}.season strong{font-size:27px}.intro p{font-size:13px}.workspace{grid-template-columns:1fr;gap:24px}.people{display:flex;overflow:auto;gap:8px;padding:2px}.person{width:auto;min-width:130px;margin:0}.sidebar-label{display:none}.sidebar .add-person{margin:8px 0 0}.tabs{gap:24px;margin-top:22px}.tabs button{font-size:13px}.gift{padding:17px;gap:12px}.gift-icon{width:36px;height:36px}.list-top h2{font-size:29px}.list-top .primary{padding:12px}.welcome{margin:55px auto}.welcome h1{font-size:52px}}

/* Keep the lists at the top, with quiet supporting text. */
main{margin-top:24px}.tabs{margin:0 0 28px}.privacy{background:none;padding:0;margin:12px 0 18px;color:var(--muted);font-size:12px}.empty{padding:24px}.empty p{margin:0}.gift-actions:empty{display:none}@media(max-width:700px){main{margin-top:12px}.tabs{margin-top:0;gap:20px}}

.brand-icon{display:block;padding:0;width:44px;height:44px;border-radius:11px;flex-shrink:0}.brand{min-width:0}.brand>span{line-height:1.25}@media(max-width:700px){.brand{font-size:15px;gap:10px;max-width:75%}.brand-icon{width:38px;height:38px}}

.brand-icon{background:transparent;border-radius:0}
.navigation{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px;border-bottom:1px solid var(--border)}.navigation .tabs{margin:0;border:0;flex-wrap:wrap;gap:24px}.year-picker{margin:0;min-width:165px}.year-picker select{background:transparent;border:0;padding:12px 4px;font-size:12px;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-button{border:0;background:none;padding:0;color:var(--muted);font-size:12px;text-decoration:underline;cursor:pointer}.gift-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.gift-heading h4{margin-top:2px}.priority{font-size:11px;white-space:nowrap;color:#65745e;padding:4px 8px;border-radius:5px;background:#eef1e9}.priority-1{color:#8a493a;background:#f6e9e1}.priority-3{background:#f2f0e9;color:#827a68}.price{font-weight:600}.surprise{margin-bottom:8px;background:#f4e4e3;color:#8c4d4d}.recipient-group{margin-bottom:32px}.recipient-group h2{font-size:27px;margin-bottom:12px}.plan-section{border-top:1px solid var(--border);padding-top:18px;margin:18px 0}.plan-section h3{font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600}.plan-section textarea{min-height:65px;margin-bottom:8px}.buyer-row{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--border);font-size:13px}.buyer-row small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.inline-control{display:flex;gap:8px}.inline-control input{min-width:0}.inline-control button{flex-shrink:0}.note{padding:12px 0;border-bottom:1px solid var(--border);font-size:12px}.note strong{font-size:12px}.note time{float:right;color:var(--muted);font-size:10px}.note p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}.checkbox-label{display:flex;gap:10px;align-items:center;line-height:1.5;padding:12px;background:#f4ecdb;border-radius:8px}.checkbox-label input{width:auto}.danger-button{border:1px solid #d7b5ad;background:#fff7f3;color:#923d2d;padding:10px 15px;border-radius:8px;font-size:13px}.setup-notice{font-size:12px;padding:10px 14px;background:#f0eee3;border-radius:8px}.tabs button{white-space:nowrap}.my-gifts{max-width:850px;margin:0 auto}dialog .help{margin-top:8px}@media(max-width:700px){.navigation{flex-direction:column;gap:0;margin-bottom:22px}.navigation .tabs{gap:18px;flex-wrap:nowrap;width:100%;overflow:auto}.navigation .tabs button{font-size:12px}.year-picker{align-self:flex-end}.year-picker select{padding:9px 0}.gift-heading{flex-wrap:wrap;gap:0}.gift-heading h4{width:100%}.priority{margin-bottom:8px}.gift-actions{gap:4px}.list-top h2{font-size:27px}}
