@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-sans-latin-ext-400-normal-Q_nF8v4l.woff2) format("woff2"),url(/assets/instrument-sans-latin-ext-400-normal-r32jotim.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-sans-latin-400-normal-DRC__1Mx.woff2) format("woff2"),url(/assets/instrument-sans-latin-400-normal-D1W7dsQl.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/instrument-sans-latin-ext-500-normal-CTEe1bJa.woff2) format("woff2"),url(/assets/instrument-sans-latin-ext-500-normal-CAxz3nsc.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/instrument-sans-latin-500-normal-Dk9ku72i.woff2) format("woff2"),url(/assets/instrument-sans-latin-500-normal-Z6ESRlEs.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/instrument-sans-latin-ext-600-normal-BsaQcF38.woff2) format("woff2"),url(/assets/instrument-sans-latin-ext-600-normal-DMks36a2.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/instrument-sans-latin-600-normal-B7fBEWYG.woff2) format("woff2"),url(/assets/instrument-sans-latin-600-normal-B9e8oLYv.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-ext-400-normal-CNbCjDc5.woff2) format("woff2"),url(/assets/instrument-serif-latin-ext-400-normal-ZduzdBhS.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-normal-CwvVGij3.woff2) format("woff2"),url(/assets/instrument-serif-latin-400-normal-BKYSN5O0.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #FAF8F3;--surface: #FFFFFF;--sand: #EFEBE2;--line: #E6E1D6;--line-strong: #D8D2C4;--ink: #1E2A22;--text: #333D36;--muted: #5C665F;--green: #2F7A55;--green-dark: #24603F;--green-soft: #E3EFE6;--amber: #B97A1F;--amber-text: #8A5A12;--coral: #B4553A;--coral-text: #9C442C;--blue: #3F5A7A;--f-sans: "Instrument Sans", system-ui, sans-serif;--f-serif: "Instrument Serif", Georgia, serif;--radius: 12px;--tabbar-h: 68px;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0}body{min-height:100dvh;background:var(--bg);color:var(--ink);font-family:var(--f-sans);font-size:16px;line-height:1.4;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}a{color:inherit}button{font:inherit;color:inherit}.app{max-width:480px;margin:0 auto;min-height:100dvh;padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 20px)}.page{padding:calc(env(safe-area-inset-top) + 18px) 16px 0}.head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.head-title{margin:0;font-family:var(--f-serif);font-weight:400;font-size:32px;line-height:1.05;letter-spacing:-.3px}.head-meta{font-size:13px;color:var(--muted);white-space:nowrap}.head-sub{font-size:14px;color:var(--muted);margin-top:4px}.section-title{font-size:15px;font-weight:600;margin:24px 0 10px}.label{display:block;font-size:13px;font-weight:500;color:var(--muted);margin-bottom:6px}.muted{color:var(--muted)}.small{font-size:13px}.lead{font-size:15px;line-height:1.5;color:var(--text)}.field{margin-bottom:16px}.input,.textarea{width:100%;min-height:48px;font-family:var(--f-sans);font-size:16px;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:10px;padding:10px 14px;outline:none}.textarea{min-height:96px;resize:vertical;line-height:1.45}.input:focus,.textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #2f7a5526}.input::placeholder,.textarea::placeholder{color:#8a8f86}.search{display:flex;align-items:center;gap:10px;min-height:46px;padding:0 14px;background:var(--sand);border-radius:var(--radius)}.search input{flex:1;border:none;outline:none;background:transparent;font:inherit;font-size:16px;color:var(--ink);min-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;font-family:var(--f-sans);font-size:15px;font-weight:600;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);cursor:pointer;text-decoration:none}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.45;cursor:default;transform:none}.btn-primary{background:var(--green);border-color:var(--green);color:#fff}.btn-dark{background:var(--ink);border-color:var(--ink);color:var(--bg)}.btn-block{width:100%}.btn-small{min-height:40px;padding:0 14px;font-size:14px}.btn-quiet{background:none;border:none;padding:10px 2px;min-height:44px;font-family:var(--f-sans);font-size:15px;font-weight:500;color:var(--green-dark);cursor:pointer;text-decoration:none}.btn-danger{color:var(--coral-text)}.icon-btn{width:44px;height:44px;border-radius:50%;border:none;background:#fffffff0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;text-decoration:none;color:var(--ink)}.row{display:flex;gap:10px;align-items:center}.stack{display:flex;flex-direction:column;gap:12px}.spread{display:flex;justify-content:space-between;align-items:center;gap:10px}.chips{display:flex;gap:8px;overflow-x:auto;margin:0 -16px;padding:2px 16px 4px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chips.wrap{flex-wrap:wrap;overflow:visible;margin:0;padding:0}.chip{flex-shrink:0;min-height:36px;padding:0 14px;border-radius:18px;border:1px solid var(--line-strong);background:var(--surface);font-size:14px;font-weight:500;cursor:pointer}.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--bg)}.pill{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:8px;background:var(--sand);font-size:13px;font-weight:500;white-space:nowrap}.pill.green{background:var(--green-soft);color:var(--green-dark);font-weight:600}.pill.amber{background:#f6ead5;color:var(--amber-text);font-weight:600}.pill.coral{background:#f6e1da;color:var(--coral-text);font-weight:600}.pill.blue{background:#e1e7ef;color:var(--blue);font-weight:600}.status{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:500}.status:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}.tone-green{color:var(--green-dark)}.tone-amber{color:var(--amber-text)}.tone-coral{color:var(--coral-text)}.tone-muted{color:var(--muted)}.item-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.item-card{display:block;text-decoration:none;color:var(--ink)}.tile{position:relative;aspect-ratio:4 / 5;border-radius:var(--radius);overflow:hidden;display:flex;align-items:center;justify-content:center;font-family:var(--f-serif);font-size:56px}.tile img{width:100%;height:100%;object-fit:cover;display:block}.tile .badge-tag{position:absolute;left:8px;top:8px;padding:4px 8px;border-radius:8px;background:#fffffff0;font-family:var(--f-sans);font-size:12px;font-weight:600;color:var(--ink)}.tile .badge-tag.free{background:var(--coral);color:#fff}.item-card .name{margin-top:8px;font-size:15px;font-weight:500;line-height:1.25}.item-card .status{margin-top:2px;font-size:13px}.item-card .who{font-size:13px;color:var(--muted);margin-top:1px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.ask-strip{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--green-soft);border-radius:var(--radius);text-decoration:none;color:var(--ink)}.list-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.avatar{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:15px;color:#fff;flex-shrink:0;border:2px solid var(--bg)}.avatar.sm{width:32px;height:32px;font-size:13px}.avatars{display:flex}.avatars .avatar+.avatar{margin-left:-8px}.codebox{font-size:13px;word-break:break-all;background:var(--sand);border-radius:10px;padding:10px 12px;color:var(--text)}.notice{font-size:14px;padding:10px 12px;border-radius:10px;background:#f6e1da;color:var(--coral-text);margin:10px 0}.empty{text-align:center;padding:36px 18px;border:1px dashed var(--line-strong);border-radius:var(--radius);color:var(--muted)}.empty .title{font-family:var(--f-serif);font-size:24px;color:var(--ink)}.hero{position:relative;margin:calc(-1*(env(safe-area-inset-top) + 18px)) -16px 0;aspect-ratio:1 / .85;overflow:hidden}.hero-track{display:flex;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.hero-track::-webkit-scrollbar{display:none}.hero-slide{flex:0 0 100%;height:100%;scroll-snap-align:center;display:flex;align-items:center;justify-content:center;font-family:var(--f-serif);font-size:96px}.hero-slide img{width:100%;height:100%;object-fit:cover;display:block}.hero .back{position:absolute;top:calc(env(safe-area-inset-top) + 14px);left:14px;z-index:2}.hero .dots{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;gap:6px}.hero .dots span{width:7px;height:7px;border-radius:50%;background:#1e2a224d}.hero .dots span.on{background:var(--ink)}.item-title{margin:18px 0 0;font-size:26px;font-weight:600;letter-spacing:-.4px;line-height:1.15}.days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center;font-size:12px}.days .dow{color:var(--muted);padding:2px 0}.day{padding:8px 0;border-radius:8px;background:var(--green-soft);color:var(--ink)}.day.booked{background:var(--sand);color:#8a8478;text-decoration:line-through}.day.requested{background:repeating-linear-gradient(135deg,var(--green-soft) 0 4px,#F6EAD5 4px 8px)}.day.past{background:transparent;color:#b5b0a5}.day.today{box-shadow:inset 0 0 0 2px var(--ink);font-weight:600}.actionbar{position:fixed;left:0;right:0;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));z-index:40;background:var(--surface);border-top:1px solid var(--line)}.actionbar-inner{max-width:480px;margin:0 auto;padding:12px 16px;display:flex;align-items:center;gap:14px}.has-actionbar{padding-bottom:90px}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.tabbar-inner{max-width:480px;margin:0 auto;height:var(--tabbar-h);display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.tab{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;color:var(--muted);font-size:11px;font-weight:500}.tab.active{color:var(--green)}.badge{position:absolute;top:8px;left:50%;margin-left:6px;min-width:17px;height:17px;border-radius:9px;background:var(--coral);color:#fff;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;padding:0 4px}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1e2a2259;z-index:60;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:480px;max-height:92dvh;overflow-y:auto;background:var(--bg);border-radius:18px 18px 0 0;padding:10px 18px calc(24px + env(safe-area-inset-bottom));animation:rise .2s ease-out}.sheet:before{content:"";display:block;width:40px;height:4px;border-radius:2px;background:var(--line-strong);margin:0 auto 16px}@keyframes rise{0%{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}.toast{position:fixed;left:50%;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 18px);transform:translate(-50%);z-index:80;background:var(--ink);color:var(--bg);font-size:14px;font-weight:500;padding:10px 16px;border-radius:10px;max-width:calc(100% - 32px)}.photo-strip{display:flex;gap:10px}.photo-slot{position:relative;width:96px;height:120px;border-radius:10px;border:1px dashed var(--line-strong);background:var(--sand);display:flex;align-items:center;justify-content:center;font-size:28px;color:var(--muted);overflow:hidden;cursor:pointer}.photo-slot img{width:100%;height:100%;object-fit:cover}.photo-slot .x{position:absolute;top:4px;right:4px;width:26px;height:26px;border-radius:50%;border:none;background:#1e2a22cc;color:#fff;font-size:15px;cursor:pointer}.choice{width:100%;text-align:left;cursor:pointer;padding:14px 16px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface)}.choice[aria-pressed=true]{border:2px solid var(--green);padding:13px 15px;background:#f4faf6}.dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
