:root{--cream:#fbf7f0;--paper:#fff;--ink:#24302b;--muted:#66736d;--line:#e4ddd1;--green:#1f6f54;--green-dark:#164f3c;--green-soft:#e6f2ec;--amber:#b7791f;--amber-soft:#fdf3df;--red:#b23b3b;--red-soft:#fbe9e9;--blue-soft:#eaf1fa;--radius:16px;--radius-sm:10px;--shadow:0 18px 40px -24px rgba(36,48,43,.35);--font:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--font);line-height:1.6;margin:0}img{display:block;max-width:100%}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0 0 .5em}h1{font-size:clamp(2rem,4vw,3.1rem)}h2{font-size:clamp(1.45rem,2.4vw,2rem)}h3{font-size:1.15rem}p{margin:0 0 1rem}.container{margin-inline:auto;width:min(1140px,100% - 2.5rem)}.muted{color:var(--muted)}.small{font-size:.875rem}.center{text-align:center}.skip-link a{background:var(--green);color:#fff;left:-999px;padding:.6rem 1rem;position:absolute;top:0;z-index:99}.skip-link a:focus{left:1rem;top:1rem}.site-header{backdrop-filter:blur(10px);background:rgba(251,247,240,.92);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}.header-inner{align-items:center;display:flex;gap:1rem;justify-content:space-between;min-height:72px}.brand{align-items:center;color:var(--ink);display:inline-flex;font-size:1.2rem;font-weight:800;gap:.5rem}.brand:hover{text-decoration:none}.brand-mark{font-size:1.4rem}.site-nav{align-items:center;display:flex;font-size:.93rem;font-weight:600;gap:1.1rem}.site-nav a{color:var(--ink)}.site-nav a:hover{text-decoration:none}.site-nav .nav-account,.site-nav a:hover{color:var(--green)}.nav-burger,.nav-toggle{display:none}.btn{align-items:center;border:1px solid transparent;border-radius:999px;cursor:pointer;display:inline-flex;font:inherit;font-weight:700;gap:.45rem;justify-content:center;padding:.7rem 1.35rem;transition:transform .12s ease,background .12s ease,box-shadow .12s ease}.btn,.btn:hover{text-decoration:none}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--green);box-shadow:0 10px 24px -12px rgba(31,111,84,.8);color:#fff}.btn-primary:hover{background:var(--green-dark)}.btn-secondary{background:var(--green-soft);color:var(--green-dark)}.btn-ghost{background:transparent;border-color:var(--line);color:var(--ink)}.btn-danger{background:var(--red-soft);border-color:#efcaca;color:var(--red)}.btn-sm{font-size:.85rem;padding:.45rem 1rem}.btn-block{width:100%}.btn[disabled]{cursor:not-allowed;opacity:.5}main{min-height:60vh}.section{padding:4rem 0}.section-sm{padding:2.25rem 0}.section-head{align-items:end;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.75rem}.section-head p{color:var(--muted);margin:0}.page-head{padding:3rem 0 1rem}.page-head h1{margin-bottom:.35rem}.page-head p{color:var(--muted);max-width:60ch}.breadcrumbs{align-items:center;display:flex;flex-wrap:wrap;font-size:.85rem;gap:.4rem;padding-top:1.25rem}.breadcrumbs,.breadcrumbs a{color:var(--muted)}.breadcrumbs a:hover{color:var(--green)}.breadcrumbs [aria-hidden=true]{color:var(--line)}.breadcrumbs [aria-current=page]{color:var(--ink);font-weight:600}.flash-container{margin-top:1.25rem}.alert{border:1px solid;border-radius:var(--radius-sm);font-weight:600;margin-bottom:.65rem;padding:.85rem 1.1rem}.alert-success{background:var(--green-soft);border-color:#bfe0d1;color:var(--green-dark)}.alert-danger,.alert-error{background:var(--red-soft);border-color:#efcaca;color:var(--red)}.alert-warning{background:var(--amber-soft);border-color:#f0d6a4;color:#7a5312}.alert-info{background:var(--blue-soft);border-color:#c9dcf3;color:#2d5686}.hero{padding:4.5rem 0 3.5rem}.hero-grid{align-items:center;display:grid;gap:3rem;grid-template-columns:1.15fr .85fr}.hero h1{margin-bottom:1rem}.hero .lead{color:var(--muted);font-size:1.15rem;max-width:52ch}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.hero-art{background:linear-gradient(150deg,#f0e7d8,#e7f1ea 65%);border-radius:32px;box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:flex-end;min-height:320px;padding:2rem}.hero-art .emoji{font-size:4rem;margin-bottom:auto}.hero-art blockquote{font-size:1.1rem;font-weight:600;margin:0}.hero-art cite{color:var(--muted);font-size:.9rem;font-style:normal}.search-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);display:grid;gap:.75rem;grid-template-columns:1fr 1.2fr auto;margin-top:2rem;padding:1rem}.search-card .field{margin:0}.search-card input,.search-card select{margin-bottom:0}.stats{display:flex;flex-wrap:wrap;gap:2.25rem;margin-top:2rem}.stats strong{display:block;font-size:1.8rem;line-height:1}.stats span{color:var(--muted);font-size:.9rem}.listing-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}.listing-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease}.listing-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.listing-card .cover{object-fit:cover;width:100%}.cover-placeholder,.listing-card .cover{aspect-ratio:4/3;background:linear-gradient(135deg,#efe8db,#dfece5)}.cover-placeholder{align-items:center;display:flex;font-size:3rem;justify-content:center}.listing-card .body{display:flex;flex:1;flex-direction:column;gap:.35rem;padding:1rem 1.15rem 1.25rem}.listing-card .title-row{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.listing-card .title-row h3{font-size:1.1rem;margin:0}.listing-card .meta{color:var(--muted);font-size:.88rem}.listing-card .card-foot{align-items:center;display:flex;font-size:.9rem;justify-content:space-between;margin-top:auto;padding-top:.6rem}.badge{align-items:center;background:var(--green-soft);border-radius:999px;color:var(--green-dark);display:inline-flex;font-size:.75rem;font-weight:700;gap:.3rem;padding:.18rem .65rem}.badge-draft{background:#eee9e1;color:#6b6257}.badge-reserved{background:var(--amber-soft);color:#7a5312}.badge-closed,.badge-suspended{background:var(--red-soft);color:var(--red)}.badge-pending{background:var(--amber-soft);color:#7a5312}.badge-approved{background:var(--green-soft);color:var(--green-dark)}.badge-cancelled,.badge-rejected{background:var(--red-soft);color:var(--red)}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 30px -28px rgba(36,48,43,.5);padding:1.75rem}.panel+.panel{margin-top:1.25rem}.panel h2{font-size:1.3rem}.panel-narrow{margin-inline:auto;max-width:560px}.grid-2{display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.grid-3{display:grid;gap:1.25rem;grid-template-columns:repeat(3,1fr)}.split{align-items:start;display:grid;gap:1.75rem;grid-template-columns:1.6fr .9fr}.field{margin-bottom:1.05rem}.field>label,label{display:block;font-size:.9rem;font-weight:700;margin-bottom:.35rem}input[type=date],input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],select,textarea{background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);font:inherit;margin-bottom:.1rem;padding:.72rem .9rem;width:100%}input:focus,select:focus,textarea:focus{border-color:var(--green);outline:2px solid rgba(31,111,84,.28)}input[type=checkbox],input[type=radio]{accent-color:var(--green);height:1.05rem;margin-right:.45rem;width:1.05rem}.choice-list{display:grid;gap:.45rem}.choice-list label{align-items:center;display:flex;font-weight:500}.form-error,.invalid-feedback{color:var(--red);font-size:.85rem;font-weight:600}.form-help{color:var(--muted);font-size:.82rem}fieldset{border:1px solid var(--line);border-radius:var(--radius-sm);margin:0 0 1.25rem;padding:1rem 1.1rem}legend{font-weight:700;padding:0 .4rem}.form-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.inline-form{display:inline}.checkbox-row{align-items:flex-start;display:flex;gap:.35rem}.checkbox-row label{font-weight:500}.gallery{display:grid;gap:.6rem;grid-template-columns:1fr}.gallery-main{aspect-ratio:4/3;background:#eee7db;border-radius:var(--radius);object-fit:cover;overflow:hidden;width:100%}.gallery-thumbs{display:grid;gap:.5rem;grid-template-columns:repeat(5,1fr)}.gallery-thumbs img{aspect-ratio:1;border-radius:8px;object-fit:cover}.detail-meta{color:var(--muted);display:flex;flex-wrap:wrap;font-size:.92rem;gap:.5rem 1rem;margin:.5rem 0 1.25rem}.description{white-space:normal}.notice{border:1px solid;border-radius:var(--radius-sm);margin:1rem 0;padding:1rem 1.1rem}.notice-warning{background:var(--amber-soft);border-color:#f0d6a4}.notice-info{background:var(--blue-soft);border-color:#c9dcf3}.notice-success{background:var(--green-soft);border-color:#bfe0d1}.notice h3{margin-bottom:.3rem}.notice p:last-child{margin-bottom:0}.seller-card{align-items:center;display:flex;gap:.85rem}.avatar{background:var(--green-soft);border-radius:50%;color:var(--green-dark);display:grid;font-weight:800;height:46px;place-items:center;width:46px}.avatar-lg{font-size:1.3rem;height:64px;width:64px}.table-wrap{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto}table{border-collapse:collapse;font-size:.92rem;width:100%}td,th{border-bottom:1px solid var(--line);padding:.8rem 1rem;text-align:left;vertical-align:middle}th{background:#faf7f1;color:var(--muted);font-size:.78rem;letter-spacing:.05em;text-transform:uppercase}tr:last-child td{border-bottom:0}.table-actions{display:flex;flex-wrap:wrap;gap:.4rem}.conversation-list{display:grid;gap:.7rem}.conversation-item{align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);display:flex;gap:.9rem;padding:.9rem 1.1rem}.conversation-item:hover{border-color:var(--green);text-decoration:none}.conversation-item .preview{color:var(--muted);font-size:.87rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat{display:flex;flex-direction:column;gap:.75rem;max-height:560px;overflow-y:auto;padding:.25rem}.bubble{background:#f2eee6;border-radius:14px;max-width:78%;padding:.7rem .95rem}.bubble.mine{align-self:flex-end;background:var(--green-soft)}.bubble .time{color:var(--muted);display:block;font-size:.72rem;margin-top:.3rem}.question-block{background:#fcfaf6;border:1px solid var(--line);border-radius:var(--radius-sm);margin-bottom:1rem;padding:1rem}.question-block label{font-size:.95rem}.site-footer{background:#1d2a24;color:#e7ede9;margin-top:4rem;padding:3rem 0 1.5rem}.site-footer a{color:#c9d8d0;display:block;font-size:.92rem;margin-bottom:.4rem}.site-footer a:hover{color:#fff}.site-footer h3{color:#fff;font-size:.95rem;letter-spacing:.06em;margin-bottom:.8rem;text-transform:uppercase}.footer-grid{display:grid;gap:2rem;grid-template-columns:2fr 1fr 1fr 1fr}.footer-brand{color:#fff}.footer-bottom{border-top:1px solid hsla(0,0%,100%,.12);color:#a9b8b0;font-size:.82rem;margin-top:2.5rem;padding-top:1.25rem}.pagination{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;margin-top:2rem}.pagination a,.pagination span{background:var(--paper);border:1px solid var(--line);border-radius:8px;color:var(--ink);font-weight:600;padding:.45rem .85rem}.pagination .current{background:var(--green);border-color:var(--green);color:#fff}.prose{max-width:72ch}.prose h2{margin-top:2rem}.prose ul{padding-left:1.2rem}.prose li{margin-bottom:.4rem}.empty-state{background:var(--paper);border:1px dashed var(--line);border-radius:var(--radius);padding:3rem 1rem;text-align:center}.empty-state .emoji{font-size:2.5rem}@media (max-width:900px){.grid-2,.grid-3,.hero-grid,.split{grid-template-columns:1fr}.listing-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.search-card{grid-template-columns:1fr}.nav-toggle{display:none}.nav-burger{cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:.5rem}.nav-burger span{background:var(--ink);border-radius:2px;height:2px;width:24px}.site-nav{align-items:flex-start;background:var(--paper);border-bottom:1px solid var(--line);display:none;flex-direction:column;gap:.8rem;left:0;padding:1rem 1.25rem;position:absolute;right:0;top:72px}.nav-toggle:checked~.site-nav{display:flex}.hero{padding-top:2.5rem}}@media (max-width:600px){.footer-grid,.listing-grid{grid-template-columns:1fr}.section{padding:2.75rem 0}.panel{padding:1.25rem}.gallery-thumbs{grid-template-columns:repeat(4,1fr)}}