:root{--green:#092e29;--gold:#c99c51;--paper:#f8f4ea;--cream:#eee5d4;--ink:#172622;--red:#9e342c}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif}.auth-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top right,#175649,var(--green));padding:1.2rem}.auth-card{width:min(480px,100%);background:var(--paper);padding:clamp(2rem,5vw,4rem);border-top:5px solid var(--gold);box-shadow:0 30px 80px #001b17aa}.admin-logo{display:flex;flex-direction:column;font:1.4rem "Libre Caslon Display";letter-spacing:.15em;color:inherit;text-decoration:none}.admin-logo small{text-transform:uppercase;letter-spacing:.2em;font:500 .5rem "DM Sans";color:var(--gold)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.6rem;color:#9a733a;margin-top:3rem}h1,h2,h3{font-family:"Libre Caslon Display",serif;font-weight:400}h1{font-size:clamp(2.5rem,5vw,4.5rem);line-height:.95;margin:.5rem 0 1rem}.auth-card>p:not(.eyebrow){color:#6c746e;line-height:1.6}.auth-card form{display:flex;flex-direction:column;gap:1rem;margin:2rem 0}label{font-size:.62rem;text-transform:uppercase;letter-spacing:.12em;color:#616b65}input,textarea,select{display:block;width:100%;margin-top:.45rem;padding:.8rem;border:1px solid #c9c0af;background:#fff;font:inherit;color:var(--ink)}button.primary,.auth-card button{display:flex;justify-content:space-between;border:0;background:var(--gold);padding:1rem 1.2rem;text-transform:uppercase;letter-spacing:.12em;font-weight:600;cursor:pointer}.back{font-size:.7rem;color:#68736d;text-decoration:none}.flash{padding:1rem;margin:1rem 0;font-size:.8rem}.flash.error{background:#f5dcd7;color:#7a2822}.flash.success{background:#d9ede2;color:#16553f}.admin-header{height:78px;padding:0 clamp(1.2rem,5vw,5rem);background:var(--green);color:#fff;display:flex;justify-content:space-between;align-items:center}.admin-header>div{display:flex;align-items:center;gap:1rem}.admin-header a,.text-button{color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.1em;font-size:.65rem}.admin-header form{display:inline}.text-button{background:none;border:0;cursor:pointer}.dashboard{width:min(1180px,calc(100% - 2.4rem));margin:4rem auto}.dashboard-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:2rem}.dashboard-title .eyebrow{margin:0}.dashboard-title>span{padding:.6rem 1rem;border:1px solid #c6bdac;font-size:.7rem;text-transform:uppercase}.panel{background:#fff;padding:clamp(1.2rem,4vw,3rem);margin:1rem 0;border:1px solid #e0d7c7}.panel h2{font-size:2.2rem;margin:0}.panel>p{color:#6e7771}.coin-form{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2rem}.coin-form .wide{grid-column:span 2}.coin-form .primary{align-self:end}.admin-list{margin-top:2rem}.admin-list article{display:grid;grid-template-columns:70px 1fr 150px auto;gap:1rem;align-items:center;padding:1rem 0;border-top:1px solid #ddd4c4}.admin-list img,.image-empty{width:70px;height:70px;object-fit:cover;background:var(--cream);display:grid;place-items:center;font:2rem "Libre Caslon Display"}.listing-copy h3{margin:.25rem 0;font-size:1.35rem}.listing-copy p{margin:0;color:#758078;font-size:.75rem}.status{font-size:.52rem;text-transform:uppercase;letter-spacing:.12em;color:#fff;padding:.25rem .4rem;background:#64726a}.status.available{background:#25755c}.status.sold{background:#8d4b44}.delete{border:0;background:none;color:var(--red);font-size:.7rem;cursor:pointer}.empty{padding:2rem;background:var(--cream)}@media(max-width:800px){.coin-form{grid-template-columns:1fr 1fr}.coin-form .wide{grid-column:1/-1}.admin-list article{grid-template-columns:60px 1fr}.admin-list article>form{grid-column:2}.admin-header>div>a{display:none}}@media(max-width:520px){.coin-form{grid-template-columns:1fr}.coin-form .wide{grid-column:auto}.dashboard-title{align-items:start;flex-direction:column;gap:1rem}}

/* Familiar palette with a simpler, touch-friendly listing form. */
body{font-size:16px}label{font-size:.875rem;text-transform:none;letter-spacing:0}input,textarea,select{font-size:1rem;min-height:46px}.eyebrow,.status,.back,.flash,.listing-copy p,.dashboard-title>span{font-size:.875rem}.admin-header a,.text-button,.delete{font-size:.875rem}.admin-logo small{font-size:.75rem}.dashboard{margin:2rem auto}.dashboard-title h1{font-size:clamp(2.5rem,5vw,3.5rem)}.coin-form{grid-template-columns:1fr 1fr;max-width:780px;margin-top:1.5rem}.coin-form .full{grid-column:1/-1}.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.photo-picker{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:155px;border:1px dashed #8a9b92;background:#f5f8f5;border-radius:8px;overflow:hidden;gap:.5rem;color:var(--green);cursor:pointer}.photo-picker input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;margin:0}.photo-picker:focus-within{outline:3px solid var(--gold);outline-offset:3px}.photo-picker img{width:100%;height:130px;object-fit:contain}.photo-picker span{font-size:.875rem;text-decoration:underline}.coin-extras{border-top:1px solid #ddd4c4;border-bottom:1px solid #ddd4c4;padding:1rem 0}.coin-extras summary{cursor:pointer;font-weight:600;min-height:30px}.coin-extras summary span{font-weight:400;color:#64726a;font-size:.875rem;margin-left:.5rem}.extra-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}label small{display:block;margin-top:.4rem;color:#64726a;font-size:.875rem}.coin-form button.primary{min-height:49px;align-self:end;font-size:1rem;text-transform:none;letter-spacing:0;border-radius:5px}.primary:disabled{opacity:.6;cursor:wait}.delete{min-height:44px}.coin-form :focus-visible{outline:3px solid var(--gold);outline-offset:2px}@media(max-width:520px){.coin-form,.extra-grid{grid-template-columns:1fr}.coin-extras summary span{display:block;margin:.4rem 0 0}.photo-picker{min-height:130px}.coin-form button.primary{width:100%}}
