:root{--ks-page:#FFFDF7;--ks-paper:#FFFDF7;--ks-sunk:#EFE6D6;--ks-ink:#211E19;--ks-muted:#5A5245;--ks-chip:#211E19;--ks-on-chip:#FFFDF7;--ks-track-off:#B6ADA0;--ks-accent-green:#3F6F63;--ks-accent-rust:#96412F;--ks-on-dark-cream:#EFE6D6;--ks-on-dark-sand:#EDE6D9;--ks-on-dark-butter:#FBE7A1;--ks-on-dark-tan:#DBB985;--ks-faint:#8A8073;--ks-ink-soft:#3A342B;--ks-rule-rgb:33,30,25}
:root[data-ks-theme="dark"]{--ks-page:#211E19;--ks-paper:#2C2823;--ks-sunk:#262219;--ks-ink:#F5F0E6;--ks-muted:#A79E90;--ks-chip:#F5F0E6;--ks-on-chip:#211E19;--ks-track-off:#4A443C;--ks-accent-green:#7FB8A6;--ks-accent-rust:#E8A090;--ks-on-dark-cream:#5A5245;--ks-on-dark-sand:#5A5245;--ks-on-dark-butter:#96412F;--ks-on-dark-tan:#96412F;--ks-faint:#A79E90;--ks-ink-soft:#F5F0E6;--ks-rule-rgb:245,240,230}
@media (prefers-color-scheme:dark){:root[data-ks-theme="system"]{--ks-page:#211E19;--ks-paper:#2C2823;--ks-sunk:#262219;--ks-ink:#F5F0E6;--ks-muted:#A79E90;--ks-chip:#F5F0E6;--ks-on-chip:#211E19;--ks-track-off:#4A443C;--ks-accent-green:#7FB8A6;--ks-accent-rust:#E8A090;--ks-on-dark-cream:#5A5245;--ks-on-dark-sand:#5A5245;--ks-on-dark-butter:#96412F;--ks-on-dark-tan:#96412F;--ks-faint:#A79E90;--ks-ink-soft:#F5F0E6;--ks-rule-rgb:245,240,230}}
/* A surface the theme does not repaint keeps the light palette inside it: a
   butter note is still butter at night, and its ink must stay dark to be read.
   runtime.js adds this class; custom properties inherit, so one class on the
   note fixes every line of text inside it. */
.ks-fixed{--ks-page:#FFFDF7;--ks-paper:#FFFDF7;--ks-sunk:#EFE6D6;--ks-ink:#211E19;--ks-muted:#5A5245;--ks-chip:#211E19;--ks-on-chip:#FFFDF7;--ks-track-off:#B6ADA0;--ks-accent-green:#3F6F63;--ks-accent-rust:#96412F;--ks-on-dark-cream:#EFE6D6;--ks-on-dark-sand:#EDE6D9;--ks-on-dark-butter:#FBE7A1;--ks-on-dark-tan:#DBB985;--ks-faint:#8A8073;--ks-ink-soft:#3A342B;--ks-rule-rgb:33,30,25}
html,body{margin:0;padding:0;background:var(--ks-sunk);-webkit-font-smoothing:antialiased}
*,*::before,*::after{box-sizing:border-box}
img{max-width:100%}
#bp-mobile,#bp-pc{display:none}
#bp-mobile>*,#bp-pc>*{margin:0 auto}
@media (max-width:767.98px){#bp-mobile{display:block}}
@media (min-width:768px){#bp-pc{display:block}}
@media (min-width:768px){#bp-pc [data-screen-label]{width:100% !important;max-width:1280px !important}}
/* Each mobile screen is authored as a fixed 390x844 phone canvas that scrolls
   inside itself. On a real handset that canvas is taller than the viewport, so
   the persistent bottom bar pinned to the canvas's bottom edge — below the fold
   — and read as missing, while the page itself gained a second, shallow scroll.
   Let the canvas be the viewport instead. The inner overflow-y:auto is
   untouched, so the bar pins where a phone user expects it. */
@media (max-width:767.98px){
  #bp-mobile [data-screen-label]{width:100% !important;max-width:none !important;height:100vh !important;height:100dvh !important;box-shadow:none !important}
}
a{color:var(--ks-accent-green);text-decoration:none}
a:hover,a:active{color:var(--ks-accent-rust)}
[data-h="press"]:active{box-shadow:inset 0 3px 8px rgba(40,24,8,.45) !important}
[data-h="green"]:hover,[data-h="green"]:active{background:#33594E !important}
.noscroll{scrollbar-width:none;-ms-overflow-style:none}
.noscroll::-webkit-scrollbar{display:none;width:0;height:0}
[data-h="lift"]:hover,[data-h="lift"]:active{transform:translateY(-5px) !important}
[data-h="butter"]:hover,[data-h="butter"]:active{background:#FFF2C0 !important}
[data-h="press"]:active{transform:translateY(1px)}
.fld{width:100%;box-sizing:border-box;min-height:46px;padding:11px 12px;background:var(--ks-market-paper);border:1px solid rgba(var(--ks-rule-rgb),.34);border-radius:12px;font:400 15px/1.35 'Cabin',Verdana,sans-serif;color:var(--ks-market-ink)}
.fld:focus{outline:2px solid #3F6F63;outline-offset:1px}
.lbl{display:block;font:700 11px/1 'Cabin',Verdana,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:var(--ks-market-ink-soft);margin:0 0 6px}
.fld{width:100%;box-sizing:border-box;min-height:46px;padding:11px 13px;background:var(--ks-market-paper);border:1px solid rgba(var(--ks-rule-rgb),.34);border-radius:12px;font:400 15px/1.35 'Cabin',Verdana,sans-serif;color:var(--ks-market-ink)}
.lbl{display:block;font:700 11.5px/1 'Cabin',Verdana,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--ks-market-ink-soft);margin-bottom:7px}
.fld{width:100%;box-sizing:border-box;min-height:50px;padding:0 13px;background:var(--ks-market-paper);border:2px solid rgba(var(--ks-rule-rgb),.24);border-radius:13px;font:400 15px/1.3 'Cabin',Verdana,sans-serif;color:var(--ks-market-ink)}
textarea.fld{padding:12px 13px;min-height:96px;resize:vertical}
.fld:focus{outline:none;border-color:var(--ks-accent-green)}
.hint{margin:6px 0 0;font:400 12.5px/1.45 'Cabin',Verdana,sans-serif;color:var(--ks-market-ink-soft)}
.lbl{display:block;font:700 12px/1 'Cabin',Verdana,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--ks-market-ink-soft);margin-bottom:7px}
.fld{width:100%;box-sizing:border-box;min-height:52px;padding:0 14px;background:var(--ks-market-paper);border:2px solid rgba(var(--ks-rule-rgb),.24);border-radius:13px;font:400 15px/1.3 'Cabin',Verdana,sans-serif;color:var(--ks-market-ink)}
textarea.fld{padding:13px 14px;min-height:104px;resize:vertical}
[data-h="ghost"]:hover,[data-h="ghost"]:active{border-color:var(--ks-on-dark-butter) !important}
a:hover{color:var(--ks-accent-rust)}
[data-h="lift"]:hover,[data-h="lift"]:active{transform:translateY(-4px) !important}
.fld{width:100%;box-sizing:border-box;min-height:44px;padding:10px 12px;background:var(--ks-market-paper);border:1px solid rgba(var(--ks-rule-rgb),.34);border-radius:12px;font:400 15px/1.35 'Cabin',Verdana,sans-serif;color:var(--ks-market-ink)}
mark{background:#FBE7A1;color:var(--ks-market-ink);padding:0 1px;border-radius:2px}
mark:empty{display:none}
.fld{width:100%;box-sizing:border-box;min-height:48px;padding:12px 13px;background:var(--ks-market-paper);border:1px solid rgba(var(--ks-rule-rgb),.34);border-radius:12px;font:400 15px/1.35 'Cabin',Verdana,sans-serif;color:var(--ks-market-ink)}
.fld{width:100%;box-sizing:border-box;min-height:50px;padding:13px 14px;background:var(--ks-market-paper);border:1px solid rgba(var(--ks-rule-rgb),.34);border-radius:12px;font:400 15px/1.35 'Cabin',Verdana,sans-serif;color:var(--ks-market-ink)}
[data-h="row"]:active{background:var(--ks-market-veil) !important}
[data-h="row"]:hover,[data-h="row"]:active{background:var(--ks-market-veil) !important}
body { margin:0; background:var(--ks-market-paper); font-family:'Cabin',system-ui,sans-serif; color:var(--ks-market-ink); }
* { box-sizing:border-box; }
a { color:var(--ks-accent-ink); text-decoration:none; }
a:hover { color:var(--ks-accent-press); }
::-webkit-scrollbar { height:8px; }
::-webkit-scrollbar-thumb { background:#E4DED6; border-radius:8px; }
input, select { font-family:'Cabin',sans-serif; }
input { font-family:'Cabin',sans-serif; }
.ks-reset{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}
.ks-reset__panel{width:100%;max-width:420px;display:flex;flex-direction:column;gap:14px;padding:clamp(22px,4vw,32px);border:1px solid var(--ks-market-line);border-radius:20px;background:var(--ks-market-paper)}
.ks-reset__title{margin:0;font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:clamp(22px,3vw,30px);letter-spacing:-0.02em}
.ks-reset__lede{margin:0;font-family:'Literata',serif;font-size:15px;line-height:1.5;color:var(--ks-market-muted)}
.ks-reset__form{display:flex;flex-direction:column;gap:8px}
.ks-reset__label{font-weight:700;font-size:13px;letter-spacing:0.06em;text-transform:uppercase;color:var(--ks-market-faint)}
.ks-reset__input{border:1px solid var(--ks-market-line-strong);border-radius:13px;padding:12px 14px;font-size:15px;background:var(--ks-market-paper);outline:none}
.ks-reset__input:focus{border-color:var(--ks-accent)}
.ks-reset__submit{margin-top:6px;border:0;cursor:pointer;background:var(--ks-accent);color:#fff;font-family:'Cabin',sans-serif;font-weight:700;font-size:16px;padding:14px 24px;border-radius:999px}
.ks-reset__submit:hover{background:var(--ks-accent-press)}
.ks-reset__status{margin:0;font-family:'Literata',serif;font-size:14px;line-height:1.5;color:var(--ks-market-ink-strong)}
.ks-reset__status[data-tone=error]{color:#8F2F2F}
.ks-reset__back{align-self:flex-start;color:var(--ks-accent-ink);font-weight:700;font-size:14px}
.ks-reset__input:disabled{background:#F6F3EE;border-color:var(--ks-market-line);color:var(--ks-market-faint);cursor:default}
.ks-reset__input:disabled::placeholder{color:var(--ks-market-faint);opacity:1}
.ks-reset__submit:disabled{background:#B9C6CD;cursor:default}
