@import url('https://cdn.jotfor.ms/fonts/?display=swap&family=Bricolage+Grotesque:400:500:600:700');
:root{--orange:#E66800;--orange-2:#F97101;--cream:#FAECE1;--cream-2:#FDF7F2;--ink:#342a24;--muted:#756860;--line:#eadbd0;--white:#fff;--danger:#c63b2f;--success:#25865b;--warning:#a86808;--shadow:0 10px 34px rgba(67,44,27,.09);--radius:18px;--safe-bottom:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Bricolage Grotesque',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:var(--cream-2);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}.ui-icon{width:22px;height:22px;display:block;flex:none}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(230,104,0,.25);outline-offset:2px}
/* customer */
.customer-app{min-height:100svh;background:var(--white)}.customer-topbar{position:sticky;top:0;z-index:60;padding-top:env(safe-area-inset-top,0px);background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(234,219,208,.9)}.customer-topbar-inner{max-width:980px;min-height:65px;margin:auto;padding:0 20px;display:flex;align-items:center;gap:22px}.brand-lockup{display:flex;align-items:center;gap:9px;font-weight:700;min-width:max-content}.brand-mark{width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;display:grid;place-items:center;color:var(--orange)}.brand-mark .ui-icon{width:25px;height:25px}.brand-word{font-size:18px}.customer-main-nav{display:flex;align-items:stretch;gap:2px;min-height:65px;margin-inline-start:auto}.customer-main-nav a{display:flex;align-items:center;padding:0 18px;font-size:15px;color:var(--muted);position:relative}.customer-main-nav a.active{color:var(--ink);font-weight:600}.customer-main-nav a.active:after{content:'';position:absolute;left:18px;right:18px;bottom:9px;height:3px;border-radius:3px;background:var(--orange)}.customer-actions{display:flex;align-items:center;gap:4px}.round-icon-btn{width:44px;height:44px;border:0;border-radius:12px;background:transparent;color:var(--ink);display:grid;place-items:center}.round-icon-btn:hover{background:var(--cream)}.has-dot{position:relative}.has-dot:after{display:none}.mobile-only{display:none}
.source-hero{max-width:980px;margin:auto;background:#fff;position:relative}.source-hero-image{height:200px;background-color:var(--orange);background-image:url('https://images.unsplash.com/photo-1600920716019-2da25833765d?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wzNzg4OTl8MHwxfHNlYXJjaHwyfHxtb3RvcmN5Y2xlJTIwcmVwYWlyfGVufDB8fHx8MTc2ODQwMDAxNXww&ixlib=rb-4.1.0&q=80&w=1080');background-size:cover;background-position:center}.source-hero-shade{position:absolute;inset:0 0 auto;height:200px;background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.28))}.source-hero-content{position:relative;display:flex;align-items:flex-start;gap:18px;padding:0 24px 26px;margin-top:-30px;max-width:724px;min-width:724px;margin-inline:auto}.source-logo-box{width:120px;height:120px;border-radius:12px;border:2px solid var(--cream);background:#fff;color:var(--orange);display:grid;place-items:center;flex:none;position:relative;z-index:2;box-shadow:0 8px 22px rgba(0,0,0,.08)}.source-logo-box .ui-icon{width:70px;height:70px}.source-hero-copy{padding-top:36px}.source-hero-copy h1{margin:0;font-size:28px}.source-hero-copy p{margin:4px 0 0;color:var(--muted)}
.customer-main{background:#fff;min-height:calc(100svh - 265px);padding-bottom:calc(48px + var(--safe-bottom))}.customer-view{width:100%}.content-wrap{margin:0 auto;padding:8px 20px 52px}.content-wrap-narrow{max-width:724px}.content-wrap-wide{max-width:980px}.source-heading{text-align:center;padding:7px 0 4px}.source-heading h2,.page-head h2{margin:0;font-size:32px;line-height:1.2}.source-heading p{margin:6px 0 22px;color:var(--muted);font-size:17px}.source-card-list{display:flex;flex-direction:column;gap:8px}.source-card{width:100%;border:1px solid var(--line);background:#fff;border-radius:4px;padding:12px 16px;display:flex;align-items:center;text-align:right;box-shadow:0 1px 0 rgba(0,0,0,.01);min-height:72px;transition:.18s ease}.source-card:hover{background:var(--cream-2);transform:translateY(-1px);box-shadow:var(--shadow)}.source-card:active{transform:scale(.995)}.source-card-horizontal{gap:14px}.source-card-icon{width:48px;height:48px;border-radius:50%;background:var(--cream);color:var(--orange);display:grid;place-items:center;flex:none}.source-card-icon .ui-icon{width:26px;height:26px}.source-card-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.source-card-copy strong{font-size:17px}.source-card-copy small{font-size:14px;color:var(--muted);white-space:normal}.source-card-arrow{margin-inline-start:auto;color:var(--orange);display:grid;place-items:center}.source-copy-text{margin:18px 0 22px;color:#4d433d;font-size:15px;line-height:1.9;text-align:center}.source-primary-btn{display:flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;border:0;border-radius:999px;background:var(--orange);color:#fff;font-weight:600;box-shadow:0 8px 18px rgba(230,104,0,.19);transition:.16s ease}.source-primary-btn:hover{background:var(--orange-2);transform:translateY(-1px)}.source-primary-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.full-btn{width:100%}
.page-head{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:20px 0 18px}.page-head p{margin:0;color:var(--muted);max-width:340px;line-height:1.6}.eyebrow{display:block;color:var(--orange);font-weight:600;font-size:13px;margin-bottom:5px}.service-search-box{height:52px;border:1px solid var(--line);border-radius:14px;background:#fff;display:flex;align-items:center;gap:10px;padding:0 14px;margin-bottom:16px}.service-search-box span{color:var(--muted);display:grid}.service-search-box input{flex:1;border:0;outline:0;min-width:0}.source-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.service-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;padding:0;text-align:right;display:flex;flex-direction:column;min-width:0;transition:.18s ease}.service-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.service-media{aspect-ratio:1.45/1;background:var(--cream);overflow:hidden}.service-media img{width:100%;height:100%;display:block;object-fit:cover}.service-fallback{height:100%;display:grid;place-items:center;color:var(--orange)}.service-fallback .ui-icon{width:50px;height:50px}.service-card-body{display:flex;align-items:center;gap:10px;padding:14px}.service-card-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.service-card-copy strong{font-size:16px}.service-card-copy small{font-size:13px;color:var(--muted);line-height:1.5}.card-arrow{color:var(--orange);margin-inline-start:auto}.detail-shell{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow)}.detail-media{max-height:320px;background:var(--cream);overflow:hidden}.detail-media img{width:100%;max-height:320px;object-fit:cover;display:block}.detail-body{padding:22px}.detail-body h2{margin:0 0 6px;font-size:28px}.detail-lead{margin:0;color:var(--muted);line-height:1.7}.detail-section{padding-top:22px;border-top:1px solid var(--line);margin-top:22px}.detail-section h3{margin:0 0 8px;font-size:20px}.detail-section p{margin:0;color:#4d433d;line-height:1.9}.reason-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.reason-card{border:1px solid var(--line);border-radius:16px;background:var(--cream-2);padding:16px;display:flex;flex-direction:column;gap:7px}.reason-card .ui-icon{color:var(--orange);width:26px;height:26px}.reason-card strong{font-size:15px}.reason-card small{color:var(--muted);line-height:1.5}.detail-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.secondary-btn{min-height:52px;border:1px solid var(--line);background:#fff;border-radius:999px;display:flex;align-items:center;justify-content:center;font-weight:600}
.request-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;border:1px solid var(--line);border-radius:20px;background:#fff;padding:20px;box-shadow:var(--shadow)}.form-field{display:flex;flex-direction:column;gap:7px}.form-field.full{grid-column:1/-1}.form-field label{font-size:14px;font-weight:600}.form-field input,.form-field textarea,.form-field select{width:100%;min-height:50px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:11px 13px;color:var(--ink);outline:0}.form-field textarea{resize:vertical;min-height:110px}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--orange);box-shadow:0 0 0 4px rgba(230,104,0,.09)}.notice-banner{margin-bottom:14px;border-radius:14px;padding:13px 15px;line-height:1.6}.notice-banner.ok{background:#e9f6ef;color:var(--success)}.notice-banner.error{background:#fff0ef;color:var(--danger)}.honeypot{display:none!important}.notification-permission{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;background:var(--cream);border-radius:14px;margin-bottom:14px}.notification-permission button{border:0;background:var(--orange);color:#fff;border-radius:999px;min-height:40px;padding:0 15px}.notification-feed{display:flex;flex-direction:column;gap:12px}.notification-item{border:1px solid var(--line);background:#fff;border-radius:16px;padding:16px;display:flex;gap:14px;align-items:flex-start}.notification-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:var(--cream);color:var(--orange);flex:none}.notification-copy{flex:1;min-width:0}.notification-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.notification-top strong{font-size:16px}.notification-top small{color:var(--muted);white-space:nowrap}.notification-message{margin:8px 0 4px;color:#4d433d;line-height:1.6}.notification-meta{font-size:12px;color:var(--muted)}.status-chip{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:600}.status-chip.info{background:#fff1e7;color:#ad4d00}.status-chip.success{background:#e7f5ed;color:var(--success)}.status-chip.warning{background:#fff4db;color:var(--warning)}.status-chip.complete{background:#eceafa;color:#655aa8}.status-chip.danger{background:#fde8e5;color:var(--danger)}.empty-card{border:1px dashed #d8c6ba;border-radius:16px;padding:28px;text-align:center;color:var(--muted);background:#fff}.customer-bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:55;display:none;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:7px 12px calc(7px + var(--safe-bottom));grid-template-columns:repeat(3,1fr);gap:4px}.customer-bottom-nav a{min-height:50px;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:11px;color:var(--muted)}.customer-bottom-nav a .ui-icon{width:20px;height:20px}.customer-bottom-nav a.active{color:var(--orange);background:var(--cream)}
.drawer-backdrop,.modal-backdrop{position:fixed;inset:0;background:rgba(39,26,18,.42);z-index:80;backdrop-filter:blur(2px)}.mobile-drawer{position:fixed;top:0;right:0;bottom:0;width:min(86vw,360px);background:#fff;z-index:81;padding:18px 16px calc(24px + var(--safe-bottom));box-shadow:-12px 0 34px rgba(0,0,0,.14)}.drawer-header{display:flex;align-items:center;gap:10px;padding-bottom:18px;border-bottom:1px solid var(--line)}.drawer-header strong{font-size:18px}.drawer-header .round-icon-btn{margin-inline-start:auto}.mobile-drawer nav{display:flex;flex-direction:column;padding-top:10px}.mobile-drawer nav a{min-height:50px;border-radius:12px;padding:0 14px;display:flex;align-items:center;font-weight:600}.mobile-drawer nav a:hover{background:var(--cream)}.app-modal{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(92vw,520px);max-height:82svh;overflow:auto;background:#fff;border-radius:20px;box-shadow:0 22px 80px rgba(0,0,0,.22);padding:18px}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.modal-head h2{margin:0;font-size:20px}.app-modal>input{width:100%;height:50px;border:1px solid var(--line);border-radius:12px;margin-top:16px;padding:0 14px;outline:0}.modal-results{display:flex;flex-direction:column;gap:8px;margin-top:14px}.modal-result{border:1px solid var(--line);border-radius:12px;background:#fff;padding:13px 14px;text-align:right}.modal-result strong{display:block}.modal-result small{display:block;margin-top:3px;color:var(--muted)}.live-toast{position:fixed;z-index:95;left:50%;bottom:calc(76px + var(--safe-bottom));transform:translate(-50%,12px);width:min(92vw,420px);background:#2d231d;color:#fff;border-radius:16px;padding:14px 16px;box-shadow:0 16px 42px rgba(0,0,0,.25);opacity:0;pointer-events:none;transition:.22s ease}.live-toast.show{opacity:1;transform:translate(-50%,0)}
/* admin */
.admin-body{background:#f7f4f1}.admin-shell{min-height:100svh;display:flex;flex-direction:column}.admin-topbar{position:sticky;top:0;z-index:50;padding-top:env(safe-area-inset-top,0px);background:#fff;border-bottom:1px solid var(--line)}.admin-topbar-inner{max-width:1280px;margin:auto;min-height:72px;padding:10px 20px;display:flex;align-items:center;gap:18px}.admin-brand{display:flex;align-items:center;gap:10px;min-width:max-content}.admin-brand .brand-mark{background:var(--cream);border-color:var(--cream)}.admin-brand-copy{display:flex;flex-direction:column}.admin-brand-copy strong{font-size:17px}.admin-brand-copy small{color:var(--muted)}.admin-nav{display:flex;gap:4px;margin-inline-start:auto}.admin-nav a{min-height:44px;border-radius:11px;padding:0 14px;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:14px;font-weight:600}.admin-nav a.active,.admin-nav a:hover{background:var(--cream);color:var(--orange)}.admin-nav .ui-icon{width:18px;height:18px}.admin-user{display:flex;align-items:center;gap:9px;margin-inline-start:8px}.admin-avatar{width:38px;height:38px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;font-weight:700}.admin-user-copy{display:flex;flex-direction:column}.admin-user-copy strong{font-size:13px}.admin-user-copy small{color:var(--muted);font-size:11px}.admin-main{width:min(1280px,100%);margin:auto;padding:24px 20px 44px}.admin-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.admin-page-head h1{margin:0 0 5px;font-size:30px}.admin-page-head p{margin:0;color:var(--muted)}.admin-actions-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-btn,.admin-btn-outline,.admin-btn-danger{min-height:44px;padding:0 15px;border-radius:12px;border:0;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:600}.admin-btn{background:var(--orange);color:#fff}.admin-btn-outline{background:#fff;color:var(--ink);border:1px solid var(--line)}.admin-btn-danger{background:#fff;color:var(--danger);border:1px solid #efcbc7}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.admin-stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:0 4px 16px rgba(67,44,27,.04)}.admin-stat-top{display:flex;justify-content:space-between;gap:10px}.admin-stat strong{display:block;font-size:30px;margin-top:8px}.admin-stat small{color:var(--muted)}.stat-icon{width:40px;height:40px;border-radius:12px;background:var(--cream);color:var(--orange);display:grid;place-items:center}.stat-icon .ui-icon{width:21px;height:21px}.admin-panel{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 4px 18px rgba(67,44,27,.04)}.admin-panel-head{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-panel-head h2{margin:0;font-size:18px}.admin-panel-head small{color:var(--muted)}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;min-width:900px}.admin-table th,.admin-table td{padding:13px 14px;border-bottom:1px solid #f0e6df;text-align:right;vertical-align:middle}.admin-table th{font-size:12px;color:var(--muted);background:#fffaf7;position:sticky;top:0}.admin-table tr:last-child td{border-bottom:0}.order-main{display:flex;flex-direction:column;gap:3px}.order-main strong{font-size:14px}.order-main small{color:var(--muted)}.phone-link{color:var(--orange);font-weight:600;display:inline-flex;align-items:center;gap:5px}.order-status{display:inline-flex;min-height:30px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:600}.order-status.info{background:#fff1e7;color:#ad4d00}.order-status.success{background:#e7f5ed;color:var(--success)}.order-status.warning{background:#fff4db;color:var(--warning)}.order-status.complete{background:#eceafa;color:#655aa8}.order-status.danger{background:#fde8e5;color:var(--danger)}.table-link{display:inline-flex;min-height:38px;padding:0 12px;border-radius:10px;background:var(--cream);color:var(--orange);align-items:center;justify-content:center;font-weight:600}.filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.filter-btn{min-height:38px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:0 12px;color:var(--muted)}.filter-btn.active{background:var(--cream);color:var(--orange);border-color:#f2c7ab}.order-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:18px}.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:18px}.info-box{border:1px solid var(--line);border-radius:14px;padding:14px;background:#fff}.info-box.full{grid-column:1/-1}.info-box label{display:block;color:var(--muted);font-size:12px;margin-bottom:5px}.info-box strong{display:block;line-height:1.6}.info-box .pre{white-space:pre-wrap}.admin-form{display:flex;flex-direction:column;gap:12px;padding:18px}.admin-form label{font-size:13px;font-weight:600}.admin-form input,.admin-form textarea,.admin-form select{width:100%;min-height:48px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;outline:0;background:#fff}.admin-form textarea{min-height:110px;resize:vertical}.admin-form select:focus,.admin-form input:focus,.admin-form textarea:focus{border-color:var(--orange);box-shadow:0 0 0 4px rgba(230,104,0,.08)}.timeline{padding:18px;display:flex;flex-direction:column;gap:12px}.timeline-item{position:relative;border-inline-start:3px solid #efc8ad;background:#fffaf7;border-radius:0 14px 14px 0;padding:13px 14px}.timeline-item strong{display:block}.timeline-item p{margin:5px 0;line-height:1.6}.timeline-item small{color:var(--muted)}.service-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px}.service-admin-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;display:flex;flex-direction:column}.service-admin-media{aspect-ratio:16/8;background:var(--cream);overflow:hidden}.service-admin-media img{width:100%;height:100%;object-fit:cover}.service-admin-content{padding:14px;display:flex;flex-direction:column;gap:7px}.service-admin-content h3{margin:0}.service-admin-content p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.service-admin-meta{display:flex;flex-wrap:wrap;gap:7px}.admin-tag{min-height:27px;display:inline-flex;align-items:center;padding:0 9px;border-radius:999px;background:#f6eee8;color:#6c5b4f;font-size:11px}.service-admin-actions{display:flex;gap:7px;padding:0 14px 14px}.service-admin-actions form{margin:0}.service-admin-actions .admin-btn-outline,.service-admin-actions .admin-btn-danger{min-height:38px}.admin-form-shell{max-width:760px}.upload-preview{max-height:220px;border-radius:14px;display:block;border:1px solid var(--line);margin-top:8px}.check-row{display:flex!important;align-items:center;gap:9px}.check-row input{width:18px;height:18px;min-height:auto}.login-page{min-height:100svh;display:grid;place-items:center;padding:20px;background:linear-gradient(145deg,#fff,#fff4ec 60%,#f7eadf)}.login-card{width:min(100%,460px);background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:0 22px 70px rgba(71,43,22,.12)}.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:20px}.login-logo{width:60px;height:60px;border-radius:16px;background:var(--cream);color:var(--orange);display:grid;place-items:center}.login-logo .ui-icon{width:34px;height:34px}.login-card h1{margin:0;font-size:28px}.login-card>p{color:var(--muted);margin:5px 0 22px}.login-card form{display:flex;flex-direction:column;gap:12px}.login-card label{font-weight:600;font-size:13px}.login-card input{width:100%;height:50px;border:1px solid var(--line);border-radius:12px;padding:0 13px;outline:0}.login-card input:focus{border-color:var(--orange);box-shadow:0 0 0 4px rgba(230,104,0,.08)}.login-submit{margin-top:4px;min-height:52px;border:0;border-radius:999px;background:var(--orange);color:#fff;font-weight:700}.login-foot{margin-top:16px;text-align:center;color:var(--muted);font-size:12px}.login-message{border-radius:12px;padding:11px 13px;margin-bottom:14px}.login-message.error{background:#fff0ef;color:var(--danger)}.login-message.ok{background:#e9f6ef;color:var(--success)}.admin-footer{max-width:1280px;margin:auto;padding:0 20px 34px;color:var(--muted);font-size:12px;text-align:center}
[hidden]{display:none!important}
@media (max-width:900px){.customer-topbar-inner{padding:0 14px}.customer-main-nav{display:none}.mobile-only{display:grid}.source-hero-content{min-width:auto;max-width:724px;padding-inline:18px}.source-service-grid{grid-template-columns:1fr 1fr}.customer-bottom-nav{display:grid}.customer-main{padding-bottom:calc(96px + var(--safe-bottom))}.admin-topbar-inner{padding:10px 14px}.admin-nav{display:none}.admin-user{margin-inline-start:auto}.admin-user-copy{display:none}.admin-main{padding:18px 14px 34px}.stats-grid{grid-template-columns:1fr 1fr}.order-layout{grid-template-columns:1fr}.service-admin-grid{grid-template-columns:1fr}}
@media (max-width:640px){.brand-word{display:none}.source-hero-image,.source-hero-shade{height:180px}.source-hero-content{margin-top:-28px;padding:0 14px 20px;gap:12px}.source-logo-box{width:104px;height:104px;border-radius:12px}.source-logo-box .ui-icon{width:60px;height:60px}.source-hero-copy{padding-top:34px}.source-hero-copy h1{font-size:24px}.content-wrap{padding-inline:14px}.source-heading h2,.page-head h2{font-size:28px}.page-head{display:block}.page-head p{margin-top:5px}.source-service-grid{grid-template-columns:1fr;gap:12px}.source-card{min-height:68px}.request-form{grid-template-columns:1fr;padding:15px;border-radius:16px}.form-field.full{grid-column:auto}.detail-actions{grid-template-columns:1fr}.reason-grid{grid-template-columns:1fr}.notification-top{display:block}.notification-top small{display:block;margin-top:4px}.admin-page-head{display:block}.admin-actions-bar{margin-top:12px}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.admin-stat strong{font-size:24px}.info-grid{grid-template-columns:1fr}.info-box.full{grid-column:auto}.login-card{padding:20px;border-radius:20px}}

/* V5 polish: native-app ergonomics, feedback, admin mobile UX, attachments, and resilience */
html{scroll-padding-top:80px}body{min-width:320px}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent }button:active,.source-card:active,.service-card:active,.admin-btn:active,.admin-btn-outline:active{transform:scale(.985)}
.form-field small,.field-help{color:var(--muted);font-size:12px;line-height:1.6}.address-row{display:grid;grid-template-columns:1fr auto;gap:8px}.locate-btn{align-self:stretch;border:1px solid var(--line);background:var(--cream-2);border-radius:12px;padding:0 13px;color:var(--orange);font-weight:600;min-width:110px}.locate-btn:disabled{opacity:.65}.check-row{font-size:13px;color:var(--muted)}.consent-field{padding-top:2px}.consent-field input{width:20px!important;height:20px;min-height:20px!important}.notice-banner.ok,.notice-banner.error{display:flex;justify-content:space-between;align-items:center;gap:12px}.mini-action{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 12px;border-radius:999px;background:#fff;color:var(--orange);border:1px solid rgba(230,104,0,.18);white-space:nowrap}.install-prompt{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;background:#fff8f2;border:1px solid #f2d5bf;border-radius:16px;margin-bottom:14px}.install-prompt>div{display:flex;flex-direction:column;gap:2px}.install-prompt strong{font-size:14px}.install-prompt small{color:var(--muted)}.install-prompt button{min-height:40px;padding:0 14px;border:0;border-radius:999px;background:var(--orange);color:#fff;font-weight:700}.notification-badge{position:absolute;top:4px;inset-inline-end:2px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--orange);color:#fff;border:2px solid #fff;font-size:9px;display:grid;place-items:center;z-index:1}.notification-item.unread{border-color:#f0b98f;box-shadow:0 0 0 2px rgba(230,104,0,.05)}.modal-result.unread{background:#fff8f2}.drawer-support{border-top:1px solid var(--line);margin-top:10px;padding-top:14px}.drawer-support>div{display:flex;gap:8px;margin-top:8px}.drawer-support a{min-height:40px;display:inline-flex;align-items:center;padding:0 12px;border:1px solid var(--line);border-radius:999px;color:var(--orange)}
.live-toast{position:fixed;z-index:200;left:50%;bottom:calc(24px + var(--safe-bottom));transform:translate(-50%,18px);min-width:min(92vw,430px);background:#1f1a16;color:#fff;border-radius:14px;padding:0 14px;min-height:52px;display:flex;align-items:center;gap:10px;box-shadow:0 16px 40px rgba(0,0,0,.2);overflow:hidden;opacity:0;pointer-events:none;transition:.2s}.live-toast.show{opacity:1;transform:translate(-50%,0)}.toast-progress{display:block;position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--orange);transform-origin:left;animation:toastCount 3.6s linear forwards}@keyframes toastCount{from{transform:scaleX(1)}to{transform:scaleX(0)}}

/* admin */
.admin-mobile-menu{display:none;width:44px;height:44px;border:1px solid var(--line);background:#fff;border-radius:12px;color:var(--ink)}.admin-mobile-menu .ui-icon{width:20px;height:20px;margin:auto}.admin-mobile-backdrop{display:none}.admin-mobile-drawer{display:none}.admin-mobile-nav{display:none}.admin-kpis{display:flex;flex-wrap:wrap;gap:8px;margin:-6px 0 20px}.admin-kpis span{padding:7px 10px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:12px;color:var(--muted)}.admin-kpis b{color:var(--ink)}.live-tag{color:var(--success)!important;background:#edf8f2!important}.live-tag i{width:7px;height:7px;border-radius:50%;background:var(--success);display:block;animation:livePulse 1.6s infinite}@keyframes livePulse{50%{opacity:.35;transform:scale(.75)}}.admin-filter-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admin-search{height:42px;min-width:min(310px,100%);border:1px solid var(--line);border-radius:12px;padding:0 12px;outline:0}.admin-search:focus{border-color:var(--orange);box-shadow:0 0 0 4px rgba(230,104,0,.08)}.admin-table td small{display:block;color:var(--muted);margin-top:3px}.admin-inline-success{display:inline-flex;align-items:center;min-height:38px;padding:0 11px;border-radius:999px;background:#edf8f2;color:var(--success);font-size:12px}.order-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(135deg,#fff,#fff8f2);border:1px solid var(--line);border-radius:20px;padding:18px;margin-bottom:18px}.order-hero h2{margin:9px 0 4px}.order-hero p{margin:0;color:var(--muted);font-size:12px}.quick-contact{display:flex;gap:8px;flex-wrap:wrap}.quick-btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 13px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--orange);font-weight:600}.quick-status-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.quick-status-row button{min-height:40px;border:1px solid var(--line);background:#fff;border-radius:10px;color:var(--ink);font-size:12px;font-weight:600}.quick-status-row button:hover{background:var(--cream)}.box-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:9px}.copy-link{border:0;background:transparent;color:var(--orange);padding:0;font-size:11px;font-weight:700;cursor:pointer}.attachments{padding:0 18px 18px}.attachments h3{margin:0 0 10px;font-size:17px}.attachment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.attachment-grid a{display:block;aspect-ratio:1.2;border-radius:14px;overflow:hidden;background:var(--cream);border:1px solid var(--line)}.attachment-grid img{width:100%;height:100%;object-fit:cover}.section-gap{margin-top:18px}.audit-list{padding:10px 18px 18px;display:flex;flex-direction:column}.audit-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #f0e6df}.audit-row:last-child{border-bottom:0}.audit-row strong,.audit-row small{display:block}.audit-row small{color:var(--muted);margin-top:3px}.audit-row>span{font-size:11px;color:var(--muted)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.callout{border:1px solid #efcfb6;border-radius:14px;padding:12px 14px;margin-bottom:14px;background:#fff7ef;color:#704b2f}.password-meter{width:100%;height:8px;display:block}.password-meter::-webkit-meter-bar{background:#f4e6dd;border-radius:99px}.password-meter::-webkit-meter-optimum-value{background:var(--success);border-radius:99px}.auth-alert{position:relative;overflow:hidden;border:1px solid currentColor;border-radius:10px;padding:10px 12px;margin-bottom:14px;background:#fff}.auth-alert-error{color:var(--danger)}.auth-alert-warning{color:var(--warning)}.auth-alert.dismiss{opacity:0;transform:translateY(-4px);transition:.28s}.auth-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:currentColor;transform-origin:right;animation:authProgress 3.6s linear forwards}@keyframes authProgress{from{transform:scaleX(1)}to{transform:scaleX(0)}}.password-wrap{position:relative}.password-wrap input{padding-inline-end:82px!important}.password-toggle{position:absolute;inset-inline-end:8px;top:5px;height:40px;border:0;background:var(--cream);color:var(--orange);border-radius:9px;padding:0 10px;font-size:12px;font-weight:700}.login-card-premium{max-width:480px}.login-help{margin-top:15px;padding:12px;border:1px dashed var(--line);border-radius:14px;background:#fffaf7;display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--muted)}.login-help code{color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.login-site-link{display:flex;justify-content:center;margin-top:14px;color:var(--orange);font-weight:700;font-size:13px}.admin-toast{position:fixed;z-index:300;left:50%;top:calc(18px + env(safe-area-inset-top,0px));transform:translate(-50%,-12px);min-width:min(92vw,430px);padding:12px 14px;border-radius:12px;background:#201a16;color:#fff;box-shadow:0 18px 40px rgba(0,0,0,.18);opacity:0;transition:.2s;pointer-events:none}.admin-toast.show{opacity:1;transform:translate(-50%,0)}.admin-toast.success{border-inline-start:4px solid var(--success)}.admin-toast.error{border-inline-start:4px solid var(--danger)}.admin-toast.warning{border-inline-start:4px solid var(--warning)}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media (max-width:900px){.admin-mobile-menu{display:grid;place-items:center}.admin-brand{margin-inline:auto}.admin-nav{display:none}.admin-mobile-nav{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;z-index:80;left:0;right:0;bottom:0;padding:7px 8px calc(7px + var(--safe-bottom));background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-top:1px solid var(--line)}.admin-mobile-nav a{min-height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:5px;color:var(--muted);font-size:11px;font-weight:700}.admin-mobile-nav a.active{background:var(--cream);color:var(--orange)}.admin-mobile-nav .ui-icon{width:18px;height:18px}.admin-main{padding-bottom:100px}.admin-user .admin-btn-outline{width:44px;padding:0}.admin-user .admin-btn-outline span{display:none}.admin-filter-row{display:block}.admin-search{width:100%;min-width:0;margin-bottom:10px}.order-hero{align-items:flex-start;flex-direction:column}.quick-contact{width:100%}.quick-contact .quick-btn{flex:1}.settings-grid{grid-template-columns:1fr}}
@media (max-width:640px){.address-row{grid-template-columns:1fr}.locate-btn{min-height:44px}.install-prompt{align-items:flex-start}.notification-permission{align-items:flex-start;flex-direction:column}.notice-banner.ok,.notice-banner.error{align-items:flex-start;flex-direction:column}.source-hero-content{align-items:flex-start}.login-card-premium{padding:20px}.admin-page-head h1{font-size:26px}.quick-status-row{grid-template-columns:1fr 1fr}.attachment-grid{grid-template-columns:1fr 1fr}.admin-table,.admin-table tbody,.admin-table tr,.admin-table td{min-width:0}.admin-table-wrap{overflow:visible}.admin-table thead{display:none}.admin-table{display:block}.admin-table tbody{display:flex;flex-direction:column;gap:10px}.admin-table tr[data-row]{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.admin-table tr[data-row] td{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;padding:12px;border-bottom:1px solid #f0e6df;text-align:right}.admin-table tr[data-row] td::before{content:attr(data-label);font-size:10px;color:var(--muted);font-weight:600}.admin-table tr[data-row] td:last-child{border-bottom:0}.admin-table tr[data-row] td:nth-last-child(-n+1){grid-column:1/-1}.admin-table tr[data-row] td .table-link{width:100%}.admin-table tr[data-row] td:first-child{grid-column:1/-1;background:#fffaf7}.admin-kpis{overflow:auto;flex-wrap:nowrap;padding-bottom:2px}.admin-kpis span{white-space:nowrap}.admin-user-copy{display:none}.admin-mobile-drawer{position:fixed;z-index:210;top:0;bottom:0;right:0;width:min(320px,86vw);background:#fff;transform:translateX(110%);transition:.22s;display:block;padding:18px;box-shadow:-20px 0 50px rgba(0,0,0,.16)}html.admin-nav-open .admin-mobile-drawer{transform:translateX(0)}html.admin-nav-open .admin-mobile-backdrop{display:block;position:fixed;z-index:205;inset:0;background:rgba(25,18,13,.35);backdrop-filter:blur(2px)}.admin-mobile-drawer nav{display:flex;flex-direction:column;gap:4px;margin-top:16px}.admin-mobile-drawer nav a{min-height:48px;display:flex;align-items:center;padding:0 12px;border-radius:12px;color:var(--muted)}.admin-mobile-drawer nav a.active{background:var(--cream);color:var(--orange);font-weight:700}.admin-mobile-drawer .drawer-header{display:flex;align-items:center;justify-content:space-between}.admin-mobile-drawer .round-icon-btn{font-size:25px}.login-page{padding:14px}.login-help{font-size:11px}}
@media (min-width:901px){.admin-mobile-menu{display:none!important}}
@media (max-width:480px){.source-heading h2,.page-head h2{font-size:26px}.source-copy-text{font-size:14px}.content-wrap{padding-bottom:40px}.source-card-copy strong{font-size:16px}.source-card-copy small{font-size:13px}.detail-body{padding:18px}.request-form{padding:14px}.live-toast{min-width:calc(100vw - 24px)}}
.auth-alert-success{color:var(--success)}
@media (max-width:900px){.admin-mobile-drawer{position:fixed;z-index:210;top:0;bottom:0;right:0;width:min(320px,86vw);background:#fff;transform:translateX(110%);transition:.22s;display:block;padding:18px;box-shadow:-20px 0 50px rgba(0,0,0,.16)}html.admin-nav-open .admin-mobile-drawer{transform:translateX(0)}html.admin-nav-open .admin-mobile-backdrop{display:block;position:fixed;z-index:205;inset:0;background:rgba(25,18,13,.35);backdrop-filter:blur(2px)}.admin-mobile-drawer nav{display:flex;flex-direction:column;gap:4px;margin-top:16px}.admin-mobile-drawer nav a{min-height:48px;display:flex;align-items:center;padding:0 12px;border-radius:12px;color:var(--muted)}.admin-mobile-drawer nav a.active{background:var(--cream);color:var(--orange);font-weight:700}}
/* location + upload polish */
.field-title-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:8px}.field-title-row>div{min-width:0}.field-title-row label{display:block;margin-bottom:3px}.locate-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:46px;padding:0 14px;border:1px solid rgba(230,104,0,.22);background:#fff;border-radius:999px;color:var(--orange);font-weight:700;white-space:nowrap;box-shadow:0 4px 14px rgba(230,104,0,.08)}.locate-btn:hover{background:var(--cream-2);border-color:rgba(230,104,0,.35)}.locate-btn:disabled{opacity:.62;box-shadow:none}.locate-icon{font-size:20px;line-height:1}.location-card{border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,#fff,#fffaf7);padding:10px;box-shadow:0 8px 24px rgba(67,44,27,.06);margin-bottom:10px}.location-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 5px 10px}.location-status{display:flex;align-items:center;gap:10px;min-width:0}.location-status>div{display:flex;flex-direction:column;gap:2px;min-width:0}.location-status strong{font-size:14px}.location-status small{color:var(--muted);font-size:12px;line-height:1.45}.location-pulse{width:11px;height:11px;border-radius:50%;background:#b9aaa0;box-shadow:0 0 0 5px rgba(117,104,96,.08);flex:none}.location-pulse.ready{background:var(--success);box-shadow:0 0 0 5px rgba(37,134,91,.10);animation:locationPulse 1.7s infinite}@keyframes locationPulse{50%{transform:scale(.82);opacity:.55}}.map-clear-btn{border:1px solid var(--line);background:#fff;border-radius:999px;min-height:36px;padding:0 11px;color:var(--muted);font-size:12px;font-weight:700}.interactive-map{height:300px;border-radius:16px;overflow:hidden;background:#efe8e2}.interactive-map .leaflet-control-attribution{font-size:9px}.interactive-map .leaflet-control-zoom a{color:var(--ink);font-weight:700}.location-address-box{display:flex;align-items:flex-start;gap:10px;padding:12px 10px 4px}.location-address-icon{width:30px;height:30px;border-radius:10px;background:#edf8f2;color:var(--success);display:grid;place-items:center;flex:none;font-weight:800}.location-address-box>div{display:flex;flex-direction:column;gap:3px;min-width:0}.location-address-box small{font-size:11px;color:var(--muted)}.location-address-box strong{font-size:13px;line-height:1.65;overflow-wrap:anywhere}.optional-label{font-weight:500;color:var(--muted);font-size:11px;margin-inline-start:4px}.upload-dropzone{position:relative;border:1.5px dashed #e4c2aa;border-radius:18px;background:linear-gradient(180deg,#fffdfb,#fff8f2);padding:10px;transition:.18s ease}.upload-dropzone:hover,.upload-dropzone.dragging{border-color:var(--orange);background:#fff8f2;box-shadow:0 0 0 4px rgba(230,104,0,.06)}.upload-dropzone>input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2}.upload-visual{min-height:94px;display:flex;align-items:center;gap:12px;padding:8px}.upload-icon{width:48px;height:48px;border-radius:15px;background:var(--cream);color:var(--orange);display:grid;place-items:center;font-size:28px;font-weight:400;flex:none}.upload-visual>div:nth-child(2){display:flex;flex-direction:column;gap:4px;min-width:0}.upload-visual strong{font-size:14px}.upload-visual small{font-size:12px;color:var(--muted)}.upload-badge{margin-inline-start:auto;align-self:flex-start;border:1px solid var(--line);border-radius:999px;background:#fff;padding:6px 8px;font-size:9px;color:var(--muted);white-space:nowrap}.upload-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:6px 2px 2px}.upload-thumb{position:relative;aspect-ratio:1.3;border-radius:14px;overflow:hidden;background:var(--cream);border:1px solid var(--line)}.upload-thumb img{width:100%;height:100%;display:block;object-fit:cover}.upload-thumb button{position:absolute;top:6px;inset-inline-end:6px;width:28px;height:28px;border:0;border-radius:50%;background:rgba(31,26,22,.78);color:#fff;font-size:18px;line-height:1;display:grid;place-items:center;z-index:3}.map-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--orange);font-weight:700}.admin-order-map{height:320px;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:var(--cream);margin-top:12px}.map-coords{font-size:11px;color:var(--muted);margin-top:5px;direction:ltr;text-align:right}.location-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.location-actions .map-link{flex:1}.whatsapp-arrival{background:#f2fbf6;border-color:#c9ead7;color:#23784f!important}.admin-map-card{padding:0 18px 18px}.admin-map-card h3{margin:0 0 8px;font-size:17px}.admin-map-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}.leaflet-container{font-family:inherit}
@media (max-width:640px){.field-title-row{align-items:flex-start;flex-direction:column}.field-title-row .locate-btn{width:100%}.interactive-map,.admin-order-map{height:285px}.upload-preview{grid-template-columns:repeat(3,1fr)}.upload-badge{display:none}}
/* premium mobile date/time pickers — centered, safe-area aware, touch-first */
html.picker-open,body.picker-open{overflow:hidden;overscroll-behavior:none}
.picker-field{position:relative}
.picker-trigger{width:100%;min-height:72px;border:1px solid var(--line);background:#fff;border-radius:18px;display:flex;align-items:center;gap:12px;padding:10px 14px;text-align:start;color:var(--ink);box-shadow:0 8px 22px rgba(67,44,27,.05);transition:.18s ease}
.picker-trigger:hover{border-color:#e3c3ad;background:#fffaf7;transform:translateY(-1px)}
.picker-trigger:focus-visible{border-color:var(--orange);box-shadow:0 0 0 4px rgba(230,104,0,.1)}
.picker-trigger-icon{width:44px;height:44px;border-radius:14px;background:var(--cream);color:var(--orange);display:grid;place-items:center;font-size:22px;flex:none}
.picker-trigger-copy{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.picker-trigger-copy strong{font-size:14px}.picker-trigger-copy small{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.picker-chevron{font-size:20px;color:var(--muted);padding-inline-start:6px}
.picker-modal{position:fixed;inset:0;width:100%;height:100dvh;z-index:50000!important;background:rgba(29,22,18,.50);display:flex;align-items:center;justify-content:center;padding:calc(12px + env(safe-area-inset-top,0px)) calc(12px + env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) calc(12px + env(safe-area-inset-left,0px));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);isolation:isolate;overscroll-behavior:contain;touch-action:none}
.picker-modal .picker-sheet{position:relative;z-index:50001}
.picker-sheet{width:min(100%,560px);max-height:min(88dvh,720px);overflow:auto;background:#fff;border:1px solid rgba(255,255,255,.55);border-radius:26px;padding:18px;box-shadow:0 30px 80px rgba(28,20,15,.28);animation:pickerIn .18s cubic-bezier(.2,.8,.2,1);overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.picker-sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:2px 2px 14px;position:sticky;top:0;background:#fff;z-index:3}.picker-sheet-head h3{margin:2px 0 0;font-size:22px}.picker-close{width:48px;height:48px;border:1px solid var(--line);background:#fff;border-radius:14px;color:var(--ink);font-size:24px;line-height:1;display:grid;place-items:center;flex:none}
.calendar-head{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;gap:8px;margin-bottom:8px}.calendar-head strong{text-align:center;font-size:16px}.calendar-nav{width:48px;height:48px;border:1px solid var(--line);background:var(--cream-2);border-radius:14px;font-size:26px;color:var(--ink)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:6px}.calendar-weekdays span{text-align:center;font-size:11px;font-weight:700;color:var(--muted);padding:7px 0}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendar-empty{min-height:48px}.calendar-day{min-height:52px;border:1px solid transparent;background:#fff;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;color:var(--ink);font-weight:600;touch-action:manipulation}.calendar-day:hover{background:var(--cream-2);border-color:#efd3bf}.calendar-day:active{transform:scale(.97)}.calendar-day small{font-size:8px;color:var(--orange);font-weight:700}.calendar-day.today{border-color:#f0c29e}.calendar-day.selected{background:var(--orange);color:#fff;border-color:var(--orange);box-shadow:0 8px 16px rgba(230,104,0,.18)}.calendar-day.selected small{color:#fff}.calendar-day:disabled{opacity:.28;cursor:not-allowed;background:#f7f3ef}
.time-picker-note{padding:10px 12px;border-radius:14px;background:var(--cream-2);color:var(--muted);font-size:12px;line-height:1.6;margin-bottom:12px}.time-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-height:48dvh;overflow:auto;padding:2px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.time-option{min-height:64px;border:1px solid var(--line);background:#fff;border-radius:16px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:start;color:var(--ink);touch-action:manipulation}.time-option span{font-weight:700;font-size:14px}.time-option small{color:var(--muted);font-size:11px;direction:ltr}.time-option:hover{border-color:#e7c6ad;background:var(--cream-2)}.time-option:active{transform:scale(.985)}.time-option.selected{background:var(--orange);border-color:var(--orange);color:#fff}.time-option.selected small{color:#fff}.picker-sheet-foot{display:flex;gap:8px;justify-content:flex-end;padding-top:14px;position:sticky;bottom:0;background:#fff}.picker-sheet-foot .source-primary-btn,.picker-sheet-foot .secondary-btn{min-height:48px;padding-inline:18px}.picker-sheet-foot .source-primary-btn{width:auto}.picker-sheet-foot .secondary-btn{width:auto}.picker-modal[hidden]{display:none}@keyframes pickerIn{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media (min-width:700px){.time-grid{grid-template-columns:repeat(3,1fr);max-height:52dvh}}
@media (max-width:420px){.picker-modal{padding:calc(10px + env(safe-area-inset-top,0px)) calc(10px + env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) calc(10px + env(safe-area-inset-left,0px))}.picker-sheet{width:100%;max-height:calc(100dvh - 20px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:14px;border-radius:22px}.picker-sheet-head h3{font-size:20px}.calendar-grid{gap:4px}.calendar-day{min-height:46px;border-radius:12px}.time-grid{grid-template-columns:1fr 1fr;gap:7px;max-height:46dvh}.time-option{min-height:58px;padding:9px 10px}.picker-trigger{min-height:68px}}
.time-option.disabled,.time-option:disabled{opacity:.34;cursor:not-allowed;background:#f7f3ef;border-color:#eee2d9}


/* V9: map stays below app chrome; pickers/toasts stay on top */
.customer-topbar{z-index:1000}
.customer-main{position:relative;z-index:1}
.interactive-map{position:relative;z-index:0}
.interactive-map .leaflet-container{z-index:0!important}
.interactive-map .leaflet-pane{z-index:1!important}
.interactive-map .leaflet-top,.interactive-map .leaflet-bottom{z-index:2!important}
.interactive-map .leaflet-control-zoom a{width:44px!important;height:44px!important;line-height:44px!important}
.picker-modal{z-index:5000!important;overscroll-behavior:contain;touch-action:auto}
.picker-sheet{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
body.picker-open{touch-action:none}
.request-form .form-field.field-error>label{color:var(--danger)}
.request-form .form-field.field-error input:not([type="hidden"]),.request-form .form-field.field-error textarea,.request-form .form-field.field-error select,.request-form .form-field.field-error .picker-trigger,.request-form .form-field.field-error .upload-dropzone{border-color:var(--danger)!important;box-shadow:0 0 0 4px rgba(196,56,48,.08)}
.live-toast.error{background:#fff;border:1px solid #efc8c5;color:#6f201d}
.live-toast.success{background:#fff;border:1px solid #c9e8d7;color:#1f6f49}
.live-toast.warning{background:#fff;border:1px solid #ead7af;color:#6f5318}
.live-toast.error .toast-progress{background:var(--danger)}
.live-toast.success .toast-progress{background:var(--success)}
.picker-close,.calendar-nav{min-width:44px;min-height:44px}
@media (max-width:640px){.customer-main{overflow:visible}.interactive-map{z-index:0}.picker-sheet{width:min(100%,560px);max-height:calc(100svh - 20px)}}

html{scroll-padding-top:calc(70px + env(safe-area-inset-top,0px))}

/* V9 accessibility and touch-target pass */
.round-icon-btn{width:48px;height:48px;min-width:48px;min-height:48px}
.locate-btn{min-height:48px}
.picker-close,.calendar-nav{width:48px;height:48px;min-width:48px;min-height:48px}
.interactive-map .leaflet-control-zoom a{width:48px!important;height:48px!important;line-height:48px!important}
.upload-thumb button{min-width:44px;min-height:44px}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* V11: centered service search + fixed content rail so adding services never stretches the layout */
.content-wrap-wide{max-width:980px;width:100%;margin-inline:auto}
.page-head{max-width:724px;margin-inline:auto}
.service-search-box{width:min(100%,520px);margin:0 auto 20px}
.service-search-box input{text-align:right}
.source-service-grid{width:100%;max-width:724px;margin-inline:auto;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.source-service-grid .service-card{min-width:0;width:100%}
@media (max-width:640px){
  .content-wrap-wide{padding-inline:16px}
  .page-head{padding-top:14px}
  .service-search-box{max-width:520px;height:54px;margin-bottom:18px}
  .source-service-grid{max-width:560px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
}
@media (max-width:430px){
  .source-service-grid{grid-template-columns:1fr}
}

/* Order deletion controls */
.admin-delete-success{margin-bottom:12px;text-align:center;padding:10px 14px;border:1px solid rgba(40,160,80,.18);border-radius:14px;background:#f3fbf5;color:#1f7a3d;font-weight:700}
.table-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.table-delete{appearance:none;border:1px solid #f1caca;background:#fff;color:#b42318;border-radius:10px;min-height:40px;padding:8px 12px;font:inherit;font-weight:700;cursor:pointer}
.table-delete:hover{background:#fff5f5}
.admin-btn-danger{appearance:none;border:1px solid #efb8b5;background:#fff5f4;color:#b42318;border-radius:12px;min-height:42px;padding:9px 14px;font:inherit;font-weight:800;cursor:pointer}
@media (max-width:640px){.admin-page-head .admin-actions-bar{width:100%}.admin-page-head .admin-actions-bar form{display:block}.admin-btn-danger{width:100%}.table-actions{justify-content:flex-start;width:100%}}
