:root { --ink:#3c0a00; --ink-soft:#704238; --orange:#f35d19; --orange-dark:#cf4210; --orange-pale:#fff3ed; --line:#eed8ce; }
* { box-sizing:border-box; }
html { min-height:100%; }
body { min-height:100vh; margin:0; color:var(--ink); background:linear-gradient(135deg,#fffaf7 0%,#fff 50%,#fff4ee 100%); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.site-header { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; max-width:1180px; margin:0 auto; padding:1.1rem 1.5rem; border-bottom:1px solid #f0e1da; }
.rm-header-banner { display:flex; flex-wrap:wrap; align-items:center; flex-basis:100%; gap:.55rem; margin-top:.65rem; padding-top:.65rem; border-top:1px dashed #f0e1da; }.rm-header-label { color:var(--orange); font-size:.66rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.rm-header-item { color:var(--ink-soft); font-size:.78rem; }.rm-header-item strong { color:var(--ink); font-weight:700; }.rm-header-item:not(:last-child)::after { content:"\00b7"; margin-left:.55rem; color:#d8c4bb; }
.brand { display:inline-flex; align-items:center; text-decoration:none; }
.brand-logo { height:80px; width:auto; max-width:260px; object-fit:cover; object-position:top; display:block; }.header-context { color:var(--ink-soft); font-size:.78rem; font-weight:600; }
.app-shell { width:min(100% - 2rem,1180px); margin:0 auto; padding:3rem 0; }.site-footer { padding:1.4rem; color:#886c64; border-top:1px solid #f0e1da; font-size:.72rem; text-align:center; }
.entry-layout { display:grid; grid-template-columns:1.15fr .85fr; gap:3rem; align-items:center; min-height:64vh; }.entry-copy h1,.workflow-heading h1,.confirmation-card h1 { max-width:680px; margin:.55rem 0 1rem; font-size:clamp(2.2rem,5vw,4.3rem); font-weight:800; letter-spacing:-.07em; line-height:.96; }.entry-copy h1 span { display:block; color:var(--orange); }.entry-copy p,.workflow-heading p { max-width:560px; color:var(--ink-soft); font-size:1rem; line-height:1.65; }
.eyebrow,.step-label { color:var(--orange); font-size:.73rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }.trust-list { display:grid; gap:.5rem; margin-top:1.5rem; color:#532c22; font-size:.82rem; font-weight:700; }
.form-card { padding:2rem; background:rgba(255,255,255,.95); border:1px solid var(--line); border-top:4px solid var(--orange); border-radius:18px; box-shadow:0 18px 50px rgba(105,44,24,.1); }.form-card h2 { margin:.45rem 0; font-size:1.35rem; font-weight:800; letter-spacing:-.035em; }.form-intro,.card-heading p { margin:0; color:#876c64; font-size:.8rem; line-height:1.5; }
.field-group { display:grid; gap:.38rem; margin-top:1.15rem; }.field-group label { color:#5d2c1d; font-size:.75rem; font-weight:750; }.field-group input,.field-group select,.currency-input,.suffix-input { width:100%; min-height:45px; color:var(--ink); background:#fff; border:1px solid #dfcfc8; border-radius:8px; font:inherit; font-size:.9rem; outline:none; }.field-group input,.field-group select { padding:.65rem .75rem; }.field-group input:focus,.field-group select:focus,.currency-input:focus-within,.suffix-input:focus-within { border-color:var(--orange); box-shadow:0 0 0 3px rgba(243,93,25,.12); }.field-group span:not(.field-validation-valid) { color:#bb2508; font-size:.7rem; }
.currency-input,.suffix-input { display:flex; align-items:center; overflow:hidden; }.currency-input span,.suffix-input span { padding-left:.75rem; color:#a08a82; font-size:.82rem; }.currency-input input,.suffix-input input { min-height:43px; padding-left:.45rem; border:0; }.suffix-input span { padding:0 .75rem 0 .35rem; }
.primary-action,.secondary-action { display:inline-flex; align-items:center; justify-content:center; gap:.55rem; min-height:44px; padding:.65rem 1rem; border-radius:8px; font-size:.82rem; font-weight:800; text-decoration:none; transition:.2s ease; }.primary-action { width:100%; margin-top:1.35rem; color:#fff; background:var(--orange); border:1px solid var(--orange); }.primary-action:hover { color:#fff; background:var(--orange-dark); border-color:var(--orange-dark); }
.workflow-heading { margin-bottom:1.5rem; }.workflow-heading h1 { font-size:clamp(2rem,4.3vw,3.35rem); }.customer-card { padding:1.8rem; }.card-heading { display:flex; justify-content:space-between; gap:1rem; align-items:flex-start; padding-bottom:1.1rem; border-bottom:1px solid #eee0da; }.draft-chip { padding:.36rem .55rem; color:#9b3c1c; background:var(--orange-pale); border:1px solid #f4d2c2; border-radius:999px; font-size:.68rem; font-weight:800; white-space:nowrap; }.form-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.6rem 1rem; }.form-actions { display:flex; align-items:center; justify-content:flex-end; gap:.8rem; margin-top:1.5rem; }.form-actions .primary-action { width:auto; margin-top:0; }.secondary-action { color:var(--ink-soft); border:1px solid #dac9c1; background:#fff; }.secondary-action:hover { color:var(--ink); background:#fff7f3; }
.confirmation-card { max-width:720px; margin:8vh auto; padding:3rem; text-align:center; background:#fff; border:1px solid var(--line); border-radius:18px; box-shadow:0 18px 50px rgba(105,44,24,.1); }.confirmation-icon { display:grid; width:48px; height:48px; margin:0 auto 1rem; place-items:center; color:#0b8756; background:#eaf8f1; border-radius:50%; font-weight:900; }.confirmation-card h1 { margin-left:auto; margin-right:auto; font-size:clamp(2rem,4vw,3rem); }.confirmation-card p { color:var(--ink-soft); line-height:1.6; }.confirmation-note { margin:1.5rem 0; padding:.8rem 1rem; color:#755a50; background:#fff5ef; border-radius:8px; font-size:.78rem; }.confirmation-card .primary-action { width:auto; margin:0 auto; }.validation-summary ul { margin:0; padding-left:1.1rem; color:#bb2508; font-size:.75rem; }
@media (max-width:900px) { .entry-layout { grid-template-columns:1fr; gap:2rem; }.form-card { max-width:680px; }.form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:600px) { .site-header { padding:1rem; }.header-context { display:none; }.app-shell { width:min(100% - 1.25rem,1180px); padding:1.5rem 0; }.entry-copy { display:none; }.form-card,.customer-card,.confirmation-card { padding:1.25rem; border-radius:12px; }.form-grid { grid-template-columns:1fr; }.form-actions { align-items:stretch; flex-direction:column-reverse; }.form-actions .primary-action,.secondary-action { width:100%; } }
.admin-login-wrap { display:grid; min-height:68vh; place-items:center; }.admin-login-card { width:min(100%,430px); }.admin-login-card h1,.admin-heading h1 { margin:.45rem 0; font-size:clamp(1.8rem,3.4vw,2.8rem); font-weight:800; letter-spacing:-.055em; }.admin-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; margin-bottom:1.4rem; }.admin-heading p { margin:0; color:var(--ink-soft); font-size:.82rem; }.admin-heading .secondary-action { min-height:38px; }.admin-table-card,.detail-card { background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:0 8px 24px rgba(105,44,24,.06); }.admin-filter { padding:1.1rem 1.15rem; border-bottom:1px solid #efe2dc; background:#fffdfb; }.admin-filter-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(168px,1fr)); gap:.75rem .85rem; }.admin-filter .filter-field { display:grid; gap:.32rem; min-width:0; }.admin-filter .filter-field span { color:#8a6c62; font-size:.65rem; font-weight:800; letter-spacing:.03em; text-transform:uppercase; }.admin-filter input,.admin-filter select { width:100%; min-height:40px; padding:.5rem .65rem; color:var(--ink); border:1px solid #dfcfc8; border-radius:7px; background:#fff; font:inherit; font-size:.78rem; outline:none; transition:border-color .15s ease, box-shadow .15s ease; }.admin-filter input:focus,.admin-filter select:focus { border-color:var(--orange); box-shadow:0 0 0 3px rgba(243,93,25,.12); }.admin-filter input::placeholder { color:#b6a49c; }.admin-filter-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:.85rem; margin-top:1rem; padding-top:.9rem; border-top:1px solid #f2e6e0; }.admin-filter .filter-check { display:flex; align-items:center; gap:.4rem; color:var(--ink-soft); font-size:.76rem; font-weight:700; white-space:nowrap; }.admin-filter .filter-check input { width:15px; height:15px; accent-color:var(--orange); }.admin-filter .primary-action { flex:0 0 auto; width:auto; min-height:40px; margin:0; padding-inline:1.5rem; }
@media (max-width:640px) { .admin-filter-actions { flex-direction:column; align-items:stretch; }.admin-filter .primary-action { width:100%; } }.admin-table-wrap { overflow-x:auto; }.admin-table { width:100%; border-collapse:collapse; font-size:.76rem; }.admin-table th { padding:.8rem 1rem; color:#7c5a50; background:#fff8f4; font-size:.65rem; letter-spacing:.04em; text-align:left; text-transform:uppercase; white-space:nowrap; }.admin-table td { padding:.85rem 1rem; color:#5e3a30; border-top:1px solid #f1e6e1; vertical-align:middle; white-space:nowrap; }.admin-table strong { display:block; color:var(--ink); font-size:.76rem; }.admin-table small { display:block; margin-top:.18rem; color:#927a71; font-size:.66rem; }.status-chip { display:inline-block; padding:.25rem .46rem; color:#99431e; background:#fff1e9; border:1px solid #f3d0c0; border-radius:99px; font-size:.65rem; font-weight:800; }.table-link { color:var(--orange-dark); font-weight:800; text-decoration:none; }.empty-cell { padding:2rem!important; color:#8e746b!important; text-align:center; }.detail-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }.detail-card { padding:1.15rem; }.detail-card h2 { margin:0 0 .9rem; color:var(--ink); font-size:1rem; font-weight:800; }.detail-card dl { display:grid; grid-template-columns:1fr; gap:.65rem; margin:0; }.detail-card dt { color:#927a71; font-size:.67rem; font-weight:700; }.detail-card dd { margin:-.48rem 0 0; color:#4d2a1e; font-size:.78rem; font-weight:650; }.activity-card { display:grid; align-content:start; }.metric-row { display:flex; align-items:baseline; gap:.5rem; padding:.55rem 0; border-top:1px solid #f1e6e1; }.metric-row strong { color:var(--orange-dark); font-size:1.3rem; }.metric-row span { color:#6d5147; font-size:.72rem; }.comparison-review { margin-top:1rem; }.comparison-review pre { max-height:380px; margin:0; padding:1rem; overflow:auto; color:#4e372f; background:#fffaf7; border:1px solid #f0e3dc; border-radius:8px; font:600 .7rem/1.45 ui-monospace,SFMono-Regular,Consolas,monospace; white-space:pre-wrap; }.empty-copy { color:#8e746b; font-size:.78rem; }
@media (max-width:800px) { .detail-grid { grid-template-columns:1fr; }.admin-filter input,.admin-filter select,.admin-filter .filter-date,.admin-filter .filter-check { flex:1 1 100%; }.admin-filter .primary-action { width:100%; }.admin-heading { align-items:flex-start; flex-direction:column; } }
.notification-card { margin:0 0 1rem; padding:1rem; background:#fffaf4; border:1px solid #f0cdbb; border-left:4px solid var(--orange); border-radius:12px; box-shadow:0 8px 24px rgba(105,44,24,.05); }.notification-heading h2 { margin:.2rem 0 0; color:var(--ink); font-size:1rem; }.notification-list { display:grid; gap:.55rem; margin-top:.75rem; }.notification-item,.history-row { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.7rem .8rem; background:#fff; border:1px solid #f0e3dc; border-radius:8px; }.notification-item strong,.history-row strong { display:block; color:var(--ink); font-size:.78rem; }.notification-item p { margin:.18rem 0; color:#6d5147; font-size:.72rem; }.notification-item small,.history-row small { display:block; margin-top:.2rem; color:#927a71; font-size:.65rem; }.notification-actions { display:flex; align-items:center; gap:.7rem; white-space:nowrap; }.notification-actions form { margin:0; }.text-action { padding:0; border:0; color:#8c4b32; background:transparent; font:700 .68rem inherit; cursor:pointer; }.table-summary { display:flex; justify-content:space-between; gap:1rem; padding:.6rem 1rem; color:#80655c; border-bottom:1px solid #f1e6e1; font-size:.7rem; }.filter-check { display:flex; align-items:center; gap:.35rem; color:#6d5147; font-size:.72rem; white-space:nowrap; }.filter-check input { width:14px; height:14px; accent-color:var(--orange); }.pagination { display:flex; align-items:center; justify-content:flex-end; gap:.8rem; padding:.8rem 1rem; color:#80655c; font-size:.72rem; }.pagination a { color:var(--orange-dark); font-weight:800; text-decoration:none; }.report-history { margin-top:1rem; }.history-list { display:grid; gap:.55rem; }.small-action { display:inline-flex; width:auto; min-height:34px; padding:.45rem .65rem; align-items:center; text-decoration:none; font-size:.68rem; white-space:nowrap; }.history-note { margin:-.4rem 0 .8rem; color:#80655c; font-size:.7rem; line-height:1.45; }.delivery-copy { color:#80655c; font-size:.68rem; text-align:right; }
@media (max-width:800px) { .notification-item,.history-row { align-items:flex-start; flex-direction:column; }.notification-actions { width:100%; justify-content:space-between; }.delivery-copy { text-align:left; } }
.admin-nav { display:flex; flex-wrap:wrap; gap:.4rem; margin:0 0 1.4rem; }.admin-nav-link { padding:.55rem 1rem; color:var(--ink-soft); background:#fff; border:1px solid var(--line); border-radius:99px; font-size:.78rem; font-weight:700; text-decoration:none; transition:.2s ease; }.admin-nav-link:hover { color:var(--orange-dark); border-color:#f3d0c0; }.admin-nav-link.active { color:#fff; background:var(--ink); border-color:var(--ink); }
.field-error { color:#c0392b; font-size:.68rem; font-weight:700; }.form-success { margin:0 0 1rem; padding:.7rem 1rem; color:#0d6b4f; background:#eafbf3; border:1px solid #bdead9; border-radius:8px; font-size:.78rem; font-weight:700; }.form-error { margin:0 0 1rem; padding:.7rem 1rem; color:#c0392b; background:#fdecea; border:1px solid #f3c6bf; border-radius:8px; font-size:.78rem; font-weight:700; }
.rm-table td { white-space:normal; vertical-align:top; }.rm-details-form { display:flex; flex-wrap:wrap; align-items:end; gap:.6rem; min-width:520px; }.rm-details-grid { display:grid; grid-template-columns:repeat(4,minmax(110px,1fr)); gap:.5rem; flex:1 1 auto; }.rm-details-grid label { display:grid; gap:.25rem; color:#8a6c62; font-size:.62rem; font-weight:800; letter-spacing:.02em; text-transform:uppercase; }.rm-details-grid input { min-height:34px; padding:.4rem .55rem; color:var(--ink); border:1px solid #dfcfc8; border-radius:6px; background:#fff; font:inherit; font-size:.74rem; outline:none; }.rm-details-grid input:focus { border-color:var(--orange); box-shadow:0 0 0 3px rgba(243,93,25,.12); }.rm-details-form .small-action { flex:0 0 auto; min-height:34px; }
@media (max-width:900px) { .rm-details-form { min-width:0; } }
.search-hint { margin:.4rem 0 0; color:#8e746b; font-size:.75rem; }.search-truncated { margin:.5rem 1rem 0; color:#99431e; font-size:.72rem; font-weight:700; }
