@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--ink:#182824;--paper:#f6f3e9;--accent:#b8442b;--line:#d4d1c5;--sage:#aebfb3}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif}
body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 88% 4%,#e8e6d5 0,transparent 38%),repeating-linear-gradient(90deg,transparent 0,transparent 99px,#18282408 100px)}
.shell{max-width:1440px;margin:auto;padding:0 5.3vw}header,footer{display:flex;justify-content:space-between;align-items:center}header{height:98px;border-bottom:1px solid var(--line)}
.brand{text-decoration:none;color:var(--ink);font-size:22px;letter-spacing:.07em;font-weight:700;white-space:nowrap}.brand-mark{color:var(--accent);font-size:17px;margin-left:9px}.edition,.eyebrow,.section-title,.card-top,.card p,button,footer,.notice,.back{font-size:11px;font-weight:700;letter-spacing:.17em}
.edition{color:#69736d}.intro{padding:92px 0 90px;max-width:940px;animation:rise .7s both}.eyebrow{color:var(--accent);margin:0 0 25px}h1{font-family:"Playfair Display",Georgia,serif;font-weight:500;font-size:clamp(64px,9vw,142px);line-height:.98;letter-spacing:-.065em;margin:0}h1 em{color:var(--accent);font-weight:500}.lead{font-size:17px;line-height:1.6;color:#52615a;max-width:440px;margin:35px 0 0}.section-title{display:flex;justify-content:space-between;border-bottom:1px solid var(--ink);padding-bottom:16px}.grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;padding-top:20px}
.card{min-height:335px;background:#e8e9da;display:flex;flex-direction:column;padding:22px;transition:transform .25s,background .25s;animation:rise .65s both}.card:nth-child(2){animation-delay:.08s}.card:nth-child(3){animation-delay:.16s}.card:nth-child(4){animation-delay:.24s}.card:nth-child(5){animation-delay:.32s}
.card:nth-child(even){background:#dce4d9}.card:last-child{background:#c8d7cb}.card:hover{transform:translateY(-7px);background:#c4d7c8}.card-top{opacity:.55}.value{font-family:"Playfair Display",Georgia,serif;font-size:clamp(49px,5.4vw,86px);letter-spacing:-.07em;line-height:1;margin-top:68px}.card p{margin:7px 0 25px;color:#52615a}.card form{margin-top:auto}
button{width:100%;border:0;border-top:1px solid #81918a;color:var(--ink);background:transparent;text-align:left;display:flex;justify-content:space-between;padding:18px 0 0;cursor:pointer;font-family:inherit}button span{font-size:18px;line-height:10px;transition:transform .2s}button:hover span{transform:translate(3px,-3px)}
.notice{padding:24px 0 84px;color:#69736d;letter-spacing:.04em;font-weight:400}footer{border-top:1px solid var(--line);padding:25px 0 40px;color:#69736d}
.result{min-height:68vh;padding-top:110px}.result h1{font-size:clamp(58px,7vw,110px);max-width:900px}.dot{color:var(--accent)}.receipt{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:14px;max-width:520px;padding:26px 0;margin:48px 0;font-size:13px}.receipt strong{font-size:16px}.back{color:var(--accent);text-decoration:none}
@keyframes rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){.grid{grid-template-columns:repeat(3,1fr)}.card{min-height:300px}.value{margin-top:45px}}
@media(max-width:650px){.shell{padding:0 22px}header{height:76px}.brand{font-size:20px}.edition{display:none}.intro{padding:75px 0 65px}.lead{font-size:15px}.section-title{font-size:9px;gap:12px}.grid{grid-template-columns:repeat(2,1fr);gap:9px}.card{min-height:240px;padding:15px}.value{font-size:55px;margin-top:32px}.card p,.card-top,button{font-size:9px}.card p{margin-bottom:10px}footer{flex-wrap:wrap;gap:15px;font-size:9px}.result{min-height:70vh}.receipt{margin-top:35px}}
@media(max-width:380px){.grid{grid-template-columns:1fr}.card{min-height:230px}.value{margin-top:24px}}

.admin-body{background:#f1efe5}
.admin-layout{min-height:100vh;display:grid;grid-template-columns:254px minmax(0,1fr)}
.admin-sidebar{background:#1b302b;color:#edece1;padding:39px 27px;display:flex;flex-direction:column;gap:26px}
.admin-brand{font-family:"Playfair Display",Georgia,serif;font-size:29px;line-height:1;letter-spacing:-.04em;color:inherit;text-decoration:none}
.admin-brand span{font-style:italic}.admin-brand b{font-family:"DM Sans",sans-serif;font-size:15px;color:#df7254;margin-left:8px}
.admin-caption,.admin-sidebar small,.admin-top,.admin-kicker,.admin-stat small,.admin-filters,.admin-table-wrap th,.admin-pager,.admin-search label,.admin-login label{font-size:10px;font-weight:700;letter-spacing:.15em}
.admin-caption{color:#9faf9e;border-top:1px solid #52675b;padding-top:25px}
.admin-sidebar nav{display:grid;gap:6px}.admin-sidebar nav a{color:#d5e1d4;text-decoration:none;padding:13px 12px;border-left:2px solid transparent;font-size:13px}
.admin-sidebar nav a:hover,.admin-sidebar nav a:focus{background:#354b40;border-color:#df7254}
.admin-sidebar small{color:#9faf9e;margin-top:auto}.admin-sidebar form{margin-top:auto}
.admin-sidebar .text-button{color:#e4e6d9;border-color:#617267;font-size:11px}
.admin-main{padding:0 clamp(22px,5vw,84px) 90px;min-width:0}
.admin-top{height:86px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:#6f7e74;gap:20px}
.admin-heading{padding:55px 0 30px}.admin-heading h1,.admin-login h1{font-size:clamp(51px,6.5vw,96px);line-height:1.04}
.admin-heading p:not(.admin-kicker),.admin-login p:not(.admin-kicker){color:#67756e;font-size:15px;line-height:1.6;max-width:600px}
.admin-heading>a{color:var(--accent);font-weight:700;font-size:11px;letter-spacing:.1em;text-decoration:none;display:inline-block;margin-bottom:25px}
.admin-kicker{color:var(--accent);margin-bottom:18px}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:34px}
.admin-stat{background:#e3e8db;padding:22px;display:flex;flex-direction:column;gap:14px}
.admin-stat:nth-child(2){background:#d4e3d4}.admin-stat:nth-child(3){background:#f0dfd5}.admin-stat:nth-child(4){background:#e6e4d9}
.admin-stat small{color:#617166}.admin-stat strong{font-family:"Playfair Display",Georgia,serif;font-size:40px;font-weight:500}
.admin-filters{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0 16px}
.admin-filters a{color:#5c6c62;text-decoration:none;border:1px solid var(--line);padding:10px 12px}
.admin-filters a.selected,.admin-filters a:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.admin-table-wrap{overflow-x:auto;border:1px solid var(--line);background:#fbfaf3}
.admin-table-wrap table{border-collapse:collapse;width:100%;min-width:720px;text-align:left}
.admin-table-wrap th{padding:19px 16px;background:#e7e9dc;color:#54655b;white-space:nowrap}
.admin-table-wrap td{padding:17px 16px;border-top:1px solid #e4e1d6;font-size:12px;white-space:nowrap}
.admin-table-wrap tr:hover td{background:#f0f3e9}
.admin-table-wrap td a,.admin-pager a,.admin-data a{color:#af452f;text-decoration:none;font-weight:700}
.admin-table-wrap .state{font-size:10px;letter-spacing:.09em;font-weight:700}
.admin-pager{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:22px 0;color:#69776c}
.admin-data{max-width:1040px}
.data-panel{margin:12px 0;border:1px solid var(--line);background:#fbfaf3}
.data-panel summary{cursor:pointer;padding:20px 22px;font-size:13px;font-weight:700}
.data-panel pre{margin:0;padding:22px;background:#e9ede5;border-top:1px solid var(--line);max-height:520px;overflow:auto;font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.admin-search{display:flex;align-items:end;gap:12px;max-width:660px;margin:4px 0 28px}
.admin-search label{flex:1;color:#66746c}.admin-search input,.admin-login input:not([type=hidden]){width:100%;margin-top:8px;padding:15px;border:1px solid #bfcbbd;background:#fbfaf3;font:inherit;font-size:14px;color:var(--ink)}
.admin-search button{background:var(--ink);color:white;border:0;padding:17px 19px;width:auto;white-space:nowrap;font-size:11px}
.admin-login{max-width:560px;padding:clamp(55px,10vh,125px) 0}
.admin-login form{display:grid;gap:24px;margin-top:38px}.admin-login label{color:#637269}
.admin-login button{background:var(--accent);color:white;border:0;padding:21px;font-size:12px}
@media(max-width:850px){.admin-layout{grid-template-columns:1fr}.admin-sidebar{padding:18px 22px;gap:13px}.admin-brand{font-size:22px}.admin-brand br{display:none}.admin-caption,.admin-sidebar small{display:none}.admin-sidebar nav{display:flex;gap:7px;flex-wrap:wrap}.admin-sidebar nav a{padding:10px}.admin-sidebar form{margin:0}.admin-main{padding:0 22px 70px}.admin-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.admin-top{font-size:9px;height:64px}.admin-top span:last-child{display:none}.admin-heading{padding-top:40px}.admin-stat{padding:17px}.admin-stat strong{font-size:32px}.admin-search{flex-direction:column;align-items:stretch}.admin-search button{width:100%}}
