@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-latin-wght-normal.0gsaq8ukbf34m.woff2)format("woff2-variations")}:root{--ink:var(--tool-library-text);--forest:var(--tool-library-action);--cream:var(--tool-library-page);--paper:var(--tool-library-surface);--yellow:var(--tool-library-emphasis);--line:var(--tool-library-border)}*{box-sizing:border-box}html{background:var(--paper);min-height:100%}body{min-height:100%;color:var(--ink);background:var(--paper);font-family:var(--tool-library-font-sans);margin:0;overflow-x:hidden}a{color:inherit}.member-page,.auth-page{min-height:100dvh;padding:env(safe-area-inset-top) max(20px, env(safe-area-inset-right)) calc(116px + env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left))}.member-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:680px;min-height:70px;margin:auto;display:flex}.brand{align-items:center;gap:10px;font-weight:800;text-decoration:none;display:flex}.brand-logo{width:3.25rem;height:3.25rem}.locale{color:var(--forest);border:1px solid var(--line);background:0 0;border-radius:999px;padding:8px 10px}.member-content,.auth-card{max-width:680px;margin:40px auto}.member-content h1,.auth-card h1{letter-spacing:-.045em;margin:0 0 12px;font-size:clamp(32px,10vw,48px);line-height:1}.member-content p,.auth-card p{color:var(--tool-library-text-subtle);line-height:1.5}.bottom-nav{bottom:12px;left:50%;bottom:max(12px, env(safe-area-inset-bottom));background:var(--paper);border:1px solid var(--line);width:min(100% - 24px,680px);box-shadow:var(--tool-library-shadow-md);z-index:20;border-radius:16px;grid-template-columns:repeat(4,1fr);gap:4px;padding:8px;display:grid;position:fixed;transform:translate(-50%)}.bottom-nav a{text-align:center;border-radius:10px;padding:12px 4px;font-size:13px;text-decoration:none}.bottom-nav a[aria-current=page]{background:var(--cream);color:var(--forest);font-weight:800}.offline{background:var(--tool-library-color-warning-surface);border:1px solid var(--tool-library-color-warning-border);border-radius:10px;max-width:680px;margin:14px auto;padding:10px;font-size:14px}.auth-page{background:var(--cream)}.auth-card{background:var(--paper);border-radius:20px;max-width:480px;padding:28px}.auth-card form,.member-content{gap:18px;display:grid}.auth-card label,.member-content label{gap:7px;font-weight:700;display:grid}.auth-card input,.member-content input:not([type=checkbox]):not([type=radio]):not([type=file]),.member-content select{border:1px solid var(--line);background:var(--tool-library-surface-raised);min-height:46px;font:inherit;border-radius:9px;padding:10px}.auth-card .check{align-items:center;font-weight:400;display:flex}.auth-card .check input{min-height:auto}button,.button{background:var(--forest);min-height:46px;color:var(--tool-library-action-text);font:inherit;text-align:center;cursor:pointer;border:0;border-radius:10px;padding:12px 16px;font-weight:800;text-decoration:none}button:disabled{opacity:.6}.form-error{font-weight:700;color:var(--tool-library-color-danger)!important}.state-card{border:1px solid var(--line);background:var(--cream);border-radius:16px;padding:20px}.state-card>:first-child{margin-top:0}.state-card>:last-child{margin-bottom:0}.rental-flow,.evidence-flow{gap:16px;display:grid}.rental-summary dl{margin:0;padding:0}.rental-summary dt:not(:first-child){margin-top:12px}.access-card{gap:12px;display:grid}.qr-fallback{border:2px dashed var(--forest);letter-spacing:.15em;text-align:center;padding:18px;font-weight:800;color:var(--forest)!important}.check{align-items:center;gap:10px;margin:10px 0;font-weight:400!important;display:flex!important}.check input{min-height:auto!important}fieldset{border:1px solid var(--line);border-radius:12px;padding:12px}textarea{border:1px solid var(--line);font:inherit;resize:vertical;border-radius:9px;width:100%;min-height:96px;padding:10px}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:var(--tool-library-focus-width) solid var(--tool-library-focus);outline-offset:var(--tool-library-focus-offset)}.catalog-intro,.catalog-section,.item-detail{gap:14px;display:grid}.catalog-intro h1,.item-detail h1{margin-bottom:0}.catalog-section{margin-top:24px}.section-heading{justify-content:space-between;align-items:baseline;display:flex}.section-heading h2,.item-detail h2{margin:0;font-size:20px}.section-heading a,.back-link{color:var(--forest);font-size:14px;font-weight:800}.catalog-search{gap:7px;font-weight:700;display:grid}.catalog-search>div{grid-template-columns:1fr auto;gap:8px;display:grid}.catalog-search input{border:1px solid var(--line);min-width:0;min-height:46px;font:inherit;border-radius:9px;padding:10px}.catalog-search button{min-height:46px}.category-row,.filter-row{flex-wrap:wrap;gap:8px;padding-bottom:3px;display:flex}.category-chip,.filter{background:var(--cream);border:1px solid var(--line);color:var(--forest);border-radius:999px;flex:none;min-height:44px;padding:9px 14px;font-size:14px;text-decoration:none}.filter.active{background:var(--forest);color:var(--tool-library-action-text)}.item-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.item-card{background:var(--tool-library-surface-raised);border:1px solid var(--line);border-radius:15px;text-decoration:none;transition:border-color .14s,transform .14s;display:grid;overflow:hidden}.item-card:hover{border-color:var(--forest);transform:translateY(-2px)}.item-card>div:last-child{padding:12px}.item-card h3{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;margin:0;font-size:16px;line-height:1.2}.item-card p,.item-card h3+p{margin:8px 0 0;font-size:14px}.item-image,.item-hero{background:var(--cream);color:var(--forest);justify-content:center;align-items:center;min-height:128px;font-size:30px;font-weight:800;display:flex;overflow:hidden}.item-image{aspect-ratio:1;min-height:0}.item-image img,.item-hero img{object-fit:cover;width:100%;height:100%}.catalog-reservation-card{align-items:start;gap:16px;display:grid}.catalog-reservation-card .button{justify-self:start}.item-image>span,.item-hero>span{aspect-ratio:1;background:var(--paper);border:1px solid var(--line);letter-spacing:-.04em;text-align:center;border-radius:999px;justify-content:center;align-items:center;width:84px;max-width:84px;padding:16px;display:flex}.category-list{gap:10px;display:grid}.category-list-item{background:var(--cream);border-radius:14px;justify-content:space-between;align-items:center;padding:16px;text-decoration:none;display:flex}.category-list-item span{gap:5px;display:grid}.category-list-item>span:last-child{text-align:right;white-space:nowrap;flex:none;margin-left:14px}.category-list-item small{color:var(--tool-library-text-subtle)}.item-detail{gap:18px}.item-hero{border-radius:18px;min-height:260px}.item-hero>span{width:118px;max-width:118px;font-size:42px}.item-detail .price{color:var(--forest);margin:-8px 0 0;font-size:21px;font-weight:800}.item-details{border-top:1px solid var(--line);padding-top:18px}.item-details ul{margin-bottom:0;padding-left:20px;line-height:1.6}dl{background:var(--cream);border-radius:12px;padding:18px}dt{font-weight:800}dd{margin:5px 0 0}.reservation-list,.reservation-detail,.reservation-flow{gap:18px;display:grid}.reservation-list>h1,.reservation-detail>h1,.reservation-flow>h1{margin-bottom:0}.reservation-cards{gap:12px;display:grid}.reservation-card{background:var(--cream);border:1px solid var(--line);border-radius:16px;gap:9px;padding:18px;text-decoration:none;transition:border-color .14s,transform .14s;display:grid}.reservation-card:hover{border-color:var(--forest);transform:translateY(-2px)}.reservation-card strong{font-size:20px;line-height:1.2}.reservation-card span,.reservation-card small{color:var(--tool-library-text-subtle);line-height:1.45}.reservation-card small{font-weight:700}.reservation-form,.reservation-detail .state-card,.action-row{gap:14px;display:grid}.reservation-detail .state-card>h2,.reservation-detail .state-card>p{margin:0}.reservation-form label,.reservation-detail label{gap:7px;font-weight:700;display:grid}.reservation-note{background:var(--cream);border-radius:12px;margin:0;padding:12px 14px}.reservation-detail ol{gap:12px;margin:0;padding-left:22px;display:grid}.reservation-detail li{line-height:1.45}.secondary{border:1px solid var(--forest);color:var(--forest);background:0 0}@media (max-width:360px){.member-page,.auth-page{padding-left:14px;padding-right:14px}.bottom-nav a{font-size:11px}.catalog-search>div{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
