:root{--ink:#2a2a2a;--muted:#6b6b6b;--paper:#f7f6f4;--paper-deep:#ebe8e3;--card:#fff;--brand:#3a3a3a;--brand-deep:#1f1f1f;--brand-soft:#eceae6;--accent:#8a7a5c;--accent-soft:#f0ebe2;--danger:#9b2c2c;--danger-soft:#f8e8e8;--ok:#2f5d4a;--ok-soft:#e6f0eb;--line:#ddd8d0;--shadow:0 10px 28px #28241e14;--radius:16px;--font:"DM Sans", system-ui, sans-serif;--display:"Cormorant Garamond", "Fraunces", Georgia, serif;--tap:44px;--safe-bottom:env(safe-area-inset-bottom,0px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#app{min-height:100%}body{font-family:var(--font);color:var(--ink);background:linear-gradient(180deg, #fff 0%, var(--paper) 42%, var(--paper-deep) 100%);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-attachment:fixed;margin:0}::selection{background:var(--accent-soft);color:var(--brand-deep)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a{color:var(--brand-deep);text-underline-offset:.18em;text-decoration-thickness:1px}button,input,select,textarea{font:inherit}.app-shell{width:min(720px,100%);padding:.75rem 1rem calc(5.5rem + var(--safe-bottom));margin:0 auto}.brand-bar{min-height:var(--tap);justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.brand-link{cursor:pointer;background:0 0;border:0;align-items:center;padding:0;display:inline-flex}.brand-logo{aspect-ratio:1;object-fit:contain;width:min(72px,18vw);height:auto;display:block}.brand-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem 1.15rem 1.35rem;animation:.35s cubic-bezier(.22,1,.36,1) both rise-in}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.auth-hero{text-align:center;margin:.5rem 0 1.25rem}.auth-hero .brand-logo{width:min(160px,42vw);margin:0 auto .75rem}h1,h2{font-family:var(--display);letter-spacing:-.02em;color:var(--brand-deep);overflow-wrap:anywhere;margin:0 0 .45rem;font-weight:600}h1{font-size:clamp(1.65rem,4.5vw,2.1rem);line-height:1.15}h2,.section-title{color:var(--brand);margin:0 0 .75rem;font-size:1.25rem}.lead{color:var(--muted);max-width:42rem;margin:0 0 1.15rem;line-height:1.5}.field{gap:.35rem;margin-bottom:.9rem;display:grid}.field label{color:var(--brand);font-size:.92rem;font-weight:600}.field input,.field select,.field textarea{width:100%;min-height:var(--tap);border:1px solid var(--line);color:var(--ink);background:#fcfbfa;border-radius:12px;padding:.8rem .95rem;transition:border-color .15s,box-shadow .15s}.field input::placeholder,.field textarea::placeholder{color:#8f8a84}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #8a7a5c2e}.field textarea{resize:vertical;min-height:110px}.grid-2{gap:.75rem;display:grid}@media (width>=640px){.app-shell{padding-top:1.25rem}.grid-2{grid-template-columns:1fr 1fr}.panel{padding:1.5rem}}.btn{min-height:var(--tap);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.75rem 1.2rem;font-weight:700;transition:transform .15s,background .15s,opacity .15s;display:inline-flex}.btn:active{transform:scale(.98)}.btn-compact{min-height:40px;padding:.55rem .95rem;font-size:.92rem}.btn-primary{background:var(--brand-deep);color:#fff}.btn-primary:hover{background:#000}.btn-secondary{background:var(--brand-soft);color:var(--brand-deep)}.btn-ghost{color:var(--muted);border:1px solid var(--line);background:0 0}.btn-danger{background:var(--danger-soft);color:var(--danger)}.btn-block{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed}.actions{flex-wrap:wrap;gap:.65rem;margin-top:1.25rem;display:flex}.wizard-sticky{bottom:calc(.5rem + var(--safe-bottom));z-index:20;border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow);background:#ffffffeb;border-radius:999px;grid-template-columns:auto 1fr auto;gap:.45rem;margin-top:1rem;padding:.65rem;display:grid;position:sticky}.wizard-sticky .btn{min-height:44px}@media (width<=420px){.wizard-sticky{border-radius:18px;grid-template-columns:1fr 1fr}.wizard-sticky .btn-save{order:-1;grid-column:1/-1}}.alert{overflow-wrap:anywhere;border-radius:12px;margin-bottom:1rem;padding:.85rem 1rem;font-size:.95rem}.alert-error{background:var(--danger-soft);color:var(--danger)}.alert-ok{background:var(--ok-soft);color:var(--ok)}.progress{scrollbar-width:thin;gap:.3rem;margin-bottom:1rem;padding-bottom:.2rem;display:flex;overflow-x:auto}.progress span{background:var(--line);border-radius:999px;flex:none;width:22px;height:5px}.progress span.done{background:var(--brand)}.progress span.current{background:var(--accent);width:36px}.list-card{border:1px solid var(--line);background:#fcfbfa;border-radius:14px;margin-bottom:.75rem;padding:1rem}.list-card h3{font-family:var(--display);overflow-wrap:anywhere;margin:0 0 .25rem;font-size:1.15rem;font-weight:600}.meta{color:var(--muted);overflow-wrap:anywhere;font-size:.9rem}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}@media (width>=640px){.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.photo-item{border:1px solid var(--line);aspect-ratio:1;background:var(--brand-soft);border-radius:14px;position:relative;overflow:hidden}.photo-item img{object-fit:cover;width:100%;height:100%;display:block}.photo-item button{min-width:36px;min-height:36px;padding:.35rem .55rem;position:absolute;top:.4rem;right:.4rem}.photo-actions{grid-template-columns:1fr 1fr 1fr;gap:.5rem;margin:.75rem 0 1rem;display:grid}.photo-actions label.btn{margin:0;padding-inline:.5rem;font-size:.88rem}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.amenity-box{border:1px solid var(--line);background:#fcfbfa;border-radius:14px;padding:.85rem}.amenity-head{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.65rem;display:flex}.amenity-list{scrollbar-width:thin;gap:.25rem;max-height:min(48vh,380px);padding-right:.25rem;display:grid;overflow:auto}.amenity-item{cursor:pointer;border-radius:8px;align-items:flex-start;gap:.55rem;min-height:40px;padding:.5rem .4rem;font-size:.95rem;line-height:1.35;display:flex}.amenity-item:hover{background:var(--accent-soft)}.amenity-item input{flex:none;width:1.1rem;height:1.1rem;margin-top:.2rem}@media (prefers-reduced-motion:reduce){.panel,.btn,.field input,.field select,.field textarea{transition:none!important;animation:none!important}}
