:root{
  --red:#a82f24; --deep:#702017; --paper:#f5ead1; --ink:#2d251d;
  --muted:#756958; --line:#cdbd9f; --cream:#f9f1df;
}
*{box-sizing:border-box}
body{margin:0;background:#e7dac0;color:var(--ink);font-family:"DM Sans",sans-serif}
button,input,textarea{font:inherit}
button{cursor:pointer}
.topbar{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;background:var(--cream);border-bottom:1px solid var(--line);position:relative;z-index:3}
.brand{font-weight:700;font-size:25px;letter-spacing:-1.2px;color:var(--red)}
.top-actions{display:flex;gap:10px}
.primary,.ghost{border:1px solid var(--red);border-radius:7px;padding:13px 20px;background:transparent;color:var(--red);font-weight:600}
.primary{background:var(--red);color:#fff;box-shadow:0 4px 12px #70201725}
.primary.small,.ghost.small{padding:9px 16px}
.ghost{border-color:#9e8f78;color:var(--ink);background:#fffaf0}
.hero{min-height:550px;position:relative;overflow:hidden;background:#c8b28d}
.hero-image{position:absolute;inset:0;background-image:linear-gradient(90deg,#0000 34%,#f4ead2 64%),url("assets/post-office-scene.png");background-size:cover;background-position:center 42%;filter:saturate(.9)}
.hero-copy{position:relative;z-index:1;width:min(530px,48%);margin-left:auto;margin-right:7vw;padding-top:110px}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;color:var(--red)}
.hero h1{font-family:"Special Elite",serif;font-size:52px;line-height:1.05;margin:16px 0;color:#292017}
.hero h1 em{font-style:normal;color:var(--red)}
.hero p{font-family:"Cormorant Garamond",serif;font-size:23px;line-height:1.35;max-width:430px}
.desk-nav{display:grid;grid-template-columns:1fr auto auto 1fr;align-items:center;gap:14px;padding:13px 4vw;background:#f7edd9;border-bottom:1px solid var(--line)}
.nav-btn,.nav-user{border:0;background:transparent;color:var(--ink);padding:11px 15px}
.nav-btn.active{font-weight:700}
.badge{background:var(--red);color:white;border-radius:20px;padding:2px 7px;font-size:11px}
.nav-user{justify-self:end}
.view{padding:52px 5vw;max-width:1250px;margin:auto}
.view.hidden{display:none}
.view-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:22px}
h2{font-family:"Cormorant Garamond",serif;font-size:38px;margin:8px 0}
.counter{display:flex;flex-direction:column;text-align:right;color:var(--muted)}
.counter strong{font-size:28px;color:var(--red)}
.mailroom{min-height:540px;position:relative;overflow:hidden;border:1px solid #a99170;border-radius:12px;background:radial-gradient(circle at 50% 35%,#6e563d,#382a20 70%);box-shadow:0 18px 40px #4a352333}
.note,.missed{position:absolute;z-index:2;width:220px;padding:20px;background:var(--paper);border:1px solid #b9a583;box-shadow:0 8px 20px #0003}
.note{left:28px;top:28px;transform:rotate(-2deg)} .missed{right:28px;bottom:28px;transform:rotate(2deg)}
.note h3{font-family:"Special Elite";margin:0 0 8px}.note p,.missed small{display:block;line-height:1.5;color:var(--muted)}
.missed strong{display:block;margin-bottom:5px}.missed strong span{color:var(--red)}
.text-btn{border:0;background:none;color:var(--red);font-weight:700;padding:8px 0}
.sky{position:absolute;inset:0}
.flying{position:absolute;width:130px;height:82px;background:#ead8b7;border:1px solid #bba27b;box-shadow:0 7px 14px #0005;display:flex;align-items:center;justify-content:center;font-family:"Special Elite";font-size:13px;color:#66513d;transition:.25s}
.flying:hover{transform:scale(1.18) rotate(0)!important;box-shadow:0 14px 30px #0008;z-index:5}
.panel{background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:28px;box-shadow:0 16px 40px #5b432322}
.panel-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
.back,.save{border:0;background:none;color:var(--red);font-weight:600}
.postcard{background:#e9d6af;border:1px solid #b69b6f;box-shadow:0 14px 25px #503a2533;position:relative}
.large-card{max-width:720px;min-height:360px;margin:20px auto;padding:55px 60px;transform:rotate(-.4deg)}
.message{font-family:"Cormorant Garamond",serif;font-size:27px;line-height:1.3}
.message .to{font-size:24px;margin-bottom:24px}.sign{font-style:italic;margin-top:25px}
.postmark{position:absolute;right:30px;top:30px;border:2px solid var(--red);border-radius:50%;width:80px;height:80px;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--red);font-size:12px;transform:rotate(8deg)}
.journey{margin:35px auto;max-width:1000px}.journey h3{font-family:"Special Elite";color:var(--red)}
.journey-line{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;border-top:2px dashed #ae9875;padding-top:18px}
.journey-line div{text-align:center}.journey-line b{display:block;font-size:24px;margin-bottom:8px}.journey-line strong,.journey-line small{display:block}.journey-line small{color:var(--muted);font-size:11px;margin-top:4px}
.read-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.send-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:start}
.blank-card{min-height:520px;padding:45px}.blank-card .stamp{position:absolute;right:30px;top:30px;border:2px solid var(--red);padding:9px;text-align:center;color:var(--red);font-size:12px}
.form{display:flex;flex-direction:column;gap:10px}.form label{font-weight:600}.choice{font-weight:500!important}.form small{color:var(--muted);font-size:12px;margin-left:25px}.text-input,textarea{border:1px solid var(--line);background:#fffaf0;border-radius:6px;padding:12px;color:var(--ink)}textarea{min-height:150px;resize:vertical;font-family:"Cormorant Garamond",serif;font-size:21px}.message-label{display:flex;justify-content:space-between;margin-top:15px}.choose{margin-top:14px}.thumbs{display:flex;gap:8px;margin-top:8px}.thumb{width:55px;height:42px;border:1px solid var(--line);background:#ead6ad}.thumb.selected{border:2px solid var(--red)}.form-actions{display:flex;gap:10px;margin-top:14px}
.inbox-list{display:grid;gap:12px;margin-top:25px}.inbox-card{display:grid;grid-template-columns:55px 1fr 30px;text-align:left;align-items:center;border:1px solid var(--line);background:#fff9ed;padding:18px;border-radius:8px}.envelope{font-size:25px}.inbox-card strong,.inbox-card small{display:block}.inbox-card small{color:var(--muted);margin-top:5px}
footer{display:flex;gap:25px;align-items:center;padding:22px 5vw;border-top:1px solid var(--line);background:var(--cream);font-size:12px;color:var(--muted)}footer strong{font-size:20px;color:var(--red)}.footer-links{margin-left:auto}
.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:#2c251e;color:white;padding:12px 18px;border-radius:8px;opacity:0;pointer-events:none;transition:.25s;z-index:10}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:800px){
 .hero{min-height:620px}.hero-image{background-position:28% center;filter:brightness(.72)}.hero-copy{width:auto;margin:0;padding:300px 28px 40px;color:white}.hero h1{font-size:42px;color:white}.hero p{color:white}.desk-nav{grid-template-columns:1fr 1fr;position:sticky;top:0;z-index:4}.nav-user{display:none}.view{padding:30px 18px}.view-head{display:block}.counter{text-align:left;margin-top:15px}.note,.missed{display:none}.mailroom{min-height:620px}.flying{width:105px;height:65px}.send-grid{grid-template-columns:1fr}.journey-line{grid-template-columns:1fr;gap:20px;border-top:0}.journey-line div{display:grid;grid-template-columns:45px 1fr;text-align:left}.journey-line b{grid-row:span 2}.large-card{padding:35px 25px}.footer-links{display:none}
}
