:root{--bg: #f7f5ef;--surface: #fffdf7;--ink: #1f2522;--muted: #64706b;--accent: #d6613b;--accent-hover: #b94c2d;--accent-soft: #f3b36d;--line: #e2d7c9;--success: #2c8c63;--warning: #b9711f;--danger: #c0392b;--radius: 12px;--shadow: 0 2px 12px rgba(60, 44, 28, .08)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,PingFang SC,Segoe UI,Helvetica Neue,sans-serif;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.5}code{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.9em;background:#0000000d;padding:1px 4px;border-radius:4px}button{cursor:pointer;font-family:inherit;font-size:14px;border-radius:999px}.btn-primary{background:var(--accent);color:#fff;border:none;padding:9px 22px;font-weight:600;transition:background .15s}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:transparent;color:var(--accent);border:1px solid var(--accent);padding:7px 18px;font-weight:500;transition:background .15s}.btn-secondary:hover:not(:disabled){background:#d6613b0f}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line);padding:7px 18px;transition:background .15s}.btn-ghost:hover:not(:disabled){background:#0000000a}.btn-ghost:disabled{opacity:.5;cursor:not-allowed}.btn-danger{background:transparent;color:var(--danger);border:1px solid rgba(192,57,43,.3);padding:7px 18px;transition:background .15s}.btn-danger:hover:not(:disabled){background:#c0392b0f}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.navbar{position:sticky;top:0;z-index:100;background:var(--surface);border-bottom:1px solid var(--line);padding:0 24px;height:56px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow)}.navbar-brand{font-weight:700;font-size:16px;color:var(--accent)}.navbar-right{display:flex;align-items:center;gap:16px}.navbar-user{font-size:13px;color:var(--muted)}.dashboard{min-height:100vh}.dashboard-body{max-width:1100px;margin:0 auto;padding:24px;display:flex;flex-direction:column;gap:20px}.stats-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}@media(max-width:800px){.stats-strip{grid-template-columns:repeat(3,1fr)}}@media(max-width:500px){.stats-strip{grid-template-columns:repeat(2,1fr)}}.stat-cell{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 12px;display:flex;flex-direction:column;align-items:center;gap:6px;box-shadow:var(--shadow)}.stat-value{font-size:30px;font-weight:700;line-height:1}.stat-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.stat-open{color:var(--success)}.stat-reached{color:var(--accent)}.stat-warning{color:var(--warning)}.stat-muted{color:var(--muted)}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.filter-tabs{display:flex;gap:8px;flex-wrap:wrap}.filter-tab{background:transparent;border:1px solid var(--line);padding:6px 18px;font-size:13px;color:var(--muted);transition:all .15s}.filter-tab:hover{border-color:var(--accent);color:var(--accent)}.filter-tab-active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.toolbar-actions{display:flex;gap:8px}.currency-panel{display:grid;grid-template-columns:minmax(180px,220px) minmax(0,1fr);gap:16px}@media(max-width:760px){.currency-panel{grid-template-columns:1fr}}.currency-panel-block{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}.currency-panel-block-wide{gap:12px}.currency-panel-header,.currency-panel-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.currency-rate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}@media(max-width:760px){.currency-rate-grid{grid-template-columns:1fr}}.currency-select{min-width:0}.loading-msg,.error-msg,.empty-msg{text-align:center;padding:48px;color:var(--muted);font-size:15px}.error-msg{color:var(--danger)}.group-list{display:flex;flex-direction:column;gap:14px}.group-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px 24px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:14px}.group-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.group-card-info{flex:1;min-width:0}.group-card-title{font-size:16px;font-weight:600}.group-card-sub{font-size:13px;color:var(--muted);margin-top:3px}.group-card-seller{font-size:12px;color:var(--muted);margin-top:2px}.group-card-followup{font-size:12px;color:var(--warning);margin-top:6px}.group-card-followup-done{color:var(--success)}.status-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:500;background:#64706b1a;color:var(--muted);white-space:nowrap;flex-shrink:0}.status-open{background:#2c8c631f;color:var(--success)}.status-reached,.status-moq-reached{background:#d6613b1f;color:var(--accent)}.status-warning,.status-cancelled{background:#b9711f1f;color:var(--warning)}.status-muted,.status-completed{background:#64706b14;color:var(--muted)}.group-card-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media(max-width:600px){.group-card-metrics{grid-template-columns:repeat(2,1fr)}}.group-price-breaks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}@media(max-width:600px){.group-price-breaks{grid-template-columns:1fr}}.group-price-break{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:12px;border:1px solid rgba(122,91,66,.12);background:#f4efe794}.group-price-break-active{background:#d6613b1f;border-color:#d6613b42}.group-price-break-label{font-size:11px;color:var(--muted)}.group-price-break-value{font-size:14px;font-weight:600}.metric-cell{display:flex;flex-direction:column;gap:3px}.metric-value{font-size:16px;font-weight:600}.metric-label{font-size:11px;color:var(--muted)}.progress-track{height:6px;background:var(--line);border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-soft),var(--accent));border-radius:999px;max-width:100%;transition:width .3s ease}.group-card-actions{display:flex;gap:10px;flex-wrap:wrap}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top left,rgba(214,97,59,.14),transparent 30%),linear-gradient(180deg,#f4efe7,#f7f5ef)}.login-card{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:40px;width:100%;max-width:380px;box-shadow:0 8px 32px #3c2c1c1f;display:flex;flex-direction:column;gap:0}.login-logo{font-size:24px;font-weight:800;color:var(--accent);margin-bottom:4px}.login-subtitle{font-size:14px;color:var(--muted);margin-bottom:28px}.login-form{display:flex;flex-direction:column;gap:16px}.login-hint{margin-top:20px;font-size:11px;color:var(--muted);line-height:1.7;border-top:1px solid var(--line);padding-top:16px}.field-group{display:flex;flex-direction:column;gap:6px}.field-label{font-size:13px;font-weight:600;color:var(--ink)}.field-input{border:1px solid var(--line);border-radius:8px;padding:10px 14px;font-size:14px;font-family:inherit;background:#fff;color:var(--ink);transition:border-color .15s;width:100%}.field-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #d6613b1a}.field-textarea{resize:vertical}.field-help{font-size:12px;color:var(--muted);line-height:1.5}.media-panel{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--line);border-radius:10px;background:#f4efe76b}.media-panel-header{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.media-cover-row{display:grid;grid-template-columns:minmax(0,180px) minmax(0,1fr);gap:12px;align-items:center}@media(max-width:640px){.media-cover-row{grid-template-columns:1fr}}.media-preview-card{min-height:132px;border:1px dashed var(--line);border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}.media-preview-image,.media-gallery-image{width:100%;height:100%;object-fit:cover;display:block}.media-preview-placeholder,.media-empty{padding:14px;text-align:center;font-size:12px;color:var(--muted);line-height:1.5}.media-gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.media-gallery-card{display:flex;flex-direction:column;gap:8px}.media-gallery-card .media-gallery-image{height:120px;border-radius:10px;border:1px solid var(--line);background:#fff}.media-remove-button{border-radius:8px;border:1px solid var(--line);background:#fff;padding:6px 10px;font-size:12px}.media-remove-button:hover{background:#d6613b0d;border-color:var(--accent)}.variant-support-panel,.import-summary-panel{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--line);border-radius:10px;background:#f4efe76b}.variant-support-grid,.import-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.variant-support-cell,.import-summary-card{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}.variant-support-list{display:flex;flex-direction:column;gap:8px}.variant-support-item{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff}.form-error{font-size:13px;color:var(--danger);padding:9px 14px;background:#c0392b0f;border-radius:8px;border:1px solid rgba(192,57,43,.2)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1f252285;display:flex;align-items:flex-start;justify-content:center;padding:48px 16px 32px;z-index:200;overflow-y:auto}.modal-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;width:100%;max-width:600px;box-shadow:0 16px 48px #3c2c1c33}.modal-card-wide{max-width:1040px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 0}.modal-title{font-size:18px;font-weight:700}.modal-close{background:transparent;border:none;border-radius:8px;font-size:18px;color:var(--muted);cursor:pointer;padding:4px 8px}.modal-close:hover{background:#0000000f;color:var(--ink)}.modal-form{padding:20px 24px;display:flex;flex-direction:column;gap:16px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding-top:6px}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.form-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media(max-width:540px){.form-grid-2,.form-grid-3{grid-template-columns:1fr}.form-grid-4{grid-template-columns:1fr 1fr}}.image-presets{display:flex;gap:8px;flex-wrap:wrap}.image-preset{padding:8px 16px;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:13px;transition:all .15s}.image-preset:hover{border-color:var(--accent);color:var(--accent)}.image-preset-active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.participants-page{min-height:100vh}.participants-body{max-width:1200px;margin:0 auto;padding:24px}.order-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:20px}@media(max-width:960px){.order-layout{grid-template-columns:1fr}}.order-sidebar,.order-main{display:flex;flex-direction:column;gap:16px}.order-sidebar{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);align-self:start;position:sticky;top:76px}@media(max-width:960px){.order-sidebar{position:static}}.order-sidebar-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.order-sidebar-title{font-size:16px;font-weight:700}.order-sidebar-subtitle{font-size:12px;color:var(--muted);margin-top:4px;line-height:1.5}.order-inline-msg{padding:12px;font-size:13px}.order-empty{color:var(--muted);font-size:13px;padding:4px 2px}.order-group-list{display:flex;flex-direction:column;gap:10px}.order-group-tile{width:100%;text-align:left;background:#f4efe775;border:1px solid transparent;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px;transition:border-color .15s,background .15s,transform .15s}.order-group-tile:hover{border-color:var(--accent);background:#d6613b0d;transform:translateY(-1px)}.order-group-tile-active{border-color:var(--accent);background:#d6613b14}.order-group-tile-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.order-group-tile-title{font-size:14px;font-weight:600;line-height:1.4}.order-group-tile-sub{font-size:12px;color:var(--muted);line-height:1.5}.order-group-tile-meta{font-size:12px;color:var(--muted)}.participants-summary-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.participants-export{border-radius:8px;padding:6px 16px;font-size:13px}.group-header-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px 24px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:flex-start;box-shadow:var(--shadow);flex-wrap:wrap;gap:12px}.group-header-title{font-size:18px;font-weight:700}.group-header-sub{font-size:13px;color:var(--muted);margin-top:4px}.group-header-stats{display:flex;gap:16px;align-items:center;flex-wrap:wrap;font-size:14px;color:var(--muted)}.followup-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;display:flex;justify-content:space-between;align-items:center;gap:16px;box-shadow:var(--shadow)}@media(max-width:720px){.followup-card{flex-direction:column;align-items:stretch}}.participants-summary{font-size:13px;color:var(--muted);margin-bottom:12px;padding:0 2px}.participants-table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.participants-table th,.participants-table td{padding:12px 16px;text-align:left;font-size:14px;border-bottom:1px solid var(--line)}.participants-table th{font-weight:600;background:#f4efe799;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.participants-table tr:last-child td{border-bottom:none}.participants-table tbody tr:hover{background:#d6613b06}.customer-accounts-toolbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}.customer-accounts-meta{font-size:13px;color:var(--muted)}.customer-accounts-toolbar-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.customer-accounts-search{min-width:260px}.customer-account-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,360px);gap:16px;align-items:start}@media(max-width:980px){.customer-account-grid{grid-template-columns:1fr}}.customer-accounts-table-wrap{overflow-x:auto}.customer-account-form-card{display:flex;flex-direction:column;gap:16px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#f4efe76b}.customer-account-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.customer-account-stat{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}.customer-account-form{display:flex;flex-direction:column;gap:14px}.customer-account-inline{font-size:12px;color:var(--muted)}.customer-account-actions{display:flex;justify-content:flex-end}.customer-account-edit-button{border-radius:8px;padding:4px 12px}.customer-account-empty,.customer-account-missing{color:var(--muted)}@media(max-width:640px){.customer-accounts-search{min-width:0;width:100%}.customer-account-stats{grid-template-columns:1fr}}.role-badge{display:inline-flex;padding:3px 10px;border-radius:999px;font-size:12px;background:#64706b1a;color:var(--muted)}.role-initiator{background:#d6613b1f;color:var(--accent)}.error-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg)}.error-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:40px;max-width:480px;text-align:center;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px}.error-card h2{font-size:18px}.error-card p{color:var(--muted);font-size:14px}.error-card pre{background:#0000000a;border-radius:8px;padding:12px;font-size:13px;text-align:left;border:1px solid var(--line)}.help-note{font-size:12px}.edit-group-meta{display:flex;flex-direction:column;gap:3px;padding-bottom:6px;border-bottom:1px solid var(--line)}.edit-group-sub{font-size:13px;color:var(--muted)}.field-hint{font-weight:400;color:var(--muted);font-size:12px;margin-left:6px}
