:root{color:#23312d;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#23312d;--muted:#71807a;--paper:#fffdf8;--cream:#f7f5ef;--line:#dce3dc;--green:#1e6b53;--green-dark:#164d3d;--mint:#dceee4;--coral:#e27f62;background:#f7f5ef;font-family:Avenir Next,Avenir,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,a{font:inherit}button{cursor:pointer}a{color:inherit}.booking-page{max-width:800px;margin:auto;padding:32px 24px}.booking-page h1{color:var(--green-dark)}.booking-page select,.booking-page textarea{width:100%;font:inherit;border:1px solid var(--line);border-radius:8px;margin-top:7px;padding:12px;display:block}.booking-page p{overflow-wrap:anywhere;line-height:1.6}.booking-record{background:var(--paper);border:1px solid var(--line);border-radius:14px;margin-top:20px;padding:24px}.booking-actions{gap:16px;display:flex}.booking-page button{padding:10px 16px}.booking-page :focus-visible{outline:3px solid var(--green);outline-offset:3px}.booking-page button:disabled{opacity:.6;cursor:wait}@media (width<=700px){.navbar nav a.booking-nav{display:inline-block}}.signup-page .signin-panel{max-width:500px}.signup-page .signup-help{color:#52645b;margin:-6px 0 0;font-size:.82rem;line-height:1.5}.signup-page .api-error{margin:0}.signup-success{background:var(--mint);color:var(--green-dark);border-radius:10px;padding:18px;line-height:1.6}.signup-success h2{margin:0 0 8px;font-size:1.15rem}.signup-success p{margin:0}.signup-page :focus-visible{outline:3px solid var(--green);outline-offset:3px}@media (width<=550px){.signup-page{padding:20px 16px}.signup-page .signin-panel{padding:26px 22px}.signup-page h1{font-size:2.25rem}}.marketplace{max-width:1180px;margin:auto;padding:36px 5vw}.marketplace-heading{justify-content:space-between;align-items:center;gap:24px;display:flex}.marketplace h1{letter-spacing:-.04em;color:var(--green-dark);margin:0;font:500 clamp(2rem,4vw,3.1rem)/1.12 Georgia,serif}.marketplace-heading .eyebrow{color:var(--green)}.marketplace-heading p:not(.eyebrow),.marketplace-how p{color:#52645b;line-height:1.6}.marketplace-heading a{color:var(--green-dark);flex-shrink:0;font-weight:700}.demo-notice{background:var(--mint);color:var(--green-dark);border-radius:10px;margin:24px 0;padding:14px 18px;line-height:1.5}.marketplace-controls{background:var(--paper);border:1px solid var(--line);border-radius:14px;grid-template-columns:2fr 1fr 1.3fr;gap:16px;padding:20px;display:grid}.marketplace-controls label{min-width:0;font-size:.88rem;font-weight:600}.marketplace-controls input,.marketplace-controls select{width:100%;min-width:0;font:inherit;color:var(--ink);background:#fff;border:1px solid #9bac9f;border-radius:8px;margin-top:8px;padding:12px;display:block}.marketplace-page :focus-visible{outline:3px solid var(--green);outline-offset:4px}.marketplace-results{overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:16px;margin:16px 0;display:flex}.marketplace-secondary,.marketplace-pagination button{background:var(--paper);color:var(--green-dark);border:1px solid #9bac9f;border-radius:8px;padding:10px 14px}.marketplace-secondary{flex-shrink:0}.marketplace .equipment-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.marketplace .equipment-card{flex-direction:column;display:flex}.marketplace .equipment-card>div:last-child{flex-direction:column;flex:1;align-items:flex-start;display:flex}.marketplace .equipment-card button{margin-top:auto}.marketplace .equipment-card .eyebrow{color:var(--green-dark)}.marketplace .equipment-card p:not(.eyebrow){color:#52645b}.marketplace-empty{text-align:center;border:1px dashed #9bac9f;border-radius:14px;padding:48px 20px}.marketplace-pagination{justify-content:center;align-items:center;gap:18px;margin-top:28px;display:flex}.marketplace-pagination button:disabled{opacity:.45;cursor:default}.marketplace-how{border-top:1px solid var(--line);margin-top:36px;padding-top:20px}.marketplace-how h2{font-size:1.2rem}.equipment-dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:18px;width:calc(100% - 32px);max-width:520px;max-height:85vh;padding:0}.equipment-dialog::backdrop{background:#0f23198c}.equipment-dialog-content{padding:30px;line-height:1.6}.equipment-dialog .eyebrow{color:var(--green-dark)}@media (width<=900px){.marketplace-heading{flex-direction:column;align-items:flex-start;gap:8px}.marketplace .equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.marketplace-controls{grid-template-columns:1fr 1fr}.marketplace-search{grid-column:1/-1}}@media (width<=550px){.marketplace{padding:28px 20px}.marketplace-controls,.marketplace .equipment-grid{grid-template-columns:1fr}.marketplace-page .navbar nav a.nav-action{display:inline-block}.marketplace-pagination{gap:12px}}.marketplace-controls>button{align-self:end;min-height:44px}.equipment-card__image span{letter-spacing:normal;font-size:.85rem}.navbar{background:var(--paper);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1180px;margin:0 auto;padding:22px 5vw;display:flex}.brand{color:var(--green-dark);letter-spacing:-.04em;font-size:1.35rem;font-weight:800;text-decoration:none}.navbar nav{align-items:center;gap:28px;display:flex}.navbar nav a{color:var(--muted);font-size:.9rem;text-decoration:none}.navbar nav a:hover{color:var(--green)}.navbar .nav-action,.primary-action,.equipment-card button{background:var(--green);color:#fff;border:0;border-radius:999px;padding:11px 19px;font-weight:700;text-decoration:none}.navbar .nav-action:hover,.primary-action:hover,.equipment-card button:hover{background:var(--green-dark)}.landing-hero{background:var(--mint);max-width:1180px;min-height:430px;margin:0 auto;padding:90px 10vw;position:relative;overflow:hidden}.landing-hero:after{content:"";opacity:.28;background:url(/assets/hero-CLDdwZDr.png) 50%/cover;border-radius:50%;width:380px;height:380px;position:absolute;top:30px;right:-55px}.landing-hero>*{z-index:1;max-width:560px;position:relative}.eyebrow{color:var(--coral);letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px;font-size:.72rem;font-weight:800}.landing-hero h1{color:var(--green-dark);letter-spacing:-.065em;max-width:700px;margin:0 0 24px;font-family:Georgia,serif;font-size:clamp(3rem,7vw,6rem);font-weight:500;line-height:.92}.landing-hero>p:not(.eyebrow){color:#4d665d;margin-bottom:30px;font-size:1.08rem;line-height:1.7}.section,.dashboard{max-width:1180px;margin:0 auto;padding:72px 5vw}.section-heading{justify-content:space-between;align-items:end;margin-bottom:28px;display:flex}.section-heading h2,.dashboard h1{color:var(--green-dark);letter-spacing:-.05em;margin:0;font-family:Georgia,serif;font-size:2.6rem;font-weight:500}.section-heading>a{color:var(--green);font-weight:700;text-decoration:none}.equipment-grid,.stats-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.equipment-card,.booking-card,.stat-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 30px #23312d0d}.equipment-card{overflow:hidden}.equipment-card__image{color:var(--green);letter-spacing:.12em;background:#e8eee6;justify-content:center;align-items:center;height:150px;font-size:1.2rem;font-weight:800;display:flex}.equipment-card>div:last-child{padding:22px}.equipment-card h3,.booking-card h3{color:var(--ink);margin:0 0 9px;font-size:1.2rem}.equipment-card p:not(.eyebrow),.booking-card p:not(.eyebrow){color:var(--muted);margin:0 0 18px;line-height:1.55}.equipment-card button{padding:9px 15px;font-size:.85rem}.dashboard{min-height:70vh}.dashboard-heading{justify-content:space-between;align-items:end;margin-bottom:32px;display:flex}.dashboard h1{margin-bottom:32px}.stats-grid{margin-bottom:26px}.dashboard-note{color:var(--muted);margin:0;font-size:.9rem}.stat-card{flex-direction:column;gap:8px;padding:25px;display:flex}.stat-card strong{color:var(--green);font-family:Georgia,serif;font-size:2.5rem;font-weight:500}.stat-card span,.booking-card__status{color:var(--muted);font-size:.9rem}.booking-card{justify-content:space-between;align-items:center;padding:25px;display:flex}.booking-card__status{background:var(--mint);color:var(--green-dark);border-radius:999px;padding:7px 13px;font-weight:700}.signin-page{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.signin-panel{background:var(--paper);border:1px solid var(--line);border-radius:18px;width:100%;max-width:440px;padding:42px;box-shadow:0 18px 45px #23312d14}.signin-panel h1{color:var(--green-dark);letter-spacing:-.05em;margin:0 0 12px;font-family:Georgia,serif;font-size:2.8rem;font-weight:500}.signin-panel>p:not(.eyebrow){color:var(--muted);margin:0 0 28px;line-height:1.6}.signin-form{gap:16px;display:grid}.signin-form label{color:var(--ink);font-size:.85rem;font-weight:700}.signin-form input{border:1px solid var(--line);border-radius:9px;width:100%;margin-top:7px;padding:12px;display:block}.signin-form button{background:var(--green);color:#fff;border:0;border-radius:999px;margin-top:8px;padding:12px;font-weight:700}.signin-form button:hover{background:var(--green-dark)}.signin-form button:disabled{cursor:wait;opacity:.65}.signin-note{color:var(--muted);margin-top:18px;font-size:.82rem;line-height:1.5}.signin-links{gap:16px;margin-top:18px;display:flex}.signin-links a{color:var(--green);font-size:.9rem;font-weight:700;text-decoration:none}.back-link{color:var(--green);margin-top:22px;font-size:.9rem;font-weight:700;text-decoration:none;display:inline-block}.api-error{color:#8c3f2b;background:#fff0eb;border:1px solid #efb7a4;border-radius:9px;margin:18px 0;padding:12px 14px}.page-status{max-width:720px;margin:48px auto;padding:0 24px}@media (width<=700px){.navbar{align-items:flex-start;gap:18px;padding:18px 20px}.navbar nav{flex-wrap:wrap;justify-content:flex-end;gap:10px 16px}.navbar nav a{display:none}.landing-hero{min-height:530px;padding:65px 24px}.landing-hero:after{width:280px;height:280px;top:auto;bottom:-90px;right:-70px}.section,.dashboard{padding:48px 20px}.dashboard-heading{flex-direction:column;align-items:flex-start;gap:20px}.section-heading{flex-direction:column;align-items:flex-start;gap:12px}.section-heading h2,.dashboard h1{font-size:2.2rem}.equipment-grid,.stats-grid{grid-template-columns:1fr}.booking-card{flex-direction:column;align-items:flex-start;gap:18px}}.category-request-form{gap:14px;max-width:420px;display:grid}.category-request-form input,.category-request-form textarea{border:1px solid var(--line);font:inherit;border-radius:9px;width:100%;padding:12px}.category-request-form button{background:var(--green);color:#fff;border:0;border-radius:999px;padding:12px;font-weight:700}.category-request-form button:hover{background:var(--green-dark)}.category-request-form button:disabled{cursor:wait;opacity:.65}.category-request-list{gap:16px;margin-top:28px;display:grid}.category-request-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;flex-wrap:wrap;justify-content:space-between;gap:16px;padding:20px 24px;display:flex;box-shadow:0 12px 30px #23312d0d}.category-request-card__status{white-space:nowrap;border-radius:999px;padding:7px 13px;font-size:.85rem;font-weight:700}.category-request-card__status--pending{background:var(--mint);color:var(--green-dark)}.category-request-card__status--approved{background:var(--green);color:#fff}.category-request-card__status--rejected{color:#8c3f2b;background:#fff0eb}.category-request-card__actions{gap:10px;margin-top:12px;display:flex}.category-request-card__actions button{background:var(--green);color:#fff;border:0;border-radius:999px;padding:9px 16px;font-size:.85rem;font-weight:700}.category-request-card__actions button:hover{background:var(--green-dark)}.category-request-card__actions button.reject{border:1px solid var(--coral);color:var(--coral);background:0 0}.category-request-card__actions select{border:1px solid var(--line);font:inherit;border-radius:9px;padding:8px 10px}.nav-session-status{color:var(--muted);font-size:.82rem}.profile-page{max-width:1180px;min-height:70vh;margin:0 auto;padding:64px 5vw}.profile-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px;display:flex}.profile-heading h1{color:var(--green-dark);letter-spacing:-.05em;margin:0 0 12px;font-family:Georgia,serif;font-size:clamp(2.4rem,5vw,4rem);font-weight:500}.profile-heading p:not(.eyebrow){color:var(--muted);max-width:680px;margin:0;line-height:1.65}.profile-grid{grid-template-columns:minmax(0,2fr) minmax(250px,1fr);gap:22px;display:grid}.profile-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 12px 30px #23312d0d}.profile-card h2,.profile-card h3{color:var(--green-dark);margin-top:0}.profile-form{gap:16px;display:grid}.profile-form label{color:var(--ink);font-size:.88rem;font-weight:700}.profile-form input{border:1px solid var(--line);font:inherit;border-radius:9px;width:100%;margin-top:7px;padding:12px;display:block}.profile-form input:disabled{color:var(--muted);background:#f0f1ed}.profile-form__section{border-top:1px solid var(--line);margin-top:8px;padding-top:20px}.profile-form__section p,.profile-note{color:var(--muted);line-height:1.55}.profile-form__row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.profile-form button{background:var(--green);color:#fff;border:0;border-radius:999px;justify-self:start;padding:12px 22px;font-weight:700}.profile-form button:disabled{cursor:wait;opacity:.65}.profile-success{background:var(--mint);color:var(--green-dark);border:1px solid #b9d8c6;border-radius:9px;margin:18px 0;padding:12px 14px}.profile-summary dl{gap:0;margin:0;display:grid}.profile-summary dl div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:13px 0;display:flex}.profile-summary dt{color:var(--muted)}.profile-summary dd{color:var(--green-dark);margin:0;font-size:1.25rem;font-weight:800}@media (width<=760px){.profile-heading{flex-direction:column;align-items:flex-start}.profile-grid,.profile-form__row{grid-template-columns:1fr}}.category-request-page{max-width:1180px;margin:0 auto;padding:64px 5vw}.category-request-form label,.owner-form label,.compact-form label,.image-upload{color:var(--ink);font-size:.88rem;font-weight:700}.category-request-form label input,.category-request-form label textarea,.profile-form select,.owner-form input,.owner-form select,.owner-form textarea,.compact-form input,.compact-form select,.compact-form textarea{border:1px solid var(--line);font:inherit;border-radius:9px;width:100%;margin-top:7px;padding:11px;display:block}.page-heading-row{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.owner-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px;display:grid}.full-width{grid-column:1/-1}.owner-listing h2,.booking-record h2{color:var(--green-dark);margin:.3rem 0}.compact-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.compact-form button{align-self:end}.subpanel{background:var(--cream);border:1px solid var(--line);border-radius:12px;margin-top:12px;padding:14px}.inline-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.thumbnail-row,.detail-image-row{flex-wrap:wrap;gap:10px;margin:12px 0;display:flex}.thumbnail-row img{object-fit:cover;border-radius:10px;width:120px;height:90px}.detail-image-row img{object-fit:cover;border-radius:12px;width:min(220px,100%);max-height:220px}.profile-avatar{object-fit:cover;border-radius:50%;width:96px;height:96px}.muted-text{color:var(--muted)}.notification-record--unread{border-left:5px solid var(--green)}.active-filter{background:var(--mint)}.admin-header{background:var(--paper);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:18px 5vw;display:flex}.admin-header nav{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.admin-header nav a{color:var(--green-dark);font-weight:700;text-decoration:none}.marketplace-heading-actions{flex-direction:column;align-items:flex-end;gap:12px;display:flex}.equipment-card__image img{object-fit:cover;width:100%;height:100%}@media (width<=760px){.owner-form,.compact-form{grid-template-columns:1fr}.full-width{grid-column:auto}.admin-header{flex-direction:column;align-items:flex-start;gap:14px}.page-heading-row{flex-direction:column}}
