:root{--bg: #f2f5f8;--surface: #ffffff;--text: #14253d;--muted: #64748b;--primary: #12355b;--accent: #c8a962;--success: #15803d;--border: #d6dee8}*{box-sizing:border-box}body{margin:0;font-family:Assistant,Rubik,sans-serif;background:radial-gradient(circle at top,#f8fbff 0%,var(--bg) 45%,#eaf0f6 100%);color:var(--text)}.app-shell{max-width:560px;margin:0 auto;min-height:100vh;padding:16px 12px 90px}.top-header{background:linear-gradient(130deg,var(--primary),#1f4977);color:#fff;border-radius:16px;padding:16px;box-shadow:0 10px 24px #0c223840}.top-header h1{margin:4px 0 0;font-size:1.25rem}.header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.account-switcher{display:grid;gap:4px;width:130px}.account-switcher label{color:#dbe8f7;font-size:.78rem;font-weight:700}.account-switcher select{background:#fffffff2;border:1px solid rgba(255,255,255,.35);color:#10253d;padding:8px}.screen-content{margin-top:14px}.stack{display:grid;gap:10px}.wizard-progress{background:#eef2f7;color:#30435d;border:1px solid #d8e0ea;border-radius:10px;padding:8px 10px;font-weight:700;margin-bottom:12px}.wizard-options-grid{display:grid;gap:10px}.two-col-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.wizard-option{background:#eceff3;color:#2f3f56;border:1px solid #d7dee7;text-align:center;padding:13px 12px;border-radius:10px;font-weight:700}.wizard-nav-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.request-progress{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid #d9e3ee;border-radius:12px;background:#f7fafc}.step{font-size:.82rem;color:#6b7280;font-weight:700}.step.done,.step.active{color:#163253}.form-block{display:grid;gap:12px;padding:14px;border-radius:14px;border:1px solid #d9e3ee}.two-col-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.event-details-block{background:#f1f6fc}.supplier-fit-block{background:#f2fbf4}.section-divider{height:1px;background:#dde6f0;margin:8px 0}.field-title{margin-bottom:8px;font-weight:700}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px;box-shadow:0 6px 18px #0f172a0f}h2,h3,p{margin:0}h2,h3{margin-bottom:6px}p{margin-bottom:6px;line-height:1.35}label{display:grid;gap:6px;font-weight:600;font-size:.95rem;min-width:0}input,textarea,select,button{border-radius:10px;border:1px solid var(--border);padding:10px;font:inherit}input,textarea,select{width:100%;min-width:0}input[type=range]{padding:0}.budget-range{accent-color:#16a34a}.guest-input-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.guest-input-row input{width:110px}.chip-group-wrap{display:grid}.chip-group{display:flex;flex-wrap:wrap;gap:8px}.chip{background:#eef3f8;color:#23384d;border:1px solid #d5e0ec;border-radius:999px;padding:7px 12px;font-size:.92rem;font-weight:700}.chip-active{background:var(--primary);color:#fff;border-color:var(--primary)}input:focus,textarea:focus,select:focus{border-color:var(--primary);outline:2px solid rgba(18,53,91,.15)}button{background:var(--primary);color:#fff;border:1px solid transparent;font-weight:700}button:disabled{opacity:.65}.muted{color:var(--muted)}.success{color:var(--success);font-weight:700}.error{color:#b42318;font-weight:700}.alert-row{background:#eefbf3;border-color:#bae6c8}.clickable-row{cursor:pointer}.request-line{width:100%;text-align:right;background:transparent;color:inherit;border:none;border-radius:0;font-weight:500;padding:8px 0;cursor:pointer;border-bottom:1px dashed #d7e1ec}.request-line:last-child{border-bottom:none}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#09142380;display:flex;align-items:center;justify-content:center;padding:16px;z-index:20}.modal-card{width:100%;max-width:460px;background:#fff;border-radius:16px;border:1px solid var(--border);padding:16px;box-shadow:0 18px 30px #0f172a40}.date-selector-modal{max-width:520px}.supplier-edit-modal{max-width:560px}.modal-header-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.close-icon-btn{width:32px;height:32px;border-radius:50%;background:#e5e7eb;color:#334155;padding:0;font-size:1.2rem;line-height:1}.summary-grid{margin-top:10px;display:grid;gap:6px;background:#f6f9fc;border-radius:12px;border:1px solid #dce6f1;padding:10px}.modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.btn-success{background:#15803d;color:#fff}.btn-cancel{background:#e5e7eb;color:#334155}.small-text{font-size:.85rem}.offer-status-row{margin-top:8px}.offer-mini-card{text-align:right;cursor:pointer}.offer-mini-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.status-tag{border-radius:999px;padding:4px 10px;font-size:.82rem;font-weight:700}.status-pending{background:#e2e8f0;color:#334155}.status-mine{background:#dcfce7;color:#166534}.status-not_interested{background:#fee2e2;color:#991b1b}.supplier-request-card{border-right:4px solid #d3deea}.supplier-request-mini{text-align:right;cursor:pointer}.inline-success{color:#166534;background:#ecfdf3;border:1px solid #bbf7d0;border-radius:8px;padding:8px 10px;font-weight:700}.inline-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:8px 10px;font-weight:700}.notification-item{border:1px solid var(--border);border-radius:10px;padding:10px;background:#fff}.notification-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.notification-tag{border-radius:999px;padding:3px 9px;font-size:.76rem;font-weight:700;white-space:nowrap}.tone-green .notification-tag{background:#dcfce7;color:#166534}.tone-red .notification-tag{background:#fee2e2;color:#991b1b}.tone-yellow .notification-tag{background:#fef3c7;color:#92400e}.bottom-nav{position:fixed;bottom:0;left:0;right:0;max-width:560px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:#fffffff2;border-top:1px solid var(--border);padding:10px 12px 16px}.bottom-nav button{background:#eaf0f6;color:var(--primary)}.bottom-nav button.active{background:var(--accent);color:#1c2530}@media (min-width: 700px){.app-shell{padding-top:22px}}@media (max-width: 700px){.two-col-row{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col-grid{grid-template-columns:1fr}}@media (max-width: 480px){.two-col-row{grid-template-columns:1fr}}@media (max-width: 420px){.two-col-row{grid-template-columns:1fr}}
