:root{--cat-bg:#fbf9f5;--cat-ink:#24362f;--cat-action:#226554;--cat-radius:14px;--cat-size:17px}*{box-sizing:border-box}body{margin:0;background:var(--cat-bg);color:var(--cat-ink);font:var(--cat-size)/1.6 system-ui,-apple-system,sans-serif}a{color:inherit}button,input,textarea,select{font:inherit}button,.cat-button{min-height:46px;padding:10px 18px;border:1px solid #b6c2bb;border-radius:9px;background:white;color:var(--cat-ink);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:hover,.cat-button:hover{border-color:var(--cat-action)}button.primary{background:var(--cat-action);color:white;border-color:var(--cat-action)}button:disabled{opacity:.5;cursor:wait}input,select,textarea{width:100%;min-height:46px;padding:10px 12px;border:1px solid #9ead9f;border-radius:8px;background:white;color:#24362f}input[type=checkbox]{width:22px;height:22px;min-height:22px;accent-color:var(--cat-action)}input[type=range]{padding:0}label{display:block;font-weight:600}label small,.help{display:block;font-weight:400;color:#526358;font-size:.85rem;margin:5px 0 10px}h1,h2,h3,p{margin-top:0}h1{font:clamp(2.2rem,6vw,4.3rem)/1.1 Georgia,serif;letter-spacing:-.035em;margin:12px 0 24px}h2{font-size:1.5rem}h3{font-size:1.1rem}.cat-header{padding:18px max(5vw,20px);display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #ddd8cc}.cat-brand{font:1.8rem Georgia,serif;text-decoration:none;letter-spacing:.06em}.cat-shell{max-width:1200px;margin:auto;padding:40px 24px 100px}.cat-intro{max-width:750px;margin-bottom:38px}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;font-weight:700;color:#6a5737}.cat-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start}.cat-card{padding:26px;border:1px solid #dddcd4;border-radius:var(--cat-radius);background:white;margin-bottom:22px;min-width:0}.cat-summary{position:sticky;top:20px;background:#eef2ee}.cat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.cat-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cat-product{border:1px solid #d6dbd3;border-radius:var(--cat-radius);overflow:hidden;display:flex;flex-direction:column}.cat-product img{width:100%;height:165px;object-fit:cover}.cat-product .product-body{padding:18px;flex:1}.cat-product p{font-size:.9rem}.cat-product input{max-width:110px}.cat-stack>*+*{margin-top:18px}.cat-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.cat-row.between{justify-content:space-between}.cat-check{display:flex;gap:12px;align-items:flex-start;font-weight:400}.cat-check input{flex:none;margin-top:4px}.cat-total{font-size:1.7rem;font-weight:750;margin:18px 0}.cat-notice{padding:15px 18px;border-radius:10px;background:#eaf0eb;color:#193e34;margin:18px 0;overflow-wrap:anywhere}.cat-notice.error{background:#fff0e7;color:#852d17}.cat-nav{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.cat-nav a{padding:10px 15px;background:white;border:1px solid #c8d0c9;border-radius:9px;text-decoration:none}.cat-admin{--cat-bg:#f3f5f4;--cat-size:16px}.cat-admin h1{font-family:system-ui,sans-serif;font-size:clamp(2rem,4vw,3rem);font-weight:700}.cat-section{scroll-margin-top:20px}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar .weekday{text-align:center;font-size:.75rem;color:#5a685f}.calendar button{min-height:72px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:8px;font-size:.9rem}.calendar small{font-size:.65rem}.calendar .busy{background:#ffefda;border-color:#c1a278}.calendar .closed{background:#f4e5e3;border-color:#c7a6a2}.calendar [aria-pressed=true]{outline:3px solid #226554}.calendar .pad{visibility:hidden}.cat-order{border-top:1px solid #d9dfd9;padding:20px 0;overflow-wrap:anywhere}.status{display:inline-block;background:#e8eee8;padding:4px 10px;border-radius:20px;font-size:.8rem;font-weight:700}.status.confirmed{background:#cce7d2}.status.expired,.status.cancelled{background:#f3dddd}.cat-detail{margin:18px 0}.cat-detail summary{padding:15px;border:1px solid #d5dcd5;border-radius:9px;cursor:pointer;font-weight:650}.cat-detail[open]>div{padding:20px 0}.cat-rich{min-height:140px;padding:16px;border:1px solid #a7b5a9;border-radius:8px;background:white}.cat-toolbar{display:flex;gap:8px;margin:8px 0}.cat-mail{padding:12px 0;border-bottom:1px solid #d9dfd9;overflow-wrap:anywhere;font-size:.9rem}.cat-inline{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.cat-admin fieldset{margin:20px 0;border:0;padding:0}.cat-admin legend{font-size:1.1rem;font-weight:700;margin-bottom:16px}.cat-save{position:sticky;bottom:10px;padding:14px;background:#fff;border:1px solid #bdcbbf;border-radius:12px;box-shadow:0 4px 22px #183a2720;z-index:3}.cat-admin dialog{max-width:640px;width:calc(100% - 30px);border:0;border-radius:15px;padding:28px;color:#24362f;max-height:90vh}.cat-admin dialog::backdrop{background:#142b24a6}dialog .cat-row{justify-content:flex-end}.cat-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}:focus-visible{outline:3px solid #98651c;outline-offset:3px}[hidden]{display:none!important}@media(max-width:850px){.cat-layout{grid-template-columns:1fr}.cat-summary{position:static}.cat-shell{padding:28px 18px 100px}}@media(max-width:560px){.cat-grid,.cat-products,.cat-inline{grid-template-columns:1fr}.cat-card{padding:20px}.cat-header{padding:15px 18px}.cat-header .cat-button{font-size:.8rem}.calendar{gap:3px}.calendar button{min-height:62px;padding:5px}.calendar small{font-size:.6rem}.cat-row>button{flex:1}.cat-save{bottom:0;margin:0 -10px;border-radius:8px}.cat-product img{height:190px}}@media(prefers-reduced-motion:no-preference){.cat-card{animation:cat-in .35s ease both}@keyframes cat-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}}
#admin-message:not(:empty){position:sticky;top:12px;z-index:5;box-shadow:0 4px 20px #193e341a}
