:root{--bg:#f3ebe0;--bg-soft:#ebe0d2;--ink:#3a2f2a;--muted:#7a6a5e;--accent:#c45c4a;--accent-soft:#e8b4a8;--card:rgba(255,252,247,0.92);--line:rgba(58,47,42,0.12);--ok:#2f6b4f;--danger:#a33b2b;--radius:18px;--font:"Segoe UI","Helvetica Neue",system-ui,sans-serif}*{box-sizing:border-box}body,html{margin:0;min-height:100%;font-family:var(--font);color:var(--ink);background:radial-gradient(1200px 600px at 10% -10%,#f8d9c8 0,transparent 55%),radial-gradient(900px 500px at 100% 0,#d9e4f0 0,transparent 50%),var(--bg)}body{padding:16px 16px 32px}button,input,textarea{font:inherit}.app{max-width:480px;margin:0 auto}.hero{margin-bottom:18px}.hero h1{margin:0 0 6px;font-size:1.65rem;letter-spacing:-.02em;font-weight:700}.hero p{margin:0;color:var(--muted);line-height:1.45}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px;margin-bottom:14px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.card h2{margin:0 0 12px;font-size:1.05rem}label{display:block;margin-bottom:12px;font-size:.92rem}label span{display:block;margin-bottom:6px;color:var(--muted)}input,textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:#fffdf9;color:var(--ink)}textarea{min-height:72px;resize:vertical}.row{display:flex;gap:10px;flex-wrap:wrap}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:999px;padding:12px 18px;background:var(--accent);color:#fffaf7;font-weight:600;cursor:pointer}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.muted{color:var(--muted);font-size:.9rem}.error{color:var(--danger)}.error,.ok{margin:0 0 10px}.ok{color:var(--ok)}.photos{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-top:10px}.photos img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px;border:1px solid var(--line)}.preview img{width:100%;border-radius:14px;border:1px solid var(--line);margin-top:10px}.badge{display:inline-block;padding:4px 10px;border-radius:999px;background:var(--bg-soft);color:var(--muted);font-size:.8rem;margin-bottom:10px}