/* Kobel One – mobile-first. Gold & green, warm forest colours, big rounded tap targets (>=48px). */
:root{--green:#193527;--green2:#2E6B30;--leaf:#5A9A3C;--gold:#C9811F;--gold2:#E0A93B;--cream:#FAF6EC;--ink:#1d2a22;--muted:#5d6b62;--line:#e4dccb;--r:22px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Nunito","Segoe UI Rounded",ui-rounded,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--cream);color:var(--ink);line-height:1.45;overflow-x:hidden;font-size:17px}
img,svg,video{max-width:100%}
a{color:var(--green2)}
h1{font-size:1.7rem;line-height:1.15;margin:.3em 0 .4em;color:var(--green)}
h2{color:var(--green);margin:1.3em 0 .5em;font-size:1.35rem}
main{max-width:980px;margin:0 auto;padding:12px 12px 32px}

/* header */
header.top{background:var(--green);color:var(--cream);border-bottom:4px solid var(--gold)}
header.top .in{max-width:980px;margin:0 auto;display:flex;align-items:center;gap:8px;padding:6px 10px}
header.top .home{display:flex;align-items:center;gap:8px;text-decoration:none;min-height:48px}
header.top img{width:44px;height:44px}
header.top .brand{font-weight:900;font-size:1.15rem;letter-spacing:.05em;color:var(--gold2)}
header.top nav{margin-left:auto;display:flex;gap:4px;align-items:center}
header.top nav a{color:var(--cream);text-decoration:none;font-weight:800;min-height:48px;min-width:48px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;border-radius:14px}
header.top nav a.on{color:var(--gold2)}
header.top nav a.lang{font-size:.85rem;border:2px solid #ffffff40;padding:0 8px;min-width:48px}
.testribbon{background:repeating-linear-gradient(45deg,#ffe08a,#ffe08a 10px,#ffd35c 10px,#ffd35c 20px);color:#5a3b00;text-align:center;font-weight:800;font-size:.8rem;padding:3px 6px}

/* banners & cards */
.banner{padding:12px 14px;border-radius:16px;margin:0 0 14px;font-weight:700}
.banner.test{background:repeating-linear-gradient(45deg,#ffe08a,#ffe08a 12px,#ffd35c 12px,#ffd35c 24px);color:#5a3b00;border:2px dashed #b07a00;text-align:center}
.banner.warn{background:#fdecea;color:#7a1c12;border:1px solid #f0b4ab}
.banner.ok{background:#e6f3e6;color:#1d4d20;border:1px solid #a9d3aa}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:16px;box-shadow:0 2px 10px #0000000a}
.card.gold{border:3px solid var(--gold)}
.muted{color:var(--muted)}
.center{text-align:center}
.grid2{display:grid;gap:16px}
@media(min-width:760px){.grid2{grid-template-columns:1fr 1fr}}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;background:var(--green2);color:#fff;border:0;border-radius:999px;padding:10px 22px;font-weight:800;font-size:1.05rem;text-decoration:none;cursor:pointer;font-family:inherit;box-shadow:0 3px 0 #0000002a;-webkit-tap-highlight-color:transparent}
.btn:active{transform:translateY(2px);box-shadow:none}
.btn.gold{background:var(--gold)}
.btn.ghost{background:#fff;color:var(--green2);border:3px solid var(--green2);box-shadow:none}
.btn.red{background:#a8321f}
.btn.small{min-height:40px;padding:6px 14px;font-size:.9rem}
.btn.block{display:flex;width:100%}
.btn.huge{font-size:1.35rem;min-height:68px;padding:12px 26px}
.btn[disabled],.btn.off{background:#d8d1c0;color:#7a7262;box-shadow:none;cursor:default}
.actions{display:grid;gap:12px;max-width:560px;margin:18px auto 6px}
.actions .hint{text-align:center;color:var(--muted);font-weight:700;margin:-4px 0 0}

/* ---------- calendar (thumb friendly) ---------- */
.cal2{display:grid;gap:10px}
.day{display:grid;grid-template-columns:62px 1fr;gap:8px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:8px}
.dlabel{font-weight:900;color:var(--green);line-height:1.1;text-align:center}
.dlabel small{display:block;font-weight:700;color:var(--muted);font-size:.8rem}
.slots3{display:grid;grid-template-columns:repeat(var(--n,3),1fr);gap:8px}
.sbtn{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:54px;border-radius:16px;font-weight:900;font-size:1.05rem;text-decoration:none;line-height:1.05}
.sbtn small{font-size:.7rem;font-weight:700;margin-top:2px}
.sbtn.free{background:#e3f0e1;color:var(--green2);border:3px solid #9fcf9b}
.sbtn.free:active{background:var(--green2);color:#fff}
.sbtn.booked{background:var(--gold);color:#fff}
.sbtn.full,.sbtn.gap,.sbtn.paused{background:#eee8da;color:#8a8170}
.sbtn.past{background:#f6f3ec;color:#c4bcaa}
.legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin:8px 0;font-size:.85rem}
.legend i{display:inline-block;width:14px;height:14px;border-radius:5px;margin-right:5px;vertical-align:-2px}

/* forms */
form .f{margin:0 0 16px}
form label{display:block;font-weight:800;margin-bottom:6px}
input[type=text],input[type=email],input[type=password]{width:100%;min-height:54px;padding:12px 16px;border:2px solid #cfc6b2;border-radius:16px;font-size:17px;background:#fff;font-family:inherit}
input:focus{outline:3px solid var(--gold2);border-color:var(--gold)}
.chk{display:flex;gap:12px;align-items:flex-start;font-weight:600!important;font-size:.95rem}
.chk input{width:26px;height:26px;flex:0 0 26px;margin-top:2px;accent-color:var(--green2)}
.hp{position:absolute;left:-5000px}
.err{background:#fdecea;color:#7a1c12;border-radius:14px;padding:12px 14px;margin-bottom:12px;font-weight:700}
.kv{display:grid;grid-template-columns:auto 1fr;gap:8px 14px}
.kv b{color:var(--muted);font-weight:700}
.paylogos{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin-top:10px}
.paylogos span{font-size:.8rem;font-weight:800;padding:4px 10px;border-radius:8px;background:#f1ece0;color:#4b4434}

/* wallet-style buttons (test checkout) */
.paybtn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:54px;border-radius:12px;border:0;font-size:1.15rem;font-weight:700;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;cursor:pointer;margin-bottom:10px}
.paybtn.apple{background:#000;color:#fff}
.paybtn.google{background:#fff;color:#3c4043;border:1px solid #dadce0}
.paybtn.paypal{background:#FFC439;color:#003087;font-style:italic;font-weight:900}
.paybtn.paypal b{color:#009cde}
.paybtn.card{background:var(--green2);color:#fff}
.paybtn.cancel{background:transparent;color:#a8321f;border:2px solid #a8321f;font-size:1rem}

/* misc */
video{width:100%;max-height:70vh;border-radius:22px;background:#000;border:4px solid var(--green)}
.social{display:grid;gap:10px}
@media(min-width:600px){.social{grid-template-columns:repeat(3,1fr)}}
.social a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;border-radius:999px;background:var(--green);color:var(--cream);text-decoration:none;font-weight:800}
.steps{display:grid;grid-template-columns:1fr 1fr;gap:10px;counter-reset:s}
@media(min-width:760px){.steps{grid-template-columns:repeat(4,1fr)}}
.steps div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px;text-align:center;font-weight:700;counter-increment:s}
.steps div:before{content:counter(s);display:grid;place-items:center;margin:0 auto 6px;width:34px;height:34px;border-radius:50%;background:var(--gold);color:#fff;font-weight:900}
.pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.85rem;font-weight:800;background:#eee;color:#444}
.pill.paid,.pill.dispatched{background:#fff1d6;color:#8a5600}.pill.fed,.pill.ready{background:#e3f0e1;color:#1d4d20}
.pill.failed,.pill.refund_needed{background:#fdecea;color:#7a1c12}.pill.pending{background:#e8eefc;color:#25408a}
table.adm{width:100%;border-collapse:collapse;font-size:.9rem;background:#fff}
table.adm th,table.adm td{border-bottom:1px solid var(--line);padding:6px 8px;text-align:left;vertical-align:top}
table.adm form{display:inline}
.placeholder{background:#fff3c4;border:1px dashed #b07a00;padding:0 4px;border-radius:4px;font-weight:700}
footer{background:var(--green);color:#cfd8cf;padding:14px 10px 22px;text-align:center;font-size:.95rem}
footer a{color:var(--gold2);display:inline-flex;align-items:center;min-height:48px;padding:0 8px}

/* ---------- acorn cursor + click/tap acorn pop ---------- */
html{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cg transform='translate%283 3%29 rotate%28135%29 translate%28-10 -27.4%29'%3E%3Cpath d='M10 4 L11.5 .6' stroke='%235b3d26' stroke-width='1.6' stroke-linecap='round'/%3E%3Cellipse cx='10' cy='17.5' rx='6.2' ry='8.5' fill='%23C9811F' stroke='%235a3408' stroke-width='1'/%3E%3Cellipse cx='7.8' cy='17' rx='1.5' ry='4' fill='%23f2c46e'/%3E%3Cpath d='M2.6 11 Q10 1.5 17.4 11 Q10 14.5 2.6 11Z' fill='%237a5636' stroke='%233a2414' stroke-width='1'/%3E%3Cpath d='M5 9 l2 2 M8 6.5 l2 2.5 M11 6.5 l2 2.5 M14 8 l1.5 2' stroke='%233a2414' stroke-width='.6'/%3E%3C/g%3E%3C/svg%3E") 3 3,auto}
a,button,label,summary,select,[role=button],.sbtn,.paybtn,input[type=checkbox],input[type=submit],.stage [data-p]{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cg transform='translate%283 3%29 rotate%28112%29 translate%28-10 -27.4%29' opacity='.9'%3E%3Cellipse cx='10' cy='16' rx='9' ry='12' fill='%23fff6d0'/%3E%3C/g%3E%3Cg transform='translate%283 3%29 rotate%28112%29 translate%28-10 -27.4%29'%3E%3Cpath d='M10 4 L11.5 .6' stroke='%235b3d26' stroke-width='1.6' stroke-linecap='round'/%3E%3Cellipse cx='10' cy='17.5' rx='6.2' ry='8.5' fill='%23C9811F' stroke='%235a3408' stroke-width='1'/%3E%3Cellipse cx='7.8' cy='17' rx='1.5' ry='4' fill='%23f2c46e'/%3E%3Cpath d='M2.6 11 Q10 1.5 17.4 11 Q10 14.5 2.6 11Z' fill='%237a5636' stroke='%233a2414' stroke-width='1'/%3E%3Cpath d='M5 9 l2 2 M8 6.5 l2 2.5 M11 6.5 l2 2.5 M14 8 l1.5 2' stroke='%233a2414' stroke-width='.6'/%3E%3C/g%3E%3C/svg%3E") 3 3,pointer}
input[type=text],input[type=email],input[type=password],textarea{cursor:text}
.acpop{position:fixed;z-index:9999;pointer-events:none;width:18px;height:25px;margin:-12px 0 0 -9px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 28'%3E%3Cpath d='M10 4 L11.5 .6' stroke='%235b3d26' stroke-width='1.6' stroke-linecap='round'/%3E%3Cellipse cx='10' cy='17.5' rx='6.2' ry='8.5' fill='%23C9811F' stroke='%235a3408' stroke-width='1'/%3E%3Cellipse cx='7.8' cy='17' rx='1.5' ry='4' fill='%23f2c46e'/%3E%3Cpath d='M2.6 11 Q10 1.5 17.4 11 Q10 14.5 2.6 11Z' fill='%237a5636' stroke='%233a2414' stroke-width='1'/%3E%3Cpath d='M5 9 l2 2 M8 6.5 l2 2.5 M11 6.5 l2 2.5 M14 8 l1.5 2' stroke='%233a2414' stroke-width='.6'/%3E%3C/svg%3E") center/contain no-repeat;animation:acpop .6s ease-out forwards}
.acpop.touch{width:30px;height:42px;margin:-21px 0 0 -15px;animation:actap .7s ease-out forwards}
.acpop.still{animation:acfade .5s linear forwards}
@keyframes acpop{0%{transform:scale(.3);opacity:0}25%{transform:translateY(-10px) scale(1.1) rotate(-12deg);opacity:1}60%{transform:translateY(-2px) scale(.95) rotate(8deg)}100%{transform:translateY(-16px) scale(.7) rotate(0);opacity:0}}
@keyframes actap{0%{transform:scale(.4);opacity:0}30%{transform:scale(1.15);opacity:1}55%{transform:scale(.95) rotate(-8deg)}75%{opacity:1}100%{transform:translateY(-14px) scale(.9);opacity:0}}
@keyframes acfade{0%{opacity:.9}100%{opacity:0}}
.find{text-align:center;color:var(--muted);font-weight:700;font-size:.95rem;max-width:560px;margin:10px auto 0}
