/* TrackLog: página de consulta inspirada no layout de transportadoras. */
:root {
  --paper: #fff;
  --ink: #454545;
  --muted: #888;
  --green: #cd0732;
  --lime: #fff;
  --line: #e4e4e4;
  --radius: 5px;
  font-family: 'Century Gothic', 'Trebuchet MS', 'Segoe UI', sans-serif;
}

html { scroll-behavior: smooth; }
body { background: #fff; }
.header { max-width: 1000px; padding: 0 40px; margin: 0 auto; border: 0; background: #fff; }
.header-inner { padding: 0; height: 101px; max-width: none; gap: 15px; position: relative; }
.brand { font-family: Arial, sans-serif; font-size: 38px; font-weight: 750; letter-spacing: -1.7px; gap: 9px; align-self: flex-start; margin-top: 12px; flex-shrink: 0; }
.tracklog-mark { width: 51px; height: 55px; flex-shrink: 0; }
.brand-tagline { font-family: Arial, sans-serif; font-size: 9px; color: #555; white-space: nowrap; margin-right: auto; align-self: flex-start; margin-top: 40px; }
.header-tools { width: 385px; flex-shrink: 0; align-self: flex-start; }
.utility-row { display: flex; justify-content: flex-end; align-items: center; gap: 27px; height: 36px; font-size: 10px; color: #666; }
.utility-row button { font-size: 10px; color: #888; background: transparent; padding: 0; }
.utility-row button:hover { color: #ce0633; }
.quick-tracking { height: 40px; margin-top: 9px; padding: 6px 10px 6px 7px; display: flex; align-items: center; background: #bf1234; gap: 9px; }
.quick-tracking svg { height: 27px; width: 27px; flex-shrink: 0; fill: none; stroke: #fff; stroke-width: 1.1; }
.quick-tracking label { color: #fff; font-family: Arial, sans-serif; font-weight: 700; font-size: 8px; white-space: nowrap; flex: 1; }
.quick-tracking input { width: 111px; height: 25px; padding: 0 9px; background: #fff; color: #555; border: 1px solid #f0d3d8; border-radius: 0; font-family: Arial, sans-serif; font-size: 8px; }
.quick-tracking button { height: 25px; color: #fff; background: #db0034; font: 700 11px Arial,sans-serif; padding: 0 10px; margin-left: -9px; }
.quick-tracking button:hover { background: #a80629; }
.header .site-nav { display: flex; height: 42px; width: 100%; align-items: stretch; justify-content: space-around; gap: 0; border: 1px solid #e5e5e5; box-shadow: 0 2px 3px #00000006; position: relative; z-index: 2; background: #fff; }
.site-nav button { background: transparent; color: #3d3d3d; font-size: 10px; font-weight: 400; padding: 0 15px; white-space: nowrap; }
.site-nav button:hover, .site-nav button.active { color: #ce0633; }
.site-nav .nav-button.active:after { height: 2px; background: #ce0633; left: 15px; right: 15px; }
main { max-width: 1000px; padding: 0 40px; }
.tracking-banner { position: relative; height: 277px; margin-bottom: 10px; }
.banner-photo { position: absolute; inset: 0 auto auto 0; width: 81%; height: 220px; overflow: hidden; border-radius: 0 0 155px 65px; clip-path: polygon(0 0, 100% 0, 83% 100%, 0 75%); }
.banner-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center 45%; display: block; }
.banner-copy { position: absolute; right: 6px; top: 110px; text-align: center; width: 205px; }
.banner-copy h1 { font-size: 23px; font-weight: 400; letter-spacing: .2px; line-height: 1.04; color: #626262; }
.banner-copy a { display: inline-block; color: #c72446; font-size: 22px; font-weight: 400; margin-top: 17px; letter-spacing: .5px; }
.banner-copy a:hover { color: #950022; }
.banner-delivery-icon { position: absolute; top: 128px; left: 81px; width: 74px; height: 74px; display: grid; place-items: center; background: #ca0731; border-radius: 50% 0 50% 50%; }
.banner-delivery-icon svg { width: 44px; height: 38px; fill: none; stroke: #fff; stroke-width: 1.4; }
.tracking-intro { text-align: center; margin: 8px auto 9px; max-width: 650px; }
.tracking-intro p { font-size: 12px; font-weight: 400; line-height: 1.6; color: #949494; }
.landing-demo-label { display: block; font-size: 8px; letter-spacing: .7px; color: #a7838a; margin-top: 10px; }
.search-card { max-width: 624px; margin: 0 auto; height: 158px; padding: 45px 25px 20px; background: #e7e7e8; border: 0; border-radius: 0; box-shadow: none; }
.search-card h2 { font-size: 19px; font-weight: 400; text-align: center; color: #454545; letter-spacing: .3px; margin-bottom: 9px; }
.search-row { width: 350px; max-width: 100%; margin: 0 auto; gap: 0; }
.input-wrap { height: 25px; border: 1px solid #c7c7c7; border-radius: 0; background: #fff; padding: 0 8px; }
.input-wrap input { height: 23px; font-family: Arial, sans-serif; font-size: 9px; letter-spacing: 0; color: #555; }
.input-wrap input::placeholder,.quick-tracking input::placeholder { color: #929292; opacity: 1; }
.input-wrap button { font-size: 14px; padding: 1px 0 1px 4px; color: #a5a5a5; }
.search-card .primary-button { height: 25px; min-width: 59px; padding: 0 8px; font-size: 10px; font-weight: 400; border-radius: 0; background: #e2484d; border: 1px solid #c94349; font-family: Arial,sans-serif; }
.search-card .primary-button:hover { background: #cd143d; }
.search-hint { text-align: center; margin-top: 13px; font-size: 9px; color: #959595; }
.search-hint button { color: #af3149; font-size: 9px; border-color: #caa1aa; }
.contact-strip { display: flex; justify-content: center; align-items: center; gap: 9px; width: 348px; max-width: 100%; margin: 16px auto 0; min-height: 27px; padding: 4px 15px; background: #9e1234; color: #edd0d8; font-size: 12px; font-weight: 400; }
.contact-strip span { font-size: 20px; line-height: 14px; }
.contact-strip:hover { background: #be123b; }
#tracking-result { margin-top: 32px; }
.result-heading { margin-top: 0; }
.result-heading .eyebrow, .eyebrow { color: #b24c64; }
.result-heading h2 { font-size: 20px; }
.shipment-code { background: #fafafa; color: #737373; }
.environment-notice { background: #fff5f6; border-color: #f1dde1; color: #a57882; border-radius: 3px; }
.environment-notice strong { color: #a82d4c; }
.dashboard-grid { grid-template-columns: 285px 1fr; gap: 16px; }
.status-card { background: #bc1039; padding: 23px; }
.status-card:after { border-color: #ffffff15; box-shadow: 0 0 0 23px #ffffff08, 0 0 0 46px #ffffff06; }
.status-pill { color: #fff; border-color: #ffffff60; background: #ffffff12; }
.package-icon { color: #fff; }
.status-kicker { color: #efc7d1; }
.status-card h2 { font-size: 28px; }
.status-card>p:not(.status-kicker),.delivery-estimate>span,.delivery-estimate small,.destination small,.destination div>span { color: #f1ccd5; }
.delivery-estimate { border-color: #ffffff33; }
.delivery-estimate strong,.destination>span { color: #fff; }
.destination { border-color: #ffffff33; }
.subtle-badge { color: #929292; border-color: #e6e6e6; background: #f7f7f7; }
.route-map { background: #f7f7f7; }
.map-legend { color: #999; background: #f7f7f7dd; }
.legend-dot { background: #ce0633; }
.destination-dot { background: transparent; border-color: #ce0633; }
.route-footer-icon { color: #bd2444; background: #fcf0f3; }
.route-footer p { color: #999; }
.route-card { border:1px solid #eae3e7; background:#fff; box-shadow:0 10px 35px #46223506; }
.route-card .route-card-heading { padding:24px; margin:0; border:0; align-items:center; }
.route-heading-copy { display:flex; align-items:center; gap:13px; min-width:0; }
.route-heading-icon { display:grid; place-items:center; width:42px; height:42px; border:1px solid #f1dce3; background:#fff4f7; border-radius:13px; color:#cc1742; flex-shrink:0; }
.route-heading-icon svg { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.route-card-heading .eyebrow { color:#c3264c; font-size:8px; letter-spacing:1.7px; margin-bottom:6px; }
.route-card-heading h3 { color:#35252e; font-size:16px; font-weight:650; line-height:1.4; }
.route-phase-badge { flex-shrink:0; padding:8px 11px; border:1px solid #eedbe2; border-radius:20px; background:#fff8fa; color:#a13f59; font-size:9px; font-weight:600; }
.route-card .route-map { display:flex; flex-direction:column; justify-content:center; align-items:stretch; min-height:0; margin:0 16px; border:1px solid #eee7e1; border-radius:15px; background:linear-gradient(135deg,#fffaf6,#f8f7f2); overflow:hidden; }
.route-map-topbar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:18px 19px 0; }
.route-map-topbar>div { display:flex; align-items:center; gap:7px; min-width:0; }
.map-location-icon { color:#b68090; font-size:20px; }.route-map-topbar strong { color:#76656d; font-size:10px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.map-illustration-label { color:#aa9a9c; font-size:7px; letter-spacing:1.2px; white-space:nowrap; }
.route-livebar { display:grid; grid-template-columns:auto minmax(150px,1fr) auto; align-items:center; gap:14px; margin:14px 18px 0; padding:12px 14px; border:1px solid #ecdee2; border-radius:13px; background:#fff; box-shadow:0 7px 24px #4e1c2b0b; }
.route-country,.route-live-status { display:flex; align-items:center; gap:9px; min-width:0; }
.country-mark { display:grid; place-items:center; width:35px; height:35px; flex-shrink:0; border-radius:11px; background:linear-gradient(145deg,#178b58,#0c6e45); box-shadow:inset 0 0 0 1px #ffffff2e; color:#fff; font:750 9px 'Segoe UI',sans-serif; letter-spacing:.5px; }
.route-livebar small { display:block; color:#af939c; font-size:6px; font-weight:700; letter-spacing:1px; line-height:1.5; }
.route-livebar strong { display:block; color:#523b44; font-size:9px; font-weight:700; line-height:1.45; }
.route-current-leg { min-width:0; padding:0 14px; border-left:1px solid #eee4e7; border-right:1px solid #eee4e7; }
.route-current-leg strong { margin-top:2px; color:#a31139; font-size:11px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.route-live-status { justify-content:flex-end; }
.route-live-status>span:last-child { min-width:0; }
.route-live-status strong { color:#178153; font-size:7px; letter-spacing:.55px; white-space:nowrap; }
.route-live-status small { margin-top:2px; letter-spacing:0; white-space:nowrap; }
.live-dot { position:relative; width:8px; height:8px; flex-shrink:0; border-radius:50%; background:#24a66a; box-shadow:0 0 0 4px #def4e9; }
.live-dot:after { content:''; position:absolute; inset:-5px; border:1px solid #55bb88; border-radius:50%; animation:live-pulse 2.2s ease-out infinite; }
@keyframes live-pulse { 0% { opacity:.9; transform:scale(.65); } 80%,100% { opacity:0; transform:scale(1.45); } }
.city-route-viewport { width:100%; overflow-x:auto; padding:38px 16px 32px; scrollbar-width:thin; scrollbar-color:#dfb2bf transparent; overscroll-behavior-x:contain; background:radial-gradient(circle at 15% 24%,#fff 0 2px,transparent 3px),linear-gradient(180deg,#fffdfb,#faf6f2); background-size:26px 26px,auto; }
.city-route { display:flex; align-items:flex-start; width:100%; min-width:590px; margin:0; padding:0; list-style:none; }
.city-stop { position:relative; min-width:118px; padding:0 6px; flex:1 1 0; text-align:center; color:#a98c96; }
.city-stop:not(:last-child):after { content:''; position:absolute; z-index:0; top:21px; left:calc(50% + 21px); width:calc(100% - 42px); height:3px; border-radius:3px; background:#e7d6dc; }
.city-stop.completed:not(:last-child):after { background:linear-gradient(90deg,#c8204a,#dd7892); }
.city-stop.current:not(:last-child):after { height:2px; background:repeating-linear-gradient(90deg,#dc9aac 0 6px,transparent 6px 11px); }
.city-stop-marker { position:relative; z-index:2; display:grid; place-items:center; width:44px; height:44px; margin:0 auto 17px; border:2px solid #dcb3bf; border-radius:50%; background:#fff; box-shadow:0 0 0 6px #fff8f9; color:#b77889; font:700 11px 'Segoe UI',sans-serif; }
.city-stop.completed .city-stop-marker { border-color:#c8204a; background:#c8204a; color:#fff; box-shadow:0 0 0 6px #f9e6eb; }
.city-stop.current .city-stop-marker { border:4px solid #fff; background:#a90e35; color:#fff; box-shadow:0 0 0 6px #f1c8d3,0 8px 20px #80102d2b; transform:scale(1.08); }
.city-stop.current .city-stop-marker:after { content:''; position:absolute; inset:-11px; border:1px solid #dc8da2; border-radius:50%; animation:city-pulse 2.5s ease-out infinite; }
.city-stop-card { min-height:132px; padding:16px 13px 13px; border:1px solid #eadfe2; border-radius:14px; background:#fff; box-shadow:0 7px 22px #4a28300a; text-align:left; transition:transform .2s ease,box-shadow .2s ease; }
.city-stop.current .city-stop-card { border-color:#a90e35; background:linear-gradient(145deg,#b5133c,#8f0c2d); box-shadow:0 13px 30px #8f0c2d2c; color:#fff; transform:translateY(-5px); }
.city-stop-kind { display:block; min-height:20px; color:#b07f8d; font-size:6.5px; font-weight:750; letter-spacing:1.05px; line-height:1.45; }
.city-stop.current .city-stop-kind { color:#f1c1ce; }
.city-stop-place { display:flex; align-items:center; gap:6px; min-width:0; margin-top:5px; }
.city-stop-place strong { color:#4b343d; font-size:12px; line-height:1.35; overflow-wrap:anywhere; }
.city-stop-place span { flex-shrink:0; padding:3px 5px; border-radius:5px; background:#faeef2; color:#a61b40; font-size:7px; font-weight:750; }
.city-stop.current .city-stop-place strong { color:#fff; }.city-stop.current .city-stop-place span { background:#ffffff20; color:#fff; }
.city-stop-neighborhood { margin-top:6px; color:#987f88; font-size:8px; line-height:1.4; }.city-stop.current .city-stop-neighborhood { color:#f3ccd6; }
.city-stop-meta { display:flex; justify-content:space-between; gap:6px; margin-top:14px; padding-top:10px; border-top:1px solid #f0e8ea; color:#a7959b; font-size:7px; line-height:1.3; }
.city-stop-meta span:last-child { text-align:right; }.city-stop.current .city-stop-meta { border-color:#ffffff24; color:#f5dce2; }
.city-stop.completed .city-stop-card { border-color:#ebcbd4; }.city-stop.pending .city-stop-card { background:#fffcfa; }
@keyframes city-pulse { 0% { opacity:.8; transform:scale(.82); } 75%,100% { opacity:0; transform:scale(1.25); } }
.route-canvas { width:100%; min-width:0; overflow-x:auto; scrollbar-width:thin; scrollbar-color:#e3bdc8 transparent; overscroll-behavior-x:contain; }
.route-card .route-map svg { width:100%; min-width:540px; height:auto; display:block; }
.route-stop { outline:none; }.route-stop:focus-visible>circle:first-of-type { stroke:#b82950; stroke-width:2; }
.route-card .map-legend { position:static; display:flex; justify-content:space-between; align-items:center; gap:12px; margin:0; padding:0 20px 18px; background:transparent; color:#8d7e86; font-size:9px; border-radius:0; }
.map-legend>div { display:flex; align-items:center; gap:17px; }.map-legend>div>span { display:flex; align-items:center; gap:7px; white-space:nowrap; }
.route-card .legend-dot { display:inline-block; width:7px; height:7px; border-radius:50%; flex-shrink:0; background:#ce1743; }.route-card .completed-dot { background:#ce1743; }.route-card .current-dot { background:#9f0d32; box-shadow:0 0 0 3px #f2d5dd; }.route-card .destination-dot { background:#fff; border:1.5px solid #ce8c9e; }
#route-map-count { font-size:8px; color:#aa979f; white-space:nowrap; }
.route-scroll-hint { display:none; }
.route-card .route-footer { gap:13px; padding:22px 24px; }
.route-card .route-footer-icon { width:42px; height:42px; flex-shrink:0; border:1px solid #f1dce3; border-radius:12px; background:#fff4f7; color:#c5234a; }
.route-footer-icon svg { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.route-latest-copy { min-width:0; flex:1; }.route-footer-label { display:block; color:#ae8a96; font-size:7px; font-weight:650; letter-spacing:1px; margin-bottom:6px; }
.route-card .route-footer strong { color:#5c404d; font-size:11px; font-weight:600; line-height:1.7; overflow-wrap:anywhere; }
.route-card .route-footer p { color:#aa979f; font-size:9px; line-height:1.6; margin-top:4px; }
.route-day-badge { flex-shrink:0; border:1px solid #eee3e7; background:#fbf8f9; color:#a48491; border-radius:9px; font-size:9px; padding:9px 10px; }
.fixed-duration { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:18px; padding:14px 15px; border:1px solid #eadde2; border-radius:10px; background:#fff7f9; }
.fixed-duration span { color:#aa7e8b; font-size:8px; font-weight:700; letter-spacing:1.1px; }
.fixed-duration strong { color:#9f1237; font-size:12px; font-weight:700; }
.route-current-halo { transform-box:fill-box; transform-origin:center; animation:route-halo 3s ease-in-out infinite; }
@keyframes route-halo { 0%,100% { opacity:.65; transform:scale(.9); } 50% { opacity:1; transform:scale(1.07); } }
@media(prefers-reduced-motion:reduce) { .route-current-halo,.city-stop.current .city-stop-marker:after,.live-dot:after { animation:none; } }
@media(max-width:680px) { .route-card .route-card-heading { padding:20px; align-items:flex-start; }.route-heading-icon { width:36px; height:36px; border-radius:11px; }.route-heading-copy { gap:10px; }.route-card-heading h3 { font-size:14px; }.route-phase-badge { max-width:105px; font-size:8px; padding:7px 9px; text-align:center; line-height:1.5; }.route-card .route-map { margin:0 12px; }.route-map-topbar { padding:16px 15px 0; }.map-illustration-label { font-size:6px; }.route-livebar { grid-template-columns:1fr auto; gap:11px; margin:12px 12px 0; padding:11px 12px; }.route-current-leg { grid-column:1/-1; grid-row:2; padding:10px 0 0; border:0; border-top:1px solid #eee4e7; }.route-live-status { justify-content:flex-end; }.route-card .map-legend { padding:8px 15px 12px; font-size:8px; flex-wrap:wrap; }.route-card .route-footer { padding:20px; }.route-card .route-footer strong { font-size:10px; }.route-day-badge { font-size:8px; padding:8px; }.side-column { display:block; }.side-column .info-card { width:100%; } }
@media(max-width:600px) { .route-scroll-hint { display:block; color:#b49ba5; text-align:center; font-size:8px; padding:0 12px 13px; }.city-route-viewport { padding:34px 8px 27px; }.city-route { width:max-content; min-width:0; }.city-stop { width:143px; min-width:143px; flex:1 0 143px; padding:0 6px; }.city-stop-card { min-height:128px; padding:14px 11px 12px; }.city-stop-place strong { font-size:11px; } }
.journey-heading>span { color: #a26373; }
.stages li { color: #999; }
.stages li:before { background: #e8e8e8; }
.stage-marker { background: #f3f3f3; }
.stages .complete,.stages .current { color: #b2143b; }
.stages .complete:before,.stages .current:before { background: #e6a3b4; }
.stages .complete .stage-marker { background: #f8e1e8; color: #b2143b; }
.stages .current .stage-marker { box-shadow: 0 0 0 3px #fbe8ed; }
.details-grid { grid-template-columns: 1fr 260px; gap: 16px; }
.timeline li:before { background: #e6e6e6; }
.event-dot { background: #d8b5bf; border-color: #f5e9ed; }
.timeline li:first-child .event-dot { border-color: #e7b5c2; box-shadow: 0 0 0 3px #fff2f5; }
.timeline .event-location { color: #888; }
.timeline .event-detail,.event-time { color: #a0a0a0; }
.event-time span { color: #bbb; }
.event-day { color: #b06a7b; background: #fff3f6; }
.history-card { overflow:hidden; border-color:#eadfe3; box-shadow:0 10px 35px #46223506; }
.history-card>.history-heading { margin:0; padding:23px 24px 19px; border-bottom:1px solid #eee6e9; background:linear-gradient(180deg,#fff,#fffdfd); }
.history-heading .eyebrow { margin-bottom:7px; color:#bd3153; font-size:7px; letter-spacing:1.35px; }
.history-heading h3 { color:#35272d; font-size:15px; font-weight:700; }
.history-subtitle { margin-top:6px; color:#a28f96; font-size:8px; line-height:1.5; }
.history-heading .subtle-badge { border-color:#eddce2; border-radius:20px; background:#fff6f8; color:#a4465e; padding:6px 10px; font-weight:650; }
.history-card .timeline { margin:0; padding:22px 22px 8px; background:linear-gradient(180deg,#fff,#fffcfd); }
.history-card .timeline li { position:relative; display:grid; grid-template-columns:38px minmax(0,1fr); align-items:start; gap:12px; padding:0 0 17px; }
.history-card .timeline li:before { content:''; position:absolute; z-index:0; left:15px; top:31px; bottom:-2px; width:2px; border-radius:2px; background:linear-gradient(#d98299,#e9bcc8); }
.history-card .timeline li:last-child:before { display:none; }
.history-card .event-dot { position:relative; z-index:2; display:grid; place-items:center; width:31px; height:31px; margin:3px 0 0; border:2px solid #fff; border-radius:10px; background:linear-gradient(145deg,#dc5a7a,#bd294e); box-shadow:0 0 0 2px #f3d7df,0 6px 15px #8e244025; }
.history-card .event-dot:after { content:'✓'; color:#fff; font:700 11px 'Segoe UI',sans-serif; }
.history-card .current-event .event-dot { border-color:#fff; background:linear-gradient(145deg,#d51a49,#a90d35); box-shadow:0 0 0 4px #f9e5eb,0 8px 18px #9e14362d; }
.history-card .current-event .event-dot:before { content:''; position:absolute; inset:-7px; border:1px solid #e397aa; border-radius:14px; animation:history-pulse 2.5s ease-out infinite; }
.event-content { position:relative; min-width:0; overflow:hidden; padding:15px 16px 0; border:1px solid #e7cbd3; border-radius:13px; background:#fff; box-shadow:0 7px 21px rgba(77,38,50,.075); }
.event-content:before { content:''; position:absolute; inset:0 auto 0 0; width:4px; background:linear-gradient(#d84a6d,#bb2148); }
.current-event .event-content { border-color:#edcbd5; background:linear-gradient(135deg,#fff8fa,#fff); box-shadow:0 9px 24px #8c183217; }
.current-event .event-content:before { background:linear-gradient(#d51a49,#a90d35); }
.event-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
.event-title { min-width:0; }
.event-current-label { display:inline-flex; align-items:center; gap:5px; margin-bottom:6px; color:#bf2049; font-size:6px; font-weight:750; letter-spacing:1.15px; }
.event-current-label:before { content:''; width:5px; height:5px; border-radius:50%; background:#d01643; box-shadow:0 0 0 3px #fae7ec; }
.history-card .timeline h4 { margin:0; color:#38292f; font-size:12px; font-weight:700; line-height:1.45; }
.history-card .timeline .event-location { position:relative; margin-top:10px; padding-left:17px; color:#5f454f; font-size:9px; font-weight:650; line-height:1.55; }
.history-card .timeline .event-location:before { content:''; position:absolute; left:1px; top:3px; width:8px; height:8px; border:1.5px solid #c42a50; border-radius:50% 50% 50% 0; transform:rotate(-45deg); }
.history-card .timeline .event-location:after { content:''; position:absolute; left:4.5px; top:6.5px; width:3px; height:3px; border-radius:50%; background:#c42a50; }
.history-card .timeline .event-detail { margin-top:10px; padding:9px 11px; border:1px solid #eadde1; border-radius:8px; background:#f9f5f6; color:#745f67; font-size:8.5px; font-weight:500; line-height:1.65; }
.history-card .event-day { flex-shrink:0; margin:0; padding:5px 8px; border:1px solid #e8bdc9; border-radius:6px; background:#fff0f4; color:#a71940; font-size:7px; font-weight:750; }
.event-card-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:12px -16px 0; padding:9px 16px; border-top:1px solid #e9d9de; background:#faf4f6; }
.event-status { display:inline-flex; align-items:center; gap:6px; color:#855565; font-size:7px; font-weight:700; letter-spacing:.25px; }
.event-status:before { content:'✓'; display:grid; place-items:center; width:14px; height:14px; border-radius:50%; background:#c92a51; color:#fff; font-size:7px; }
.history-card .event-time { display:flex; flex-direction:row; align-items:center; gap:5px; margin:0; padding:0; border:0; background:transparent; color:#76676d; text-align:right; white-space:nowrap; }
.history-card .event-time strong { color:#5f4b53; font-size:7px; font-weight:700; }.history-card .event-time span { color:#8e757e; font-size:7px; }.history-card .event-time span:before { content:'·'; margin-right:5px; }
@keyframes history-pulse { 0% { opacity:.8; transform:scale(.82); } 75%,100% { opacity:0; transform:scale(1.18); } }
@media(max-width:600px) { .history-card>.history-heading { padding:20px 18px 17px; }.history-card .timeline { padding:19px 12px 6px; }.history-card .timeline li { grid-template-columns:31px minmax(0,1fr); gap:8px; padding-bottom:15px; }.history-card .timeline li:before { left:13px; }.history-card .event-dot { width:27px; height:27px; border-radius:9px; }.event-content { padding:14px 12px 0; border-radius:12px; }.event-heading { padding-right:0; }.history-card .timeline h4 { font-size:11px; }.history-card .timeline .event-location { font-size:8.5px; }.history-card .timeline .event-detail { margin-top:9px; padding:9px; font-size:8px; }.event-card-footer { margin:11px -12px 0; padding:9px 12px; }.history-card .event-time { position:static; flex-direction:column; align-items:flex-end; gap:2px; }.history-card .event-time strong { font-size:7px; }.history-card .event-time span:before { display:none; } }
.info-icon { color: #c4415f; background: #fff1f4; }
.info-card p,.preview-card>p:not(.eyebrow),.info-label { color: #999; }
.preview-card { background: #fff7f9; border-color: #f0dfe4; }
.preview-card label { color: #aa7a85; }
.preview-card label strong { color: #ad3250; }
.range-labels { color: #b799a1; }
.text-button { color: #b02c4b; }
.primary-button { color: #fff; }
.primary-button:hover { background: #a60029; }
.hero h1 span { color: #c4415f; }
.hero .hero-description,.summary-card span { color: #999; }
.summary-card { border-radius: 5px; }
th { background: #fafafa; color: #929292; }
td small { color: #999; }
td code,.table-status { color: #ad4059; }
th,td { border-color: #eee; }
dialog { border-color: #e4e4e4; border-radius: 6px; box-shadow: 0 20px 90px #33333330; }
dialog::backdrop { background: #33333360; }
.dialog-description,.form-note { color: #999; }
dialog input,dialog select { background: #fafafa; color: #555; border-radius: 3px; }
.close-button { background: #f5f5f5; color: #888; }
.info-dialog-content { margin: 22px 0 26px; }
.info-dialog-content p { color: #888; font-size: 12px; line-height: 1.8; margin: 14px 0; }
footer { margin-top: 36px; color: #aaa; padding: 24px 0; font-size: 9px; gap: 15px; }
.footer-brand { color: #555; font-family: Arial,sans-serif; font-size: 18px; letter-spacing: -.6px; }
.footer-mode { margin-left: 0; color: #b7929b; font-size: 7px; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible { outline-color: #d96581; }
@media (min-width: 1450px) { main,.header { max-width: 1080px; } .header-inner { max-width: none; } .dashboard-grid { grid-template-columns: 310px 1fr; } }
@media (max-width: 960px) { .brand-tagline { display: none; } .header-tools { margin-left: auto; } .site-nav button { padding: 0 8px; font-size: 9px; } .banner-copy { width: 175px; right: 0; } .banner-copy h1 { font-size: 21px; } .banner-copy a { font-size: 20px; } .banner-photo { width: 80%; } }
@media (max-width: 680px) {
  .header { padding: 0 18px; }
  .header-inner { height: auto; min-height: 122px; flex-wrap: wrap; gap: 0; padding: 0; }
  .brand { margin: 14px 0 8px; font-size: 30px; gap: 7px; }
  .tracklog-mark { width: 38px; height: 42px; }
  .header-tools { width: 100%; margin: 0 0 12px; }
  .utility-row { position: absolute; right: 0; top: 15px; height: 25px; }
  .utility-row>span { font-size: 9px; }
  .utility-row button { display: none; }
  .quick-tracking { margin-top: 0; }
  .quick-tracking label { font-size: 7px; }
  .quick-tracking input { width: 112px; }
  .header .site-nav { height: 38px; overflow-x: auto; justify-content: flex-start; }
  .site-nav button { flex-shrink: 0; padding: 0 15px; font-size: 9px; }
  main { padding: 0 18px; }
  .tracking-banner { height: 244px; margin-bottom: 0; }
  .banner-photo { height: 170px; width: 100%; border-bottom-right-radius: 90px; border-bottom-left-radius: 36px; clip-path: polygon(0 0,100% 0,88% 100%,0 83%); }
  .banner-photo img { object-position: center 40%; }
  .banner-delivery-icon { top: 114px; left: 24px; width: 54px; height: 54px; }
  .banner-delivery-icon svg { width: 33px; height: 28px; }
  .banner-copy { top: 177px; right: 4px; width: auto; text-align: right; display: flex; align-items: center; gap: 15px; }
  .banner-copy h1 { font-size: 14px; line-height: 1.1; letter-spacing: 0; }
  .banner-copy a { font-size: 16px; margin: 0; letter-spacing: 0; }
  .tracking-intro { margin-top: 0; }
  .tracking-intro p { font-size: 10px; }
  .tracking-intro p br { display: none; }
  .landing-demo-label { font-size: 7px; letter-spacing: .4px; }
  .search-card { margin-top: 12px; height: 155px; padding: 39px 19px 20px; }
  .search-card h2 { font-size: 18px; }
  .search-row { flex-direction: row; gap: 0; width: 350px; }
  .input-wrap { height: 29px; }
  .input-wrap input { height: 27px; font-size: 9px; }
  .search-card .primary-button { height: 29px; }
  .contact-strip { font-size: 11px; width: 290px; }
  .dashboard-grid,.details-grid { grid-template-columns: 1fr; }
  .status-card { padding: 22px; }
  .delivery-estimate { border-color: #ffffff33; }
  .side-column { grid-template-columns: 1fr 1fr; }
  footer { flex-wrap: wrap; gap: 10px 12px; }
  footer>p { display: none; }
  .footer-mode { font-size: 6px; }
}
@media (max-width: 370px) { .quick-tracking label { font-size: 6px; } .quick-tracking input { width: 100px; } .banner-copy { gap: 12px; } .banner-copy h1 { font-size: 13px; } .banner-copy a { font-size: 15px; } .side-column { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Página do cliente: identidade TrackLog e consulta em destaque. */
td code, .shipment-code {
  display: inline-flex;
  align-items: center;
  background: #faf4f7;
  border: 1px solid #eddee6;
  color: #573345;
  border-radius: 8px;
  padding: 7px 10px;
  font-family: Consolas, monospace;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .2px;
}
:root {
  --ink: #292c35;
  --muted: #71747d;
  --line: #e9e9ed;
  --radius: 16px;
  font-family: 'Segoe UI', Arial, sans-serif;
}
body { background: #fdfdfd; }
.header { max-width: 1240px; padding: 0 32px; background: transparent; }
.header-inner { height: 99px; gap: 25px; flex-wrap: nowrap; }
.brand { align-self: center; margin: 0; font-size: 33px; gap: 10px; color: #272a32; letter-spacing: -1.4px; }
.tracklog-mark { width: 44px; height: 46px; }
.brand-tagline { display: block; align-self: center; margin: 0 auto 0 0; font-size: 11px; line-height: 1.7; color: #81838a; font-family: inherit; }
.header-tools { align-self: center; width: 380px; }
.utility-row { height: 26px; gap: 24px; font-size: 10px; color: #80828b; }
.utility-row button { color: #646774; font-size: 10px; }
.quick-tracking { height: 43px; margin-top: 4px; padding: 4px 5px 4px 12px; gap: 10px; background: #f5f5f7; border: 1px solid #e9e9ed; border-radius: 9px; }
.quick-tracking svg { width: 23px; height: 23px; stroke: #c70b36; stroke-width: 1.25; }
.quick-tracking label { position: absolute; width: 1px; height: 1px; clip: rect(0,0,0,0); overflow: hidden; }
.quick-tracking input { flex: 1; width: 0; height: 33px; border: 0; padding: 0; font-size: 10px; color: #545763; background: transparent; }
.quick-tracking button { height: 33px; padding: 0 17px; margin: 0; border-radius: 6px; background: #cb0735; font-size: 11px; font-weight: 600; }
.header .site-nav { height: 49px; border: 0; border-top: 1px solid #f0f0f3; border-bottom: 1px solid #e9e9ed; box-shadow: none; justify-content: center; gap: 25px; background: transparent; }
.site-nav button { padding: 0 12px; font-size: 12px; font-weight: 500; color: #747682; }
.site-nav .nav-button.active:after { left: 12px; right: 12px; height: 2px; }
main { max-width: 1240px; padding: 0 32px; }
.tracking-banner { height: 405px; margin: 28px 0 0; border-radius: 25px; border: 1px solid #f0e7e9; overflow: hidden; background: #fbf3f4; isolation: isolate; }
.tracking-banner:before { content: ''; position: absolute; width: 290px; height: 290px; left: -170px; bottom: -150px; border: 1px solid #eecbd4; border-radius: 50%; box-shadow: 0 0 0 30px #f6dce438, 0 0 0 60px #f6dce424; z-index: -1; }
.banner-photo { inset: 0 0 0 auto; width: 59%; height: 100%; border-radius: 0; clip-path: polygon(19% 0,100% 0,100% 100%,0 100%); }
.banner-photo:after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,#30232932,transparent 55%); pointer-events: none; }
.banner-photo img { object-position: 56% center; height: 100%; }
.banner-copy { top: 42px; left: 48px; right: auto; width: 48%; text-align: left; display: block; }
.banner-eyebrow { display: flex; gap: 9px; align-items: center; font-size: 9px; letter-spacing: 1.8px; font-weight: 700; color: #b53a56; margin-bottom: 20px; }
.banner-eyebrow>span { height: 6px; width: 6px; background: #ce0633; border-radius: 50%; box-shadow: 0 0 0 4px #f5dde3; }
.banner-copy h1 { font-size: clamp(40px,4.6vw,55px); font-weight: 650; line-height: 1.04; letter-spacing: -2px; color: #2e3039; }
.banner-copy h1>span { color: #cf0736; }
.banner-description { color: #777680; font-size: 12px; line-height: 1.8; margin-top: 19px; }
.banner-copy>a { color: #b5123b; font-size: 11px; font-weight: 600; margin-top: 21px; letter-spacing: 0; display: inline-flex; align-items: center; gap: 22px; padding-bottom: 5px; border-bottom: 1px solid #dcb2bf; }
.banner-copy>a>span { font-size: 17px; }
.banner-delivery-icon { top: auto; left: auto; right: 23px; bottom: 23px; width: auto; height: auto; min-width: 228px; display: flex; gap: 14px; align-items: center; padding: 16px 19px; background: #fffffff5; color: #30313a; border-radius: 13px; box-shadow: 0 8px 30px #291f3020; border: 1px solid #ffffff80; }
.banner-delivery-icon svg { width: 34px; height: 31px; stroke: #ce0633; stroke-width: 1.7; flex-shrink: 0; }
.banner-delivery-icon strong { font-size: 11px; font-weight: 650; display: block; }
.banner-delivery-icon div>span { display: block; margin-top: 5px; font-size: 10px; color: #92919a; }
.lookup-area { position: relative; margin: -2px auto 0; max-width: 875px; z-index: 1; }
.search-card { max-width: none; height: auto; margin: 0; padding: 30px 38px 24px; background: #fff; border: 1px solid #e9e8ec; border-top: 3px solid #ce0633; border-radius: 0 0 17px 17px; box-shadow: 0 14px 40px #30242e08; }
.search-card-heading { display: flex; align-items: center; gap: 17px; margin-bottom: 23px; }
.search-card-icon { display: grid; place-items: center; height: 53px; width: 53px; background: #fff0f4; border: 1px solid #f9e0e7; border-radius: 13px; color: #ce0633; flex-shrink: 0; }
.search-card-icon svg { height: 30px; width: 30px; fill: none; stroke: currentColor; stroke-width: 1.25; }
.search-eyebrow { font-size: 8px; letter-spacing: 1.7px; color: #c2516b; font-weight: 700; margin-bottom: 5px; }
.search-card h2 { color: #30313a; font-size: 23px; font-weight: 600; text-align: left; letter-spacing: -.6px; margin-bottom: 6px; }
.search-description { color: #85848e; font-size: 11px; line-height: 1.6; }
.search-card>label { font-size: 10px; font-weight: 600; color: #666571; margin-bottom: 9px; }
.search-row { width: 100%; max-width: none; gap: 11px; }
.input-wrap { height: 53px; background: #fafafa; border: 1px solid #e0dfe5; border-radius: 9px; padding: 0 15px; transition: border-color .2s,box-shadow .2s; }
.input-wrap:focus-within { border-color: #d2486b; box-shadow: 0 0 0 3px #cf07360b; }
.search-input-icon { width: 19px; height: 19px; flex-shrink: 0; stroke: #a39ba3; stroke-width: 1.25; margin-right: 12px; fill: none; }
.input-wrap input { font-family: inherit; height: 50px; font-size: 13px; letter-spacing: .4px; color: #474650; }
.input-wrap input::placeholder { font-size: 12px; color: #acabb4; }
.input-wrap button { width: 24px; height: 26px; font-size: 20px; padding: 0; color: #aca4ac; }
.search-card .primary-button { height: 53px; padding: 0 24px; min-width: 185px; font-family: inherit; font-size: 12px; font-weight: 600; background: #ce0633; border: 1px solid #ce0633; border-radius: 9px; gap: 19px; box-shadow: 0 4px 10px #ce06331a; }
.search-card .primary-button svg { width: 17px; height: 17px; stroke: #fff; fill: none; stroke-width: 1.5; }
.search-card .primary-button:hover { background: #b5002a; box-shadow: 0 6px 17px #ce063329; }
.search-bottom { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 13px; }
.search-bottom>p { font-size: 9px; color: #92909b; line-height: 1.6; }
.search-hint { margin: 0; white-space: nowrap; }
.search-hint button { font-family: inherit; color: #ba3052; font-size: 9px; background: #fff1f5; border: 1px solid #f6e0e8; border-radius: 5px; padding: 4px 7px; margin-left: 5px; }
.search-hint button:hover { background: #fbe0e9; }
.search-hint button>span { padding-left: 4px; }
.lookup-reassurance { display: flex; align-items: center; justify-content: center; gap: 25px; margin-top: 19px; }
.lookup-reassurance>span { display: inline-flex; align-items: center; gap: 6px; font-size: 9px; color: #92909b; }
.lookup-reassurance svg { width: 14px; height: 14px; stroke: #a39aab; fill: none; stroke-width: 1.3; }
.lookup-reassurance .landing-demo-label { font-size: 8px; color: #b38291; letter-spacing: 0; margin: 0; padding-left: 20px; border-left: 1px solid #e6dfe4; }
.customer-guide { margin: 55px 0 0; padding: 0 18px; display: grid; grid-template-columns: 245px 1fr; gap: 37px; align-items: center; }
.customer-guide-heading .eyebrow { font-size: 8px; color: #ad6478; letter-spacing: 1.4px; margin-bottom: 11px; }
.customer-guide-heading h2 { font-size: 22px; line-height: 1.3; font-weight: 550; letter-spacing: -.6px; color: #4a4652; }
.customer-guide ol { display: grid; grid-template-columns: repeat(3,1fr); list-style: none; padding: 0; margin: 0; gap: 25px; }
.customer-guide li { border-left: 1px solid #ebe5e9; padding-left: 20px; }
.guide-number { display: inline-block; font-size: 10px; font-weight: 600; letter-spacing: 1px; color: #c45975; background: #fbf0f3; border-radius: 5px; padding: 5px 7px; margin-bottom: 13px; }
.customer-guide h3 { font-size: 11px; font-weight: 600; color: #615b68; line-height: 1.5; }
.customer-guide p:not(.eyebrow) { font-size: 10px; line-height: 1.8; color: #95909d; margin-top: 7px; }
.contact-strip { display: flex; align-items: center; justify-content: flex-start; width: 100%; max-width: none; margin: 36px 0 0; padding: 19px 25px; gap: 15px; background: #f6f5f7; border: 1px solid #efedf1; border-radius: 12px; color: #5f5868; text-align: left; }
.contact-strip:hover { background: #f1edf2; }
.contact-strip .contact-icon { display: grid; place-items: center; width: 37px; height: 37px; background: #fff; border: 1px solid #e8e2ea; border-radius: 10px; }
.contact-icon svg { width: 20px; height: 20px; stroke: #a6637e; fill: none; stroke-width: 1.3; }
.contact-copy { display: block; }
.contact-copy strong { display: block; font-size: 12px; font-weight: 550; }
.contact-copy>span { display: block; font-size: 10px; line-height: 1.7; color: #99919f; margin-top: 4px; }
.contact-strip .contact-action { margin-left: auto; color: #b83759; font-size: 10px; }
.contact-action>span { margin-left: 16px; font-size: 17px; }
footer { padding: 28px 0; margin-top: 32px; font-size: 10px; color: #98909d; }
.footer-brand { font-size: 21px; color: #45404c; letter-spacing: -.7px; }
footer>p { display: block; font-size: 10px; }
.footer-mode { border: 1px solid #ede1e6; padding: 5px 7px; border-radius: 5px; font-size: 7px; color: #ad8192; }
#tracking-result { margin-top: 32px; }
.status-card { border-radius: 16px; }
.route-card,.journey-card,.history-card,.info-card,.preview-card { border-radius: 16px; }
.environment-notice { border-radius: 9px; }
dialog { border-radius: 18px; }
@media (max-width: 1000px) {
  .header .site-nav { gap: 12px; }
  .banner-copy { left: 33px; top: 50px; }
  .banner-copy h1 { font-size: 48px; }
  .banner-photo { width: 57%; }
  .customer-guide { grid-template-columns: 1fr; gap: 24px; }
  .customer-guide-heading h2 br { display: none; }
  .customer-guide ol { gap: 25px; }
}
@media (max-width: 760px) {
  .brand-tagline { display: none; }
  .header-inner { gap: 20px; }
  .header-tools { width: 320px; margin-left: auto; }
  .site-nav button { font-size: 11px; padding: 0 8px; }
  .header .site-nav { gap: 8px; }
  .banner-copy { left: 26px; width: 49%; }
  .banner-copy h1 { font-size: 43px; }
  .banner-description { font-size: 11px; }
  .banner-delivery-icon { right: 15px; bottom: 18px; min-width: 0; padding: 13px; gap: 10px; }
  .banner-delivery-icon strong { font-size: 10px; }
  .banner-delivery-icon div>span { font-size: 9px; }
  .search-card { padding: 26px; }
  .search-bottom { align-items: flex-start; }
  .search-bottom>p { max-width: 55%; }
  .search-card .primary-button { min-width: 155px; padding: 0 16px; }
  .lookup-reassurance { gap: 15px; }
  .lookup-reassurance .landing-demo-label { padding-left: 15px; }
}
@media (max-width: 600px) {
  .header { padding: 0 20px; }
  .header-inner { min-height: 0; height: 85px; flex-wrap: nowrap; gap: 15px; }
  .brand { font-size: 28px; gap: 7px; }
  .tracklog-mark { width: 36px; height: 39px; }
  .header-tools { width: auto; margin: 0 0 0 auto; align-self: center; }
  .utility-row { position: static; height: auto; display: flex; justify-content: flex-end; }
  .utility-row>span { display: none; }
  .utility-row button { display: block; font-size: 10px; background: #f6f3f5; border: 1px solid #ebe5e9; padding: 9px 10px; border-radius: 7px; }
  .quick-tracking { display: none; }
  .header .site-nav { height: 44px; justify-content: flex-start; gap: 10px; overflow-x: auto; scrollbar-width: none; }
  .header .site-nav::-webkit-scrollbar { display: none; }
  .site-nav button { font-size: 10px; flex-shrink: 0; padding: 0 8px; }
  main { padding: 0 20px; }
  .tracking-banner { height: 543px; margin-top: 20px; border-radius: 20px; }
  .banner-copy { top: 29px; left: 25px; width: calc(100% - 50px); right: auto; text-align: left; display: block; }
  .banner-eyebrow { font-size: 8px; margin-bottom: 16px; letter-spacing: 1.5px; }
  .banner-copy h1 { font-size: 43px; line-height: 1.01; letter-spacing: -1.6px; }
  .banner-copy h1 br:last-of-type { display: none; }
  .banner-copy h1>span { display: inline; margin-left: 4px; }
  .banner-description { font-size: 11px; margin-top: 15px; line-height: 1.7; }
  .banner-copy>a { font-size: 10px; margin-top: 17px; gap: 18px; }
  .banner-photo { top: auto; bottom: 0; right: 0; width: 100%; height: 232px; border-radius: 0; clip-path: polygon(0 10%,100% 0,100% 100%,0 100%); }
  .banner-photo img { object-position: 56% center; }
  .banner-delivery-icon { right: 14px; bottom: 15px; padding: 12px 14px; border-radius: 10px; }
  .banner-delivery-icon svg { width: 28px; height: 27px; }
  .lookup-area { margin: 18px auto 0; }
  .search-card { border-radius: 15px; padding: 25px 21px 22px; }
  .search-card-heading { gap: 12px; margin-bottom: 22px; }
  .search-card-icon { width: 43px; height: 43px; border-radius: 11px; }
  .search-card-icon svg { width: 25px; height: 25px; }
  .search-eyebrow { font-size: 7px; letter-spacing: 1.4px; }
  .search-card h2 { font-size: 19px; letter-spacing: -.5px; line-height: 1.2; margin-bottom: 6px; }
  .search-description { font-size: 10px; line-height: 1.5; }
  .search-row { flex-direction: column; width: 100%; gap: 10px; }
  .input-wrap { height: 51px; flex: auto; }
  .input-wrap input { height: 48px; font-size: 16px; }
  .input-wrap input::placeholder { font-size: 12px; }
  .search-card .primary-button { width: 100%; height: 49px; font-size: 12px; }
  .search-bottom { flex-direction: column; align-items: flex-start; gap: 9px; margin-top: 13px; }
  .search-bottom>p { max-width: none; font-size: 9px; }
  .lookup-reassurance { flex-wrap: wrap; gap: 10px 16px; margin-top: 17px; }
  .lookup-reassurance>span { font-size: 8px; }
  .lookup-reassurance .landing-demo-label { width: 100%; justify-content: center; border: 0; padding: 0; font-size: 8px; }
  .customer-guide { margin-top: 38px; padding: 0 3px; gap: 22px; }
  .customer-guide-heading h2 { font-size: 21px; }
  .customer-guide-heading h2 br { display: block; }
  .customer-guide ol { grid-template-columns: 1fr; gap: 20px; }
  .customer-guide li { display: flex; align-items: flex-start; gap: 14px; padding-left: 0; border: 0; }
  .guide-number { padding: 7px 9px; margin: 0; font-size: 10px; flex-shrink: 0; }
  .customer-guide h3 { font-size: 12px; }
  .customer-guide p:not(.eyebrow) { font-size: 11px; margin-top: 5px; line-height: 1.7; }
  .contact-strip { margin-top: 30px; padding: 17px; gap: 12px; flex-wrap: wrap; }
  .contact-copy strong { font-size: 12px; }
  .contact-copy>span { font-size: 10px; }
  .contact-strip .contact-action { margin: 4px 0 0 49px; font-size: 10px; }
  footer { gap: 12px; margin-top: 26px; padding: 24px 0; }
  footer>p { display: none; }
  .footer-mode { width: auto; font-size: 6px; }
}
@media (max-width: 380px) {
  .header,main { padding-left: 16px; padding-right: 16px; }
  .brand { font-size: 25px; }
  .utility-row button { font-size: 8px; padding: 9px; }
  .banner-copy { left: 22px; width: calc(100% - 44px); }
  .banner-copy h1 { font-size: 38px; }
  .search-card { padding: 23px 17px; }
  .search-card h2 { font-size: 17px; }
}

/* Integração administrativa com o checkout próprio. */
.admin-navigation { display: flex; gap: 7px; border-bottom: 1px solid #e9e3e8; margin: 24px 0 28px; padding-bottom: 10px; }
.admin-navigation button { background: transparent; padding: 11px 17px; border-radius: 8px; color: #8c7d8b; font-size: 12px; }
.admin-navigation button.selected { color: #ab2149; background: #fff0f5; font-weight: 600; }
.admin-navigation button>span { margin-left: 10px; }
.integration-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 25px; }
.integration-heading h2 { font-size: 25px; font-weight: 600; letter-spacing: -.7px; }
.integration-heading .eyebrow { font-size: 9px; margin-bottom: 10px; }
.integration-heading p:not(.eyebrow) { font-size: 12px; color: #938493; line-height: 1.8; margin-top: 10px; }
.integration-status { font-size: 10px; border: 1px solid #e6dce3; border-radius: 20px; padding: 9px 12px; color: #9e8698; background: #faf6f9; white-space: nowrap; }
.integration-status.enabled { color: #6b7b55; background: #f4f7ee; border-color: #e0e7d3; }
.integration-flow { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; list-style: none; padding: 0; margin: 0 0 24px; }
.integration-flow li { background: #f7f4f7; border: 1px solid #ece6ec; border-radius: 10px; padding: 17px; color: #8b7488; font-size: 11px; display: flex; align-items: center; gap: 13px; }
.integration-flow li>span { font-size: 11px; color: #b82b52; font-weight: 650; }
.integration-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.integration-card { min-width: 0; padding: 27px; background: #fff; border: 1px solid #e8e0e7; border-radius: 14px; }
.integration-card .eyebrow { font-size: 8px; margin-bottom: 10px; }
.integration-card h3 { font-size: 18px; font-weight: 600; letter-spacing: -.4px; }
.integration-card label { display: block; margin-top: 23px; font-size: 11px; color: #866e81; font-weight: 550; }
.integration-card label>span { font-weight: 400; color: #b3a1b1; margin-left: 5px; }
.integration-card input:not([type=checkbox]),.integration-docs-heading select { width: 100%; min-width: 0; height: 44px; padding: 0 12px; border: 1px solid #e4d9e2; border-radius: 7px; margin-top: 9px; color: #685364; background: #fdfbfd; font-size: 12px; }
.integration-card input::placeholder { color: #baa7b7; font-size: 11px; }
.integration-help { font-size: 11px; line-height: 1.8; color: #a08b9b; margin-top: 13px; overflow-wrap: anywhere; }
.integration-help code { font-size: 11px; color: #9b5875; }
.integration-card .integration-switch { display: flex; gap: 10px; align-items: flex-start; margin: 25px 0; }
.integration-switch input { accent-color: #b42551; margin-top: 3px; width: 16px; height: 16px; }
.integration-switch>span { margin: 0; }
.integration-switch strong { display: block; color: #876780; font-size: 11px; font-weight: 600; }
.integration-switch small { display: block; font-size: 10px; line-height: 1.8; color: #b29bab; margin-top: 5px; }
.integration-key-row,.integration-endpoint-row { display: flex; align-items: center; gap: 12px; }
.integration-key-row input { flex: 1; font-family: Consolas,monospace; }
.integration-key-row button { margin-top: 9px; }
.integration-actions { display: flex; align-items: center; gap: 17px; margin-top: 20px; }
.integration-actions .primary-button { font-size: 11px; gap: 12px; }
.integration-test { border-top: 1px solid #eee5ed; padding-top: 20px; margin-top: 25px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.integration-test>span { font-size: 10px; color: #a08499; }
.integration-docs { margin: 24px 0; }
.integration-docs-heading { display: flex; justify-content: space-between; align-items: center; gap: 18px; }
.integration-docs-heading select { width: 190px; margin: 0; font-size: 11px; }
.integration-endpoint-row input { font-family: Consolas,monospace; color: #9a3d67!important; }
.integration-endpoint-row button { margin-top: 9px; }
.code-heading { display: flex; justify-content: space-between; align-items: center; margin-top: 22px; padding: 12px 17px; border: 1px solid #e8dbe5; border-bottom: 0; border-radius: 9px 9px 0 0; background: #f8f2f7; font-size: 10px; color: #9b7b90; }
.code-heading button { background: transparent; color: #b8406c; font-size: 10px; }
.integration-card pre { margin: 0; padding: 21px; border: 1px solid #e8dbe5; border-radius: 0 0 9px 9px; background: #fcf9fc; overflow-x: auto; font: 11px/1.9 Consolas,monospace; color: #8b5773; }
.integration-response { margin-top: 27px; }
.integration-response h4 { font-size: 12px; font-weight: 600; color: #936480; margin: 0 0 13px; }
.integration-response pre { border-radius: 9px; }
.integration-local-notice { padding: 15px 17px; background: #fff4f7; border: 1px solid #f0dfe6; border-radius: 9px; margin-top: 25px; font-size: 11px; line-height: 1.9; color: #aa768c; }
#integration-message:not(.error) { background: #f7f3f8; border: 1px solid #e8dce7; color: #97738e; }
.checkout-order-label { color: #b44770!important; }
.webhook-mapping { border: 1px solid #ece1ea; background: #fdfafd; border-radius: 8px; margin-top: 21px; padding: 12px 14px; }
.webhook-mapping summary { font-size: 11px; color: #9b6383; cursor: pointer; }
#webhook-mapping-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 0 15px; }
#webhook-mapping-fields label { font-size: 10px; margin-top: 15px; }
#webhook-mapping-fields input { height: 37px; font-family: Consolas,monospace; font-size: 11px; }
.webhook-test-actions { margin: 0; }
.webhook-history { margin-top: 20px; }
.webhook-receipt { display: flex; align-items: center; gap: 20px; padding: 16px 0; border-top: 1px solid #eee4ec; }
.webhook-receipt>div { flex: 1; min-width: 0; }
.webhook-receipt strong { display: block; font-size: 11px; color: #96748c; }
.webhook-receipt small { display: block; margin-top: 6px; font-size: 9px; color: #b296a9; overflow-wrap: anywhere; }
.paid-filters { display:flex; flex-wrap:wrap; align-items:end; gap:14px; margin:24px 0; padding:20px; border:1px solid #e8e0e7; border-radius:14px; background:white; }
.paid-filters>div { min-width:140px; }.paid-search-field { flex:1; }
.paid-filters label { display:block; font-size:10px; font-weight:600; color:#81747a; margin-bottom:8px; }
.paid-filters input,.paid-filters select { display:block; width:100%; height:43px; border:1px solid #ded6d9; border-radius:9px; background:#fdfcfc; padding:0 12px; color:#35252e; font-size:12px; }
.paid-filters button { height:43px; }
.paid-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:20px 0; }
.paid-stat { padding:22px; border:1px solid #e8e0e7; border-radius:14px; background:#fff; min-width:0; }
.paid-stat small { color:#81747a; font-size:10px; }.paid-stat strong { display:block; font-size:27px; font-weight:650; color:#351321; margin:10px 0; overflow-wrap:anywhere; }.paid-stat p { color:#a09298; font-size:10px; line-height:1.7; }
.paid-list-card { padding:0; overflow:hidden; }.paid-list-card>.integration-docs-heading { padding:24px; }
.paid-table { width:100%; min-width:1050px; border-collapse:collapse; text-align:left; }
.paid-table th { background:#faf9f9; color:#91858a; font-size:9px; font-weight:650; text-transform:uppercase; letter-spacing:1px; padding:15px 18px; }
.paid-table td { padding:19px 18px; border-top:1px solid #eee8ea; color:#35252e; font-size:11px; vertical-align:middle; }
.paid-table tr:hover td { background:#fcfafb; }.paid-table td strong { display:block; font-size:12px; }.paid-table td small { display:block; font-size:10px; color:#91858a; line-height:1.7; margin-top:5px; max-width:220px; overflow-wrap:anywhere; }
.paid-order-chip { display:inline-flex; border:1px solid #e8dee3; border-radius:8px; padding:9px; background:#f8f3f6; color:#351321; font:600 10px Consolas,monospace; }
.paid-payment-badge { display:inline-block; border:1px solid #c9ecde; background:#effaf4; color:#207858; font-size:10px; border-radius:20px; padding:7px 11px; white-space:nowrap; }
.paid-tracking-badge { display:inline-block; background:#f3edef; color:#81747a; border-radius:20px; padding:7px 11px; font-size:10px; white-space:nowrap; }.paid-tracking-badge.delivered { background:#effaf4; color:#207858; }.paid-tracking-badge.out_for_delivery { background:#fff6dc; color:#816222; }
.paid-value { white-space:nowrap; font-weight:600; }.paid-row-actions { display:flex; flex-direction:column; gap:10px; align-items:start; }
.paid-pagination { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:20px 24px; border-top:1px solid #eee8ea; color:#91858a; font-size:10px; }.paid-pagination>div { display:flex; align-items:center; gap:16px; }
.paid-empty { text-align:center; padding:50px 24px; color:#91858a; }.paid-empty>span { display:block; font-size:38px; color:#b2a0a8; }.paid-empty h4 { font-size:15px; color:#351321; margin:14px 0; }.paid-empty p { font-size:12px; line-height:1.8; max-width:500px; margin:auto; }
.paid-footnote { font-size:10px; color:#a09298; line-height:1.8; margin:18px 0; }
#paid-order-dialog { max-width:650px; width:calc(100% - 30px); padding:0; border:1px solid #e4dcdf; border-radius:22px; max-height:90vh; overflow:auto; }
.paid-detail-header { display:flex; justify-content:space-between; align-items:center; padding:24px; background:#351321; color:white; }.paid-detail-header .eyebrow { color:#d5b884; font-size:8px; }.paid-detail-header h2 { font:600 18px Consolas,monospace; overflow-wrap:anywhere; }.paid-detail-header button { color:white; }
#paid-detail-body { padding:24px; }.paid-detail-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }.paid-detail-field { min-width:0; }.paid-detail-field small { display:block; font-size:9px; text-transform:uppercase; letter-spacing:1px; color:#9a8d92; margin-bottom:8px; }.paid-detail-field strong { color:#35252e; font-size:12px; overflow-wrap:anywhere; line-height:1.7; }.paid-mono { font-family:Consolas,monospace; }
.paid-detail-note { padding:14px; border:1px solid #eae3df; border-radius:12px; background:#faf8f6; font-size:11px; color:#81747a; line-height:1.8; margin-top:20px; }.paid-detail-actions { display:flex; justify-content:flex-end; align-items:center; gap:20px; padding:0 24px 24px; }#paid-detail-copy-status { margin:0 24px 20px; }
@media(max-width:800px) { .paid-summary { grid-template-columns:1fr 1fr; }.paid-stat { padding:18px; }.paid-stat strong { font-size:23px; }.paid-pagination { flex-direction:column; }.paid-filters>div { flex:1; }.paid-filters .paid-search-field { flex-basis:100%; } }
@media(max-width:500px) { .paid-detail-grid { grid-template-columns:1fr; }.paid-detail-actions { flex-direction:column-reverse; }.paid-detail-header h2 { font-size:15px; }.paid-filters input,.paid-filters select { font-size:16px; } }
.email-editor-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:24px; align-items:start; margin:24px 0; }
.email-side-column { display:grid; gap:20px; }
#email-fields { border:0; padding:0; margin:20px 0 0; min-width:0; }
#email-fields:disabled { opacity:.65; }
#email-smtp-host { display:block; width:100%; height:44px; margin-top:9px; border:1px solid #e4d9e2; border-radius:7px; padding:0 12px; background:#fdfbfd; color:#685364; font-size:12px; }
#email-content { margin-top:9px; }
#email-content:focus-visible { outline:3px solid #f2a6b8; outline-offset:3px; }
#email-content { display:block; width:100%; padding:14px; font:inherit; font-size:13px; line-height:1.7; color:#35252e; border:1px solid #ded6d9; border-radius:10px; background:#fdfcfc; resize:vertical; }
.email-template-fields { display:flex; flex-wrap:wrap; gap:7px; margin-top:12px; }
.email-template-fields button { background:#f3edef; color:#351321; border:1px solid #e4dcdf; border-radius:7px; padding:7px 9px; font-size:11px; cursor:pointer; }
.email-preview-subject { font-size:11px; line-height:1.7; color:#81747a; overflow-wrap:anywhere; margin:14px 0; }
.email-preview { border:1px solid #e8e0e4; border-radius:16px; overflow:hidden; background:#fff; }
.email-preview-header { background:#351321; color:white; padding:24px; }
.email-preview-header strong { font-family:Georgia,serif; font-size:24px; }
.email-preview-header span { display:block; color:#d5b884; font-size:8px; letter-spacing:2px; margin-top:8px; }
.email-preview-body { padding:24px; color:#70636a; }
.email-preview-badge { color:#207858; font-size:9px; font-weight:700; }
.email-preview h4 { font-family:Georgia,serif; font-size:26px; font-weight:400; color:#351321; margin:14px 0; }
#email-preview-content { white-space:pre-wrap; overflow-wrap:anywhere; font-size:12px; line-height:1.9; }
.email-preview-summary { padding:20px; border:1px solid #eae3df; border-radius:12px; background:#faf8f6; margin-top:20px; }
.email-preview-summary small { display:block; color:#977b61; font-size:9px; letter-spacing:1px; }
.email-preview-summary strong { display:block; color:#351321; font-family:monospace; font-size:21px; margin:12px 0; }
.email-preview-summary p { font-size:11px; }
.email-preview-cta { display:block; text-align:center; background:#351321; color:white; font-size:11px; font-weight:700; padding:14px 10px; border-radius:9px; margin-top:18px; }
.email-security-note { background:#f5f1ee; }
.email-security-note p:not(.eyebrow) { font-size:11px; line-height:1.8; margin-top:12px; }
.email-history-row { display:flex; justify-content:space-between; align-items:start; gap:16px; padding:18px 0; border-top:1px solid #e8e2e4; }
.email-history-row strong { font-size:12px; }.email-history-row p { font-size:11px; line-height:1.8; color:#81747a; margin:8px 0; }.email-history-row time { font-size:10px; color:#9a8d92; }
.email-delivery-badge { flex-shrink:0; border-radius:20px; padding:7px 11px; font-size:10px; background:#f3edef; color:#81747a; }.email-delivery-badge.sent { background:#effaf4; color:#207858; }.email-delivery-badge.failed,.email-delivery-badge.unknown { background:#fff6dc; color:#816222; }
#email-send-test { margin-top:18px; }
.admin-navigation { flex-wrap:wrap; }
@media(max-width:800px) { .email-editor-grid { grid-template-columns:1fr; gap:18px; }.email-history-row { flex-wrap:wrap; } }
.webhook-receipt-status { border: 1px solid #e2e7d7; background: #f7f9f1; color: #89916e; border-radius: 6px; font-size: 9px; padding: 7px 9px; white-space: nowrap; }
.webhook-receipt-status.ignored { border-color: #e8dce6; background: #fcf6fa; color: #aa889f; }
.webhook-receipt time { font-size: 9px; color: #b59aac; white-space: nowrap; }
@media(max-width:600px) {
  #webhook-mapping-fields { grid-template-columns: 1fr; }
  .webhook-test-actions { flex-wrap: wrap; gap: 12px; }
  .webhook-receipt { flex-wrap: wrap; gap: 12px; }
  .webhook-receipt>div { flex-basis: 100%; }
  .webhook-receipt time { margin-left: auto; }
}

body.admin-mode #gateway-panel { animation:admin-panel-in .2s ease-out; }
body.admin-mode .gateway-summary {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:15px;
  margin-bottom:20px;
}
body.admin-mode .gateway-summary article {
  position:relative;
  min-height:122px;
  padding:22px 23px;
  overflow:hidden;
  border:1px solid #e4e1e3;
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 26px rgba(37,29,33,.04);
}
body.admin-mode .gateway-summary article:before { content:''; position:absolute; inset:0 auto 0 0; width:3px; background:var(--admin-red); }
body.admin-mode .gateway-summary small { display:block; color:#827e84; font-size:9px; font-weight:650; }
body.admin-mode .gateway-summary strong { display:block; margin-top:14px; color:#232126; font-size:22px; font-weight:720; }
body.admin-mode .gateway-summary p { margin-top:7px; color:#969299; font-size:8px; line-height:1.55; }
body.admin-mode .gateway-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr); gap:20px; margin-bottom:20px; }
body.admin-mode .gateway-checkout-card,
body.admin-mode .gateway-charge-card { padding:27px; }
body.admin-mode .gateway-card-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:25px; }
body.admin-mode .gateway-card-icon { display:grid; place-items:center; width:42px; height:42px; border:1px solid #f0d6de; border-radius:13px; background:#fff0f4; color:#c50034; font-size:16px; font-weight:750; }
body.admin-mode .gateway-state-badge { display:inline-flex; align-items:center; gap:6px; padding:7px 10px; border:1px solid #e4dfe1; border-radius:20px; background:#f7f5f6; color:#777278; font-size:8px; font-weight:700; }
body.admin-mode .gateway-state-badge:before { content:''; width:6px; height:6px; border-radius:50%; background:#aaa5aa; }
body.admin-mode .gateway-state-badge.enabled { border-color:#cde8dc; background:#f1faf5; color:#237054; }
body.admin-mode .gateway-state-badge.enabled:before { background:#2eae7a; box-shadow:0 0 0 4px rgba(46,174,122,.11); }
body.admin-mode .gateway-checkout-card>.eyebrow,
body.admin-mode .gateway-charge-card>.eyebrow,
body.admin-mode .gateway-flow-card .eyebrow { color:#bd0032; }
body.admin-mode .gateway-checkout-card h3,
body.admin-mode .gateway-charge-card h3,
body.admin-mode .gateway-flow-card h3 { color:#252328; font-size:19px; font-weight:710; }
body.admin-mode .gateway-copy,
body.admin-mode .gateway-charge-card>p:not(.eyebrow) { margin-top:12px; color:#817d83; font-size:10px; line-height:1.8; }
body.admin-mode .gateway-details { display:grid; gap:0; margin:24px 0; border:1px solid #ebe7e9; border-radius:14px; background:#faf9fa; }
body.admin-mode .gateway-details div { display:grid; grid-template-columns:115px minmax(0,1fr); gap:14px; padding:13px 15px; border-bottom:1px solid #ebe7e9; }
body.admin-mode .gateway-details div:last-child { border-bottom:0; }
body.admin-mode .gateway-details dt { color:#918d93; font-size:8px; }
body.admin-mode .gateway-details dd { min-width:0; margin:0; overflow:hidden; color:#39363b; font-size:9px; font-weight:650; text-overflow:ellipsis; white-space:nowrap; }
body.admin-mode .gateway-checkout-card .primary-button { width:max-content; }
body.admin-mode .gateway-next-step { display:flex; align-items:flex-start; gap:12px; padding:15px; border:1px solid #f0d7de; border-radius:13px; background:#fff5f7; }
body.admin-mode .gateway-next-step>span { display:grid; width:28px; height:28px; flex:0 0 28px; place-items:center; border-radius:9px; background:#d3003b; color:#fff; font-size:9px; font-weight:800; }
body.admin-mode .gateway-next-step strong { display:block; color:#3b383d; font-size:9px; }
body.admin-mode .gateway-next-step p { margin-top:5px; color:#88838a; font-size:8px; line-height:1.6; }
body.admin-mode .gateway-charge-card {
  border-color:#252529;
  background:linear-gradient(150deg,#29292e,#151518);
  box-shadow:inset 0 3px var(--admin-red),0 9px 28px rgba(37,29,33,.07);
  color:#fff;
}
body.admin-mode .gateway-charge-card .gateway-card-icon { border-color:rgba(255,255,255,.12); background:rgba(255,255,255,.07); color:#ff7799; }
body.admin-mode .gateway-charge-card>.eyebrow { margin-top:25px; color:#ff7799; }
body.admin-mode .gateway-charge-card h3 { color:#fff; }
body.admin-mode .gateway-charge-card>p:not(.eyebrow) { color:#aaa6ad; }
body.admin-mode .gateway-charge-status { display:flex; align-items:flex-start; gap:11px; margin-top:24px; padding:15px; border:1px solid rgba(255,255,255,.1); border-radius:13px; background:rgba(255,255,255,.055); }
body.admin-mode .gateway-charge-status i { width:8px; height:8px; flex:0 0 8px; margin-top:3px; border-radius:50%; background:#ff3b6c; box-shadow:0 0 0 4px rgba(255,59,108,.14); }
body.admin-mode .gateway-charge-status strong,
body.admin-mode .gateway-charge-status small { display:block; }
body.admin-mode .gateway-charge-status strong { color:#fff; font-size:9px; }
body.admin-mode .gateway-charge-status small { margin-top:6px; color:#96929a; font-size:8px; line-height:1.6; }
body.admin-mode .gateway-charge-card .text-button { margin-top:22px; color:#ff7b9d; }
body.admin-mode .gateway-flow-card { display:grid; grid-template-columns:minmax(220px,.75fr) minmax(0,1.25fr); align-items:center; gap:28px; padding:26px 28px; }
body.admin-mode .gateway-flow-card ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:0; padding:0; list-style:none; }
body.admin-mode .gateway-flow-card li { position:relative; min-height:100px; padding:17px; border:1px solid #ebe7e9; border-radius:14px; background:#faf9fa; }
body.admin-mode .gateway-flow-card li>span { display:grid; place-items:center; width:27px; height:27px; margin-bottom:12px; border-radius:9px; background:#ffe8ee; color:#bd0032; font-size:8px; font-weight:750; }
body.admin-mode .gateway-flow-card li strong,
body.admin-mode .gateway-flow-card li small { display:block; }
body.admin-mode .gateway-flow-card li strong { color:#343136; font-size:9px; }
body.admin-mode .gateway-flow-card li small { margin-top:6px; color:#949096; font-size:7.5px; line-height:1.55; }
@media(max-width:900px) {
  body.admin-mode .gateway-grid { grid-template-columns:1fr; }
  body.admin-mode .gateway-flow-card { grid-template-columns:1fr; }
}
@media(max-width:650px) {
  body.admin-mode .gateway-summary { grid-template-columns:1fr; gap:10px; }
  body.admin-mode .gateway-summary article { min-height:105px; }
  body.admin-mode .gateway-flow-card ol { grid-template-columns:1fr; }
  body.admin-mode .gateway-checkout-card,
  body.admin-mode .gateway-charge-card,
  body.admin-mode .gateway-flow-card { padding:21px; }
  body.admin-mode .gateway-checkout-card .primary-button { width:100%; }
}
@media(max-width:760px) {
  .integration-heading { align-items: flex-start; flex-direction: column; gap: 15px; }
  .integration-flow { gap: 9px; }
  .integration-flow li { font-size: 10px; padding: 13px; gap: 8px; line-height: 1.7; }
  .integration-grid { grid-template-columns: 1fr; gap: 16px; }
}
@media(max-width:600px) {
  .admin-navigation button { font-size: 10px; padding: 10px 12px; }
  .integration-heading h2 { font-size: 22px; }
  .integration-heading p:not(.eyebrow) { font-size: 11px; }
  .integration-card { padding: 22px; }
  .integration-flow { grid-template-columns: 1fr; }
  .integration-flow li { padding: 13px 16px; font-size: 11px; }
  .integration-card input:not([type=checkbox]) { font-size: 16px; }
  .integration-actions { flex-wrap: wrap; }
  .integration-test { align-items: flex-start; flex-direction: column; }
  .integration-docs-heading { flex-direction: column; align-items: flex-start; }
  .integration-docs-heading select { width: 100%; }
  .integration-card pre { padding: 17px; font-size: 10px; }
}

/* Painel administrativo inspirado na central do checkout. */
body.admin-mode { background:#eeeae7; color:#2e2227; }
body.admin-mode>.header,body.admin-mode main>footer { display:none; }
body.admin-mode main { max-width:1480px; padding:12px; }
#admin-view { min-height:calc(100vh - 24px); }
.admin-shell { min-height:calc(100vh - 24px); display:grid; grid-template-columns:255px minmax(0,1fr); overflow:hidden; border:1px solid #e4ddda; border-radius:24px; background:#faf9f7; box-shadow:0 20px 70px rgba(64,34,45,.09); }
.admin-sidebar { position:relative; display:flex; flex-direction:column; justify-content:space-between; min-height:calc(100vh - 24px); padding:28px 16px 20px; overflow:hidden; background:linear-gradient(155deg,#40272f 0%,#2b1620 56%,#24121a 100%); color:#f9eff2; }
.admin-sidebar:before { content:''; position:absolute; width:210px; height:210px; top:-92px; right:-92px; border:1px solid rgba(220,187,160,.10); border-radius:50%; box-shadow:0 0 0 40px rgba(220,187,160,.035),0 0 0 80px rgba(220,187,160,.025); pointer-events:none; }
.admin-brand { position:relative; display:flex; align-items:center; gap:13px; padding:0 8px 34px; }
.admin-brand-mark { display:grid; place-items:center; width:42px; height:42px; flex:0 0 42px; border:1px solid rgba(226,196,172,.24); border-radius:13px; background:linear-gradient(145deg,#665057,#473039); color:#ead3b5; font:600 20px Georgia,serif; box-shadow:inset 0 1px rgba(255,255,255,.08); }
.admin-brand strong { display:block; font:600 17px Georgia,serif; }
.admin-brand small { display:block; margin-top:6px; color:#bd8f83; font-size:7px; font-weight:700; letter-spacing:1.7px; }
.admin-menu-label { margin:4px 12px 12px; color:#9f7781; font-size:8px; font-weight:750; letter-spacing:1.8px; }
.admin-sidebar-nav { position:relative; display:grid; gap:7px; }
.admin-sidebar-nav button { position:relative; display:flex; align-items:center; width:100%; min-height:46px; padding:0 13px; border-radius:12px; background:transparent; color:#c1adb4; text-align:left; font-size:11px; font-weight:600; }
.admin-sidebar-nav button:hover { background:rgba(255,255,255,.055); color:#fff; }
.admin-sidebar-nav button.selected { background:#f8f0ed; color:#3e202b; box-shadow:0 7px 22px rgba(13,5,8,.18); }
.admin-sidebar-nav button.selected:before { content:''; position:absolute; left:0; width:3px; height:22px; border-radius:0 4px 4px 0; background:#c69d57; }
.admin-sidebar-nav svg { width:18px; height:18px; margin-right:12px; fill:none; stroke:currentColor; stroke-width:1.55; stroke-linecap:round; stroke-linejoin:round; }
.admin-sidebar-nav svg rect { fill:none; }
.admin-sidebar-nav button:first-child svg rect { fill:currentColor; stroke:none; opacity:.78; }
.admin-sidebar-nav button span { flex:1; }
.admin-sidebar-nav button b { min-width:24px; padding:4px 7px; border-radius:20px; background:rgba(255,255,255,.08); color:#d8c5cb; font-size:8px; text-align:center; }
.admin-sidebar-nav button.selected b { background:#eadde0; color:#502736; }
.admin-sidebar-bottom { position:relative; display:grid; gap:16px; }
.admin-protection { display:flex; align-items:flex-start; gap:10px; margin:20px 0 0; padding:15px 13px; border:1px solid rgba(255,255,255,.09); border-radius:16px; background:rgba(255,255,255,.035); }
.admin-protection>span { display:grid; place-items:center; width:22px; height:22px; flex:0 0 22px; border-radius:50%; background:#124d46; color:#55e0bd; font-size:13px; }
.admin-protection strong { display:block; font-size:9px; }
.admin-protection p { margin-top:7px; color:#9e8990; font-size:8px; line-height:1.65; }
.admin-profile { display:flex; align-items:center; gap:10px; padding:14px 7px 0; border-top:1px solid rgba(255,255,255,.08); }
.admin-avatar { display:grid; place-items:center; width:34px; height:34px; flex:0 0 34px; border-radius:50%; background:#f2dfe6; color:#3f202b; font:600 12px Georgia,serif; }
.admin-profile div { flex:1; min-width:0; }
.admin-profile strong { display:block; font-size:9px; }
.admin-profile small { display:block; margin-top:4px; overflow:hidden; color:#8f7881; font-size:7px; text-overflow:ellipsis; }
.admin-profile button { width:28px; height:28px; border-radius:8px; background:transparent; color:#a58d96; }
.admin-profile button:hover { background:rgba(255,255,255,.07); color:#fff; }
.admin-workspace { min-width:0; background:#faf9f7; }
.admin-topbar { display:flex; align-items:center; justify-content:space-between; gap:28px; min-height:135px; padding:28px 38px 25px; border-bottom:1px solid #e9e3df; background:rgba(255,255,255,.55); }
.admin-topbar #admin-breadcrumb { margin-bottom:12px; color:#9b7a6d; font-size:8px; font-weight:700; letter-spacing:1.7px; }
.admin-topbar h1 { color:#2d2528; font-size:31px; font-weight:650; letter-spacing:-1.2px; }
.admin-topbar #admin-page-description { display:block; margin-top:10px; color:#9b9294; font-size:11px; }
.admin-topbar .primary-button { min-width:145px; background:#431927; box-shadow:0 8px 22px rgba(67,25,39,.16); }
.admin-topbar .primary-button:hover { background:#5b2034; }
.admin-content { padding:30px 38px 42px; }
.admin-welcome { position:relative; display:flex; align-items:center; justify-content:space-between; gap:24px; overflow:hidden; padding:28px 30px; border:1px solid #eadfe1; border-radius:18px; background:linear-gradient(110deg,#fff 0%,#fcf6f7 75%,#f6e9ed 100%); }
.admin-welcome:after { content:''; position:absolute; width:160px; height:160px; right:-70px; bottom:-110px; border:1px solid rgba(145,55,83,.1); border-radius:50%; box-shadow:0 0 0 28px rgba(145,55,83,.035); }
.admin-welcome .eyebrow { margin-bottom:9px; color:#b52a52; font-size:8px; }
.admin-welcome h2 { color:#301e25; font-size:24px; letter-spacing:-.7px; }
.admin-welcome p:not(.eyebrow) { margin-top:9px; color:#94868b; font-size:11px; line-height:1.7; }
.admin-live-badge { position:relative; z-index:1; display:flex; align-items:center; gap:7px; padding:8px 11px; border:1px solid #cde5d8; border-radius:20px; background:#f2faf6; color:#2e7758; font-size:9px; white-space:nowrap; }
.admin-live-badge i { width:6px; height:6px; border-radius:50%; background:#36aa78; box-shadow:0 0 0 4px rgba(54,170,120,.12); }
.admin-content .admin-summary { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:20px 0; }
.admin-content .summary-card { position:relative; min-height:116px; padding:21px 22px; border-color:#e9e1de; border-radius:15px; background:#fff; box-shadow:0 5px 18px rgba(54,30,38,.025); }
.admin-content .summary-card:after { content:'↗'; position:absolute; top:20px; right:20px; display:grid; place-items:center; width:26px; height:26px; border-radius:8px; background:#f7f1f2; color:#9d7180; font-size:11px; }
.admin-content .summary-card span { color:#998e91; font-size:10px; }
.admin-content .summary-card strong { margin-top:17px; color:#311d25; font-size:29px; }
.admin-overview-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(260px,.65fr); gap:20px; }
.admin-quick-card,.admin-operation-card { padding:25px; border:1px solid #e9e1de; border-radius:17px; background:#fff; }
.admin-quick-card>.eyebrow,.admin-operation-card>.eyebrow { margin-bottom:9px; color:#a78676; font-size:8px; }
.admin-quick-card>h3,.admin-operation-card>h3 { color:#33252a; font-size:16px; }
.admin-quick-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:20px; }
.admin-quick-actions button { display:grid; grid-template-columns:35px 1fr; grid-template-rows:auto auto; column-gap:12px; padding:15px; border:1px solid #ede6e3; border-radius:12px; background:#fcfbfa; color:#38262d; text-align:left; }
.admin-quick-actions button:hover { transform:translateY(-1px); border-color:#dbc7cd; background:#fff7f9; }
.admin-quick-actions button>span { grid-row:1/3; display:grid; place-items:center; width:35px; height:35px; border-radius:10px; background:#f5e9ed; color:#a91f49; font-size:17px; }
.admin-quick-actions strong { align-self:end; font-size:10px; }
.admin-quick-actions small { align-self:start; margin-top:5px; color:#9c9094; font-size:8px; line-height:1.4; }
.admin-operation-card { background:linear-gradient(155deg,#3b2029,#29151d); color:#fff; }
.admin-operation-card>.eyebrow { color:#d2a76e; }
.admin-operation-card>h3 { color:#fff; font:500 22px/1.25 Georgia,serif; }
.admin-operation-icon { display:grid; place-items:center; width:36px; height:36px; margin-bottom:27px; border:1px solid rgba(255,255,255,.12); border-radius:11px; color:#e9c795; }
.admin-operation-card ol { display:grid; gap:14px; margin:24px 0 0; padding:0; list-style:none; }
.admin-operation-card li { display:flex; align-items:center; gap:10px; color:#bdaab1; font-size:9px; }
.admin-operation-card li span { display:grid; place-items:center; width:22px; height:22px; flex:0 0 22px; border-radius:50%; background:rgba(255,255,255,.07); color:#dfb778; font-size:8px; }
.admin-content .admin-list-card { overflow:hidden; border-color:#e8e0dd; border-radius:17px; box-shadow:0 7px 24px rgba(54,30,38,.03); }
.admin-content .admin-list-card .card-heading { padding:22px 25px; }
.admin-content .admin-list-card .card-heading .eyebrow { color:#a88778; }
.admin-content .admin-list-card th { background:#f7f4f2; color:#97888d; }
.admin-content .admin-list-card td { color:#3c3034; }
.admin-content .admin-list-card td code { display:inline-block; padding:8px 10px; border:1px solid #eadfe3; border-radius:8px; background:#f8f3f5; color:#522132; }
.admin-content .text-button { color:#a5234b; }
#admin-orders-panel,#paid-orders-panel,#customs-fees-panel,#integration-panel { animation:admin-panel-in .2s ease-out; }
@keyframes admin-panel-in { from { opacity:0; transform:translateY(4px); } to { opacity:1; transform:none; } }
.customs-private-badge { display:inline-flex; align-items:center; padding:8px 12px; border:1px solid #ded4d8; border-radius:20px; background:#f8f4f5; color:#725562; font-size:9px; white-space:nowrap; }
.customs-fees-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(270px,.6fr); gap:20px; align-items:start; margin-bottom:20px; }
.customs-fee-form select,.customs-fee-form textarea { display:block; width:100%; margin-top:9px; border:1px solid #e4d9e2; border-radius:8px; background:#fdfbfd; color:#685364; font:inherit; font-size:12px; }
.customs-fee-form select { height:44px; padding:0 12px; }
.customs-fee-form textarea { min-height:86px; padding:12px; resize:vertical; line-height:1.6; }
.customs-form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.customs-gateway-card { min-height:100%; background:linear-gradient(155deg,#3b2029,#29151d); color:#fff; }
.customs-gateway-card .eyebrow { color:#d2a76e; }
.customs-gateway-card h3 { color:#fff; font:500 22px/1.3 Georgia,serif; }
.customs-gateway-card>p:not(.eyebrow) { margin-top:14px; color:#bba8af; font-size:11px; line-height:1.85; }
.customs-gateway-status { display:flex; align-items:flex-start; gap:11px; margin-top:26px; padding:15px; border:1px solid rgba(255,255,255,.1); border-radius:12px; background:rgba(255,255,255,.045); }
.customs-gateway-status i { width:8px; height:8px; flex:0 0 8px; margin-top:3px; border-radius:50%; background:#d3a45f; box-shadow:0 0 0 4px rgba(211,164,95,.12); }
.customs-gateway-status strong,.customs-gateway-status small { display:block; }
.customs-gateway-status strong { font-size:9px; }
.customs-gateway-status small { margin-top:6px; color:#a9959d; font-size:8px; line-height:1.6; }
.customs-fees-list { padding:0; overflow:hidden; }
.customs-fees-list>.integration-docs-heading { padding:24px; }
.customs-fees-list table { min-width:850px; }
.customs-fees-list td { vertical-align:middle; }
.customs-code { display:inline-block; padding:7px 9px; border:1px solid #eadfe3; border-radius:7px; background:#f8f3f5; color:#522132; font-size:10px; }
.customs-amount { color:#3d202a; font-weight:700; white-space:nowrap; }
.customs-status { display:inline-flex; padding:7px 10px; border-radius:20px; background:#f1ecee; color:#77676d; font-size:9px; white-space:nowrap; }
.customs-status.scheduled { background:#fff4d9; color:#876421; }
.customs-status.paid { background:#eaf8f0; color:#277357; }
.customs-status.cancelled { background:#f5eeee; color:#9e7f87; text-decoration:line-through; }

@media(max-width:950px) {
  body.admin-mode main { padding:8px; }
  #admin-view,.admin-shell { min-height:calc(100vh - 16px); }
  .admin-shell { grid-template-columns:1fr; }
  .admin-sidebar { min-height:auto; padding:18px; }
  .admin-brand { padding-bottom:18px; }
  .admin-menu-label { display:none; }
  .admin-sidebar-nav { display:flex; overflow-x:auto; padding-bottom:3px; }
  .admin-sidebar-nav button { min-width:max-content; width:auto; padding:0 15px; }
  .admin-sidebar-nav button.selected:before { left:12px; right:12px; bottom:0; width:auto; height:2px; }
  .admin-sidebar-bottom { display:none; }
  .admin-topbar { min-height:120px; padding:24px; }
  .admin-content { padding:24px; }
  .customs-fees-grid { grid-template-columns:1fr; }
}
@media(max-width:700px) {
  .admin-shell { border-radius:18px; }
  .admin-sidebar { border-radius:17px 17px 0 0; }
  .admin-brand-mark { width:37px; height:37px; flex-basis:37px; }
  .admin-sidebar-nav button { min-height:42px; font-size:10px; }
  .admin-sidebar-nav svg { width:16px; height:16px; margin-right:8px; }
  .admin-sidebar-nav button b { display:none; }
  .admin-topbar { align-items:flex-start; min-height:auto; padding:22px 18px; }
  .admin-topbar h1 { font-size:25px; }
  .admin-topbar #admin-page-description { max-width:300px; line-height:1.6; }
  .admin-topbar .primary-button { min-width:auto; padding:11px 13px; gap:8px; font-size:9px; }
  .admin-content { padding:18px; }
  .admin-welcome { align-items:flex-start; padding:23px 20px; }
  .admin-welcome h2 { font-size:20px; }
  .admin-live-badge { display:none; }
  .admin-content .admin-summary { grid-template-columns:1fr 1fr; gap:10px; }
  .admin-content .summary-card:last-child { grid-column:1/-1; }
  .admin-content .summary-card { min-height:102px; padding:17px; }
  .admin-content .summary-card strong { font-size:25px; }
  .admin-overview-grid { grid-template-columns:1fr; }
  .admin-quick-actions { grid-template-columns:1fr; }
  .customs-form-row { grid-template-columns:1fr; gap:0; }
}
@media(max-width:430px) {
  body.admin-mode main { padding:0; }
  .admin-shell { min-height:100vh; border:0; border-radius:0; }
  .admin-sidebar { border-radius:0; }
  .admin-topbar { flex-direction:column; gap:16px; }
  .admin-topbar .primary-button { width:100%; }
  .admin-content .admin-summary { grid-template-columns:1fr; }
  .admin-content .summary-card:last-child { grid-column:auto; }
}

/* Administrativo no visual original do TrackLog; as funções novas usam a mesma linguagem. */
.admin-hero { padding:55px 0 28px; }
.admin-hero h1 { color:#454545; }
.admin-hero .primary-button { background:#bd1239; border-radius:4px; }
.admin-hero .primary-button:hover { background:#9f0d30; }
.admin-navigation { overflow-x:auto; flex-wrap:nowrap; }
.admin-navigation button { white-space:nowrap; }
.admin-navigation button>span { display:inline-grid; place-items:center; min-width:19px; min-height:19px; padding:0 5px; border-radius:10px; background:#f3e4e8; color:#a62a4a; font-size:8px; }
.admin-welcome { border-radius:5px; background:#fff; border-color:#eadfe2; box-shadow:none; }
.admin-welcome:after { display:none; }
.admin-welcome .eyebrow { color:#b24c64; }
.admin-welcome h2 { color:#454545; }
.admin-live-badge { border-color:#f0d9df; background:#fff5f7; color:#a73350; }
.admin-live-badge i { background:#cd0732; box-shadow:0 0 0 4px rgba(205,7,50,.1); }
.admin-quick-card,.admin-operation-card { border-radius:5px; border-color:#e8e1e3; box-shadow:none; }
.admin-quick-actions button { border-radius:4px; background:#fafafa; }
.admin-quick-actions button:hover { border-color:#e5cbd2; background:#fff6f8; }
.admin-quick-actions button>span { border-radius:4px; background:#fff0f4; color:#c31943; }
.admin-operation-card,.customs-gateway-card { background:#fff5f7; color:#6f5a61; }
.admin-operation-card>.eyebrow,.customs-gateway-card .eyebrow { color:#b24c64; }
.admin-operation-card>h3,.customs-gateway-card h3 { color:#4c3a40; }
.admin-operation-icon { border-color:#efd9df; background:#fff; color:#bd2444; }
.admin-operation-card li,.customs-gateway-card>p:not(.eyebrow) { color:#8d7b81; }
.admin-operation-card li span { background:#f7e5ea; color:#a82d4c; }
.customs-gateway-status { border-color:#eddde1; background:#fff; }
.customs-gateway-status strong { color:#664f57; }
.customs-gateway-status small { color:#9a878e; }
.customs-fee-form,.customs-fees-list { border-radius:5px; }

@media(max-width:680px) {
  .admin-hero { padding:34px 0 23px; }
  .admin-navigation { margin-top:18px; }
  .admin-navigation button { padding:10px 12px; font-size:9px; }
  .admin-overview-grid { grid-template-columns:1fr; }
}

/* Experiência pública otimizada para celular. */
#result-code { cursor:pointer; }
#result-code:after { content:' · copiar'; color:#bd3153; font-family:inherit; font-size:7px; font-weight:650; text-transform:uppercase; letter-spacing:.5px; }
#tracking-result { scroll-margin-top:16px; }
@media(max-width:600px) {
  body { background:linear-gradient(180deg,#fff 0,#fff 70%,#fff9fa 100%); }
  .header { padding:0 16px; }
  .header-inner { height:74px; min-height:74px; }
  .brand { margin:0; font-size:27px; }
  .tracklog-mark { width:34px; height:37px; }
  .utility-row button { padding:8px 9px; border-radius:10px; font-size:9px; }
  .header .site-nav { height:43px; margin:0 -16px; width:calc(100% + 32px); padding:0 8px; border-left:0; border-right:0; scroll-snap-type:x proximity; }
  .site-nav button { min-height:42px; scroll-snap-align:start; }
  main { padding:0 14px; }
  .tracking-banner { height:470px; margin-top:14px; border-radius:22px; box-shadow:0 12px 35px rgba(76,27,42,.08); }
  .banner-copy { top:25px; left:22px; width:calc(100% - 44px); }
  .banner-copy h1 { font-size:38px; line-height:1.02; }
  .banner-description { max-width:270px; font-size:10.5px; }
  .banner-photo { height:203px; }
  .banner-delivery-icon { right:12px; bottom:12px; max-width:205px; padding:11px 13px; }
  .lookup-area { width:calc(100% - 10px); margin:-14px auto 0; }
  .search-card { position:relative; padding:23px 18px 19px; border-top-width:3px; border-radius:16px; box-shadow:0 16px 40px rgba(63,28,39,.12); }
  .search-card-heading { margin-bottom:19px; }
  .search-card-icon { width:41px; height:41px; }
  .search-card h2 { font-size:18px; }
  .input-wrap { height:54px; border-radius:12px; background:#fff; }
  .input-wrap input { height:51px; }
  .search-card .primary-button { min-height:51px; border-radius:12px; box-shadow:0 7px 17px rgba(206,6,51,.18); }
  .search-hint button { min-height:30px; }
  .lookup-reassurance { margin-bottom:4px; }
  .tracking-has-result .customer-guide,.tracking-has-result .contact-strip { display:none; }
  .tracking-has-result #tracking-result { margin-top:28px; }
  .result-heading { align-items:flex-end; gap:12px; margin:0 2px 15px; }
  .result-heading .eyebrow { margin-bottom:5px; }
  .result-heading h2 { font-size:19px; line-height:1.25; }
  .shipment-code { max-width:50%; padding:8px 9px; border-radius:9px; background:#fff; font-size:8px; box-shadow:0 4px 14px rgba(72,35,46,.05); }
  #result-code:after { display:block; margin-top:4px; }
  .dashboard-grid { grid-template-columns:1fr; gap:13px; }
  .status-card { display:grid; grid-template-columns:1fr 1fr; gap:0 10px; padding:22px; border-radius:19px; box-shadow:0 12px 30px rgba(115,8,39,.17); }
  .status-top,.status-kicker,.status-card h2,.status-card>p:not(.status-kicker) { grid-column:1/-1; }
  .status-card h2 { font-size:27px; }
  .status-card>p:not(.status-kicker) { min-height:0; font-size:10px; line-height:1.7; }
  .delivery-estimate { grid-column:1; grid-row:auto; margin:19px 0 0; padding:15px 9px 0 0; border-top:1px solid #ffffff33; border-left:0; justify-content:flex-start; }
  .delivery-estimate strong { font-size:18px; }
  .destination { grid-column:2; margin:19px 0 0; padding:15px 0 0 10px; border-top:1px solid #ffffff33; border-left:1px solid #ffffff26; align-items:flex-start; }
  .destination div { display:flex; gap:4px; }
  .destination small { grid-column:auto; }
  .route-card { border-radius:19px; box-shadow:0 12px 32px rgba(70,34,53,.07); }
  .route-card .route-card-heading { padding:18px 16px; }
  .route-heading-icon { width:35px; height:35px; }
  .route-card-heading h3 { font-size:13px; }
  .route-phase-badge { max-width:94px; padding:6px 8px; }
  .route-card .route-map { margin:0 8px; border-radius:14px; }
  .route-livebar { margin:10px 9px 0; }
  .city-route-viewport { scroll-snap-type:x mandatory; scrollbar-width:none; padding:31px 6px 24px; }
  .city-route-viewport::-webkit-scrollbar { display:none; }
  .city-stop { width:152px; min-width:152px; flex-basis:152px; scroll-snap-align:center; }
  .city-stop-card { min-height:132px; border-radius:13px; }
  .route-card .route-footer { padding:17px 15px; }
  .route-card .route-footer-icon { width:38px; height:38px; }
  .journey-card { padding:19px 10px 22px; border-radius:17px; overflow:hidden; }
  .journey-heading { padding:0 8px; }
  .stages { margin-top:21px; }
  .stages strong { font-size:7px; line-height:1.35; }
  .stage-marker { width:28px; height:28px; }
  .details-grid { gap:13px; }
  .history-card { border-radius:19px; }
  .history-card>.history-heading { padding:19px 16px 16px; }
  .history-heading h3 { font-size:14px; }
  .history-subtitle { max-width:220px; }
  .history-card .timeline { padding:18px 10px 5px; }
  .history-card .timeline li { grid-template-columns:31px minmax(0,1fr); gap:8px; }
  .event-content { border-radius:11px; }
  .info-card { border-radius:17px; padding:21px; }
  footer { padding-bottom:calc(24px + env(safe-area-inset-bottom)); }
}
@media(max-width:370px) {
  main { padding:0 10px; }
  .tracking-banner { height:446px; border-radius:18px; }
  .banner-copy { left:18px; width:calc(100% - 36px); }
  .banner-copy h1 { font-size:34px; }
  .banner-photo { height:190px; }
  .lookup-area { width:calc(100% - 6px); }
  .search-card { padding:21px 15px 18px; }
  .status-card { padding:19px; }
  .delivery-estimate strong { font-size:16px; }
  .destination { padding-left:8px; }
}

/* Rodapé público informativo. */
.route-card .route-footer {
  position:relative;
  gap:15px;
  margin:14px 16px 16px;
  padding:17px 18px;
  overflow:hidden;
  border:1px solid #ebdfe3;
  border-radius:14px;
  background:linear-gradient(135deg,#fff 0%,#fff9fa 68%,#f9eff2 100%);
  box-shadow:0 8px 24px rgba(76,35,49,.055);
}
.route-card .route-footer:after {
  content:'';
  position:absolute;
  width:95px;
  height:95px;
  right:-58px;
  bottom:-68px;
  border:1px solid rgba(190,28,69,.09);
  border-radius:50%;
  box-shadow:0 0 0 18px rgba(190,28,69,.025);
  pointer-events:none;
}
.route-card .route-footer-icon {
  width:48px;
  height:48px;
  flex:0 0 48px;
  border:1px solid #edcad3;
  border-radius:14px;
  background:linear-gradient(145deg,#fff4f7,#f9e2e8);
  color:#c21845;
  box-shadow:0 7px 18px rgba(164,20,57,.10);
}
.route-card .route-footer-icon svg { width:25px; height:25px; stroke-width:1.7; }
.route-footer-topline { display:flex; align-items:center; gap:10px; margin-bottom:7px; }
.route-card .route-footer-label { margin:0; color:#aa6c7d; font-size:7px; font-weight:750; letter-spacing:1.2px; }
.route-active-badge { display:inline-flex; align-items:center; gap:5px; padding:4px 7px; border:1px solid #d8ebdf; border-radius:20px; background:#f3faf6; color:#438065; font-size:6px; font-weight:700; letter-spacing:.35px; white-space:nowrap; }
.route-active-badge i { position:relative; width:5px; height:5px; border-radius:50%; background:#42aa79; }
.route-active-badge i:after { content:''; position:absolute; inset:-3px; border:1px solid rgba(66,170,121,.35); border-radius:50%; animation:route-active-pulse 2s ease-out infinite; }
.route-card .route-footer strong { color:#4a3540; font-size:12px; font-weight:700; line-height:1.55; }
.route-update-meta { display:flex; align-items:center; gap:12px; margin-top:6px; }
.route-card .route-footer .route-update-meta p { margin:0; color:#9c8790; font-size:8px; line-height:1.5; }
.route-auto-update { display:inline-flex; align-items:center; gap:4px; padding-left:12px; border-left:1px solid #eadde1; color:#ad929b; font-size:7px; white-space:nowrap; }
.route-auto-update i { color:#bf3153; font-size:10px; font-style:normal; }
.route-card .route-day-badge { position:relative; z-index:1; display:grid; place-items:center; min-width:78px; min-height:48px; padding:8px 10px; border:1px solid #e9d6dc; border-radius:12px; background:#fff; color:#a92046; font-size:9px; font-weight:750; box-shadow:0 5px 15px rgba(90,35,51,.05); }
.route-card .route-day-badge:before { content:'DATA DA ETAPA'; display:block; margin-bottom:3px; color:#b89aa4; font-size:5px; font-weight:700; letter-spacing:.7px; }
@keyframes route-active-pulse { 0% { opacity:.8; transform:scale(.8); } 75%,100% { opacity:0; transform:scale(1.8); } }
@media(max-width:600px) {
  .route-card .route-footer { display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:11px; margin:11px 9px 10px; padding:14px 12px; }
  .route-card .route-footer-icon { width:42px; height:42px; flex-basis:42px; border-radius:12px; }
  .route-card .route-footer-icon svg { width:22px; height:22px; }
  .route-footer-topline { gap:6px; margin-bottom:5px; }
  .route-active-badge { padding:3px 5px; font-size:5px; }
  .route-card .route-footer strong { font-size:10px; }
  .route-update-meta { display:block; margin-top:4px; }
  .route-auto-update { margin-top:3px; padding-left:0; border-left:0; font-size:6.5px; }
  .route-card .route-day-badge { min-width:70px; min-height:44px; padding:6px; font-size:8px; }
}
@media(prefers-reduced-motion:reduce) { .route-active-badge i:after { animation:none; } }

.journey-card { min-width:0; }
@media(max-width:600px) {
  .journey-card {
    width:100%;
    padding:19px 12px 20px;
  }
  .journey-heading {
    padding:0 8px 15px;
    border-bottom:1px solid #f1e9ec;
  }
  .stages {
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr));
    align-items:start;
    width:100%;
    min-width:0;
    margin:20px 0 0;
    padding:0;
  }
  .stages li {
    display:flex;
    flex-direction:column;
    align-items:center;
    min-width:0;
    width:auto;
    text-align:center;
  }
  .stages li:before {
    left:-50%;
    right:50%;
    top:14px;
    width:auto;
    height:2px;
  }
  .stage-marker {
    width:29px;
    height:29px;
    flex:0 0 29px;
    margin:0 auto 9px;
    border-radius:50% !important;
    font-size:10px;
  }
  .stages strong {
    display:block;
    width:100%;
    padding:0 2px;
    color:inherit;
    font-size:7px;
    font-weight:600;
    line-height:1.35;
    overflow-wrap:normal;
    word-break:normal;
  }
}

.site-footer {
  position:relative;
  display:block;
  overflow:hidden;
  margin:42px 0 28px;
  padding:0;
  border:1px solid #eadfe3;
  border-radius:20px;
  background:linear-gradient(135deg,#fff 0%,#fcf8f9 58%,#f8f1f3 100%);
  color:#4d4247;
  box-shadow:0 16px 42px rgba(83,45,58,.07);
}
.site-footer:before {
  content:'';
  position:absolute;
  width:260px;
  height:260px;
  top:-180px;
  right:-70px;
  border:1px solid rgba(190,34,73,.07);
  border-radius:50%;
  box-shadow:0 0 0 42px rgba(190,34,73,.025),0 0 0 84px rgba(190,34,73,.015);
  pointer-events:none;
}
.footer-main {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(210px,.72fr) minmax(0,1.55fr);
  gap:42px;
  padding:34px 36px 30px;
}
.footer-intro { min-width:0; }
.site-footer .footer-brand {
  display:flex;
  align-items:center;
  gap:10px;
  color:#40373b;
  font:750 28px/1 Arial,sans-serif;
  letter-spacing:-1.2px;
}
.footer-logo-mark { width:42px; height:44px; flex:0 0 42px; filter:drop-shadow(0 6px 10px rgba(168,10,49,.13)); }
.footer-intro>p {
  max-width:285px;
  margin-top:15px;
  color:#8e8287;
  font-size:10px;
  line-height:1.8;
}
.footer-trust {
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:18px;
  padding:8px 10px;
  border:1px solid #e8e1e3;
  border-radius:20px;
  background:#fff;
  color:#756970;
  font-size:8px;
}
.footer-trust i,.footer-mode i {
  width:6px;
  height:6px;
  flex:0 0 6px;
  border-radius:50%;
  background:#54d7a7;
  box-shadow:0 0 0 4px rgba(84,215,167,.11);
}
.footer-features {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.footer-feature {
  display:flex;
  align-items:flex-start;
  gap:11px;
  min-width:0;
  padding:17px 14px;
  border:1px solid #ede5e8;
  border-radius:13px;
  background:rgba(255,255,255,.82);
  box-shadow:0 5px 16px rgba(73,42,52,.025);
}
.footer-feature-icon {
  display:grid;
  place-items:center;
  width:31px;
  height:31px;
  flex:0 0 31px;
  border-radius:9px;
  background:#fff0f4;
  color:#c6224b;
}
.footer-feature-icon svg {
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.footer-feature strong {
  display:block;
  color:#55474d;
  font-size:9px;
  font-weight:650;
  line-height:1.45;
}
.footer-feature div>span {
  display:block;
  margin-top:6px;
  color:#978b90;
  font-size:8px;
  line-height:1.65;
}
.footer-bottom {
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:20px;
  padding:15px 36px;
  border-top:1px solid #ebe2e5;
  background:rgba(246,239,241,.72);
  color:#9a8d92;
  font-size:8px;
}
.site-footer .footer-mode {
  display:flex;
  align-items:center;
  gap:8px;
  margin-left:auto;
  padding:0;
  border:0;
  color:#786970;
  font-size:7px;
  letter-spacing:.8px;
}
@media(max-width:820px) {
  .footer-main { grid-template-columns:1fr; gap:25px; }
  .footer-intro { display:grid; grid-template-columns:auto 1fr; gap:0 18px; align-items:center; }
  .footer-intro>p { max-width:420px; margin-top:0; }
  .footer-trust { grid-column:1/-1; justify-self:start; }
}
@media(max-width:600px) {
  .site-footer { margin:30px 0 14px; border-radius:18px; }
  .footer-main { gap:23px; padding:26px 20px 22px; }
  .footer-intro { display:block; }
  .site-footer .footer-brand { font-size:25px; }
  .footer-logo-mark { width:38px; height:40px; flex-basis:38px; }
  .footer-intro>p { margin-top:14px; font-size:10px; }
  .footer-features { grid-template-columns:1fr; gap:8px; }
  .footer-feature { align-items:center; padding:14px; }
  .footer-feature strong { font-size:10px; }
  .footer-feature div>span { font-size:9px; }
  .footer-bottom { flex-wrap:wrap; gap:8px 14px; padding:15px 20px calc(15px + env(safe-area-inset-bottom)); }
  .footer-bottom>span:nth-child(2) { display:none; }
  .site-footer .footer-mode { width:auto; margin-left:auto; font-size:6px; }
}

/* Experiência premium da página pública. */
body:not(.admin-mode) {
  background:
    radial-gradient(circle at 8% 19%,rgba(205,7,50,.045),transparent 28%),
    radial-gradient(circle at 92% 44%,rgba(112,28,57,.035),transparent 25%),
    #faf8f9;
  color:#30272b;
}
body:not(.admin-mode)>.header {
  max-width:none;
  padding:0 28px 14px;
  border-bottom:1px solid #eee6e9;
  background:rgba(255,255,255,.94);
  box-shadow:0 8px 35px rgba(65,29,42,.045);
  backdrop-filter:blur(14px);
}
body:not(.admin-mode) .header-inner,
body:not(.admin-mode) .header .site-nav,
body:not(.admin-mode)>main { max-width:1180px; margin-left:auto; margin-right:auto; }
body:not(.admin-mode) .header-inner { height:94px; }
body:not(.admin-mode) .brand { font-size:35px; color:#271d21; }
body:not(.admin-mode) .tracklog-mark { width:47px; height:49px; filter:drop-shadow(0 7px 12px rgba(184,0,44,.14)); }
body:not(.admin-mode) .brand-tagline { color:#8e8086; font-size:10px; }
body:not(.admin-mode) .quick-tracking {
  border-color:#eadde1;
  background:#fff;
  box-shadow:0 5px 18px rgba(60,27,38,.055);
}
body:not(.admin-mode) .quick-tracking:focus-within { border-color:#d47a91; box-shadow:0 0 0 3px rgba(206,6,51,.07),0 7px 20px rgba(60,27,38,.06); }
body:not(.admin-mode) .quick-tracking button { background:linear-gradient(135deg,#d30a3b,#b9002d); box-shadow:0 5px 12px rgba(190,0,45,.18); }
body:not(.admin-mode) .header .site-nav {
  height:46px;
  overflow:hidden;
  border:1px solid #ebe3e6;
  border-radius:13px;
  background:#fff;
  box-shadow:0 6px 18px rgba(66,31,43,.04);
}
body:not(.admin-mode) .site-nav button { position:relative; color:#72666b; }
body:not(.admin-mode) .site-nav button:hover { color:#b90b35; background:#fff8fa; }
body:not(.admin-mode) .site-nav .nav-button.active { color:#b40832; font-weight:700; background:#fff7f9; }
body:not(.admin-mode)>main { padding:0 28px; }
body:not(.admin-mode) .tracking-banner {
  height:430px;
  margin-top:24px;
  border:1px solid #ead9df;
  border-radius:28px;
  background:linear-gradient(135deg,#fffafa 0%,#faeef1 52%,#f2dce2 100%);
  box-shadow:0 22px 65px rgba(86,37,53,.11);
}
body:not(.admin-mode) .tracking-banner:after {
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  border-radius:inherit;
  background:linear-gradient(115deg,rgba(255,255,255,.5),transparent 42%);
  pointer-events:none;
}
body:not(.admin-mode) .banner-photo { width:61%; }
body:not(.admin-mode) .banner-photo:after { background:linear-gradient(90deg,#f9eef1 0%,transparent 24%),linear-gradient(0deg,rgba(42,19,28,.32),transparent 54%); }
body:not(.admin-mode) .banner-copy { top:49px; left:55px; }
body:not(.admin-mode) .banner-copy h1 { color:#281f23; font-size:clamp(43px,4.9vw,59px); font-weight:700; letter-spacing:-2.5px; }
body:not(.admin-mode) .banner-copy h1>span { color:#c80034; text-shadow:0 7px 22px rgba(200,0,52,.08); }
body:not(.admin-mode) .banner-description { color:#76676d; font-size:12px; }
body:not(.admin-mode) .banner-copy>a { padding:10px 14px 10px 0; border:0; color:#a5002a; font-weight:700; }
body:not(.admin-mode) .banner-copy>a:hover { gap:28px; color:#d00036; }
body:not(.admin-mode) .banner-delivery-icon {
  right:25px;
  bottom:25px;
  border:1px solid rgba(255,255,255,.85);
  border-radius:16px;
  background:rgba(255,255,255,.94);
  box-shadow:0 16px 38px rgba(50,19,31,.16);
  backdrop-filter:blur(12px);
}
body:not(.admin-mode) .lookup-area { max-width:900px; margin:-38px auto 0; }
body:not(.admin-mode) .search-card {
  padding:31px 38px 25px;
  border:1px solid #e7dce0;
  border-top:4px solid #cb0635;
  border-radius:20px;
  box-shadow:0 24px 60px rgba(71,28,43,.13);
}
body:not(.admin-mode) .search-card-icon {
  background:linear-gradient(145deg,#fff6f8,#f8dfe6);
  border-color:#edcad4;
  box-shadow:0 8px 20px rgba(184,18,59,.09);
}
body:not(.admin-mode) .search-card h2 { color:#302429; font-weight:700; }
body:not(.admin-mode) .input-wrap { border-color:#ded1d6; background:#fcfafb; }
body:not(.admin-mode) .input-wrap:focus-within { border-color:#ce345b; background:#fff; box-shadow:0 0 0 4px rgba(206,6,51,.07); }
body:not(.admin-mode) .search-card .primary-button {
  border-color:#bf002e;
  background:linear-gradient(135deg,#d70b3d,#b6002b);
  box-shadow:0 10px 24px rgba(183,0,43,.20);
}
body:not(.admin-mode) .search-card .primary-button:hover { transform:translateY(-1px); background:linear-gradient(135deg,#e00b40,#ae0029); box-shadow:0 13px 28px rgba(183,0,43,.25); }
body:not(.admin-mode) .lookup-reassurance { gap:12px; margin-top:20px; }
body:not(.admin-mode) .lookup-reassurance>span {
  padding:8px 11px;
  border:1px solid #ece3e6;
  border-radius:20px;
  background:rgba(255,255,255,.75);
  color:#806e75;
}
body:not(.admin-mode) .lookup-reassurance svg { stroke:#bd3153; }
body:not(.admin-mode) .lookup-reassurance .landing-demo-label { margin:0; padding:8px 11px; border:1px solid #eadce1; color:#9e4d64; }
body:not(.admin-mode) .customer-guide {
  margin-top:58px;
  padding:30px;
  grid-template-columns:250px 1fr;
  border:1px solid #e9dfe2;
  border-radius:20px;
  background:rgba(255,255,255,.88);
  box-shadow:0 14px 42px rgba(66,31,43,.055);
}
body:not(.admin-mode) .customer-guide-heading h2 { color:#392d32; font-weight:650; }
body:not(.admin-mode) .customer-guide ol { gap:12px; }
body:not(.admin-mode) .customer-guide li {
  min-height:150px;
  padding:18px;
  border:1px solid #eee5e8;
  border-radius:14px;
  background:linear-gradient(145deg,#fff,#fdf8f9);
}
body:not(.admin-mode) .guide-number { color:#fff; background:linear-gradient(135deg,#d5204b,#b80b35); box-shadow:0 6px 14px rgba(176,12,51,.14); }
body:not(.admin-mode) .customer-guide h3 { color:#49383f; font-size:12px; }
body:not(.admin-mode) .customer-guide p:not(.eyebrow) { color:#83747a; }
body:not(.admin-mode) .contact-strip {
  margin-top:25px;
  padding:20px 25px;
  border:1px solid #af002a;
  border-radius:16px;
  background:linear-gradient(120deg,#be0735,#8f0a2c);
  color:#fff;
  box-shadow:0 15px 34px rgba(145,6,42,.17);
}
body:not(.admin-mode) .contact-strip:hover { transform:translateY(-1px); background:linear-gradient(120deg,#cc083a,#96072d); }
body:not(.admin-mode) .contact-strip .contact-icon { border-color:rgba(255,255,255,.17); background:rgba(255,255,255,.12); }
body:not(.admin-mode) .contact-icon svg { stroke:#fff; }
body:not(.admin-mode) .contact-copy>span { color:#eacbd3; }
body:not(.admin-mode) .contact-strip .contact-action { color:#fff; font-weight:700; }
body:not(.admin-mode) #tracking-result { margin-top:45px; }
body:not(.admin-mode) .lookup-matches {
  max-width:900px;
  margin:38px auto 0;
  padding:28px;
  border:1px solid #e7dce0;
  border-radius:20px;
  background:#fff;
  box-shadow:0 20px 52px rgba(71,28,43,.10);
}
body:not(.admin-mode) .lookup-matches .eyebrow { margin-bottom:7px; color:#c00637; }
body:not(.admin-mode) .lookup-matches h2 { color:#302429; font-size:22px; letter-spacing:-.5px; }
body:not(.admin-mode) .lookup-matches>div>p:last-child { margin-top:8px; color:#887a80; font-size:11px; }
body:not(.admin-mode) .lookup-matches-list { display:grid; gap:10px; margin-top:22px; }
body:not(.admin-mode) .lookup-match {
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto 24px;
  align-items:center;
  gap:18px;
  padding:17px 18px;
  border:1px solid #ebdfe3;
  border-radius:14px;
  background:linear-gradient(135deg,#fff,#fdf9fa);
  color:#34272c;
  text-align:left;
  transition:border-color .18s,box-shadow .18s,transform .18s;
}
body:not(.admin-mode) .lookup-match:hover { border-color:#d99aad; box-shadow:0 10px 24px rgba(95,34,53,.09); transform:translateY(-1px); }
body:not(.admin-mode) .lookup-match-main,body:not(.admin-mode) .lookup-match-meta { min-width:0; display:flex; flex-direction:column; gap:6px; }
body:not(.admin-mode) .lookup-match-main strong { font:700 13px Consolas,monospace; color:#bd0032; }
body:not(.admin-mode) .lookup-match-main>span { overflow:hidden; color:#776a6f; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
body:not(.admin-mode) .lookup-match-meta { align-items:flex-end; }
body:not(.admin-mode) .lookup-match-meta time { color:#988c91; font-size:8px; }
body:not(.admin-mode) .lookup-match-status { padding:5px 8px; border:1px solid #ead5dc; border-radius:999px; background:#fff5f8; color:#b90031; font-size:8px; font-weight:700; }
body:not(.admin-mode) .lookup-match-status.delivered { border-color:#cce9dd; background:#f0faf6; color:#16815e; }
body:not(.admin-mode) .lookup-match-arrow { color:#c40035; font-size:18px; }
body:not(.admin-mode) .result-heading { padding:0 4px; }
body:not(.admin-mode) .result-heading h2 { color:#32252a; font-size:24px; font-weight:700; }
body:not(.admin-mode) .shipment-code { border-color:#e4cfd6; background:#fff; box-shadow:0 7px 18px rgba(72,32,45,.055); }
body:not(.admin-mode) .status-card {
  border:1px solid #970027;
  background:linear-gradient(155deg,#bd0735 0%,#94042b 60%,#750723 100%);
  box-shadow:0 20px 42px rgba(126,3,37,.20);
}
body:not(.admin-mode) .status-pill { border-color:rgba(255,255,255,.20); background:rgba(255,255,255,.10); color:#fff; }
body:not(.admin-mode) .status-pill:before { background:#fff; }
body:not(.admin-mode) .status-card h2 { color:#fff; }
body:not(.admin-mode) .route-card,
body:not(.admin-mode) .journey-card,
body:not(.admin-mode) .history-card,
body:not(.admin-mode) .info-card { border-color:#e8dce0; box-shadow:0 16px 42px rgba(68,30,43,.065); }
body:not(.admin-mode) .route-card { background:#fff; }
body:not(.admin-mode) .route-card .route-map { border-color:#e9dce0; background:linear-gradient(145deg,#fffbfc,#f7eff1); }
body:not(.admin-mode) .journey-card { background:linear-gradient(145deg,#fff,#fdf9fa); }
body:not(.admin-mode) .info-card { position:relative; overflow:hidden; background:linear-gradient(145deg,#fff,#fff7f9); }
body:not(.admin-mode) .info-card:after { content:''; position:absolute; width:110px; height:110px; right:-70px; bottom:-70px; border:1px solid rgba(194,22,66,.10); border-radius:50%; box-shadow:0 0 0 20px rgba(194,22,66,.025); }

@media(max-width:760px) {
  body:not(.admin-mode)>.header { padding:0 18px 11px; }
  body:not(.admin-mode) .header .site-nav { border-radius:11px; }
  body:not(.admin-mode)>main { padding:0 18px; }
  body:not(.admin-mode) .tracking-banner { height:535px; }
  body:not(.admin-mode) .banner-copy { left:29px; }
  body:not(.admin-mode) .customer-guide { grid-template-columns:1fr; }
}
@media(max-width:600px) {
  body:not(.admin-mode) { background:#faf8f9; }
  body:not(.admin-mode)>.header { padding:0 14px 9px; }
  body:not(.admin-mode) .header-inner { height:78px; }
  body:not(.admin-mode) .brand { font-size:28px; }
  body:not(.admin-mode) .tracklog-mark { width:37px; height:40px; }
  body:not(.admin-mode) .utility-row button { border-color:#eadde1; background:#fff7f9; color:#9e2948; }
  body:not(.admin-mode) .header .site-nav { height:43px; }
  body:not(.admin-mode)>main { padding:0 14px; }
  body:not(.admin-mode) .tracking-banner { height:520px; margin-top:15px; border-radius:22px; box-shadow:0 16px 42px rgba(86,37,53,.10); }
  body:not(.admin-mode) .banner-copy { top:27px; left:23px; width:calc(100% - 46px); }
  body:not(.admin-mode) .banner-copy h1 { font-size:39px; letter-spacing:-1.8px; }
  body:not(.admin-mode) .banner-photo { height:225px; }
  body:not(.admin-mode) .banner-delivery-icon { right:12px; bottom:12px; border-radius:13px; }
  body:not(.admin-mode) .lookup-area { width:calc(100% - 8px); margin:-20px auto 0; }
  body:not(.admin-mode) .search-card { padding:24px 18px 20px; border-radius:18px; box-shadow:0 20px 46px rgba(71,28,43,.14); }
  body:not(.admin-mode) .search-card-heading { align-items:flex-start; }
  body:not(.admin-mode) .search-card h2 { font-size:20px; }
  body:not(.admin-mode) .lookup-reassurance { justify-content:flex-start; gap:8px; }
  body:not(.admin-mode) .lookup-reassurance>span { padding:7px 9px; font-size:7.5px; }
  body:not(.admin-mode) .lookup-reassurance .landing-demo-label { width:auto; padding:7px 9px; }
  body:not(.admin-mode) .customer-guide { margin-top:35px; padding:22px 17px; gap:20px; border-radius:18px; }
  body:not(.admin-mode) .customer-guide ol { gap:10px; }
  body:not(.admin-mode) .customer-guide li { min-height:0; padding:15px; border:1px solid #eee3e7; }
  body:not(.admin-mode) .contact-strip { padding:17px; border-radius:15px; }
  body:not(.admin-mode) #tracking-result { margin-top:34px; }
  body:not(.admin-mode) .result-heading h2 { font-size:20px; }
  body:not(.admin-mode) .status-card { box-shadow:0 15px 35px rgba(126,3,37,.19); }
  body:not(.admin-mode) .route-card,
  body:not(.admin-mode) .journey-card,
  body:not(.admin-mode) .history-card,
  body:not(.admin-mode) .info-card { box-shadow:0 12px 30px rgba(68,30,43,.06); }
}

/* Painel premium do percurso entre cidades. */
body:not(.admin-mode) .route-card {
  overflow:hidden;
  border:1px solid #d9cbd0;
  border-radius:22px;
  background:#fff;
  box-shadow:0 22px 55px rgba(58,23,36,.12);
}
body:not(.admin-mode) .route-card .route-card-heading {
  min-height:96px;
  padding:23px 25px;
  background:
    radial-gradient(circle at 88% -40%,rgba(255,255,255,.13),transparent 35%),
    linear-gradient(125deg,#4a1729 0%,#71112f 55%,#9e0b35 100%);
}
body:not(.admin-mode) .route-heading-icon {
  width:46px;
  height:46px;
  border-color:rgba(255,255,255,.16);
  border-radius:14px;
  background:rgba(255,255,255,.10);
  color:#fff;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035);
}
body:not(.admin-mode) .route-card-heading .eyebrow { color:#f1b7c7; }
body:not(.admin-mode) .route-card-heading h3 { color:#fff; font-size:17px; font-weight:700; }
body:not(.admin-mode) .route-phase-badge {
  border-color:rgba(255,255,255,.20);
  background:rgba(255,255,255,.10);
  color:#fff;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025);
  backdrop-filter:blur(8px);
}
body:not(.admin-mode) .route-card .route-map {
  margin:14px 14px 0;
  border:1px solid #e5dadd;
  border-radius:17px;
  background:#f7f4f5;
  box-shadow:inset 0 1px 0 #fff;
}
body:not(.admin-mode) .route-map-topbar { padding:16px 18px 1px; }
body:not(.admin-mode) .map-location-icon { color:#bc1944; }
body:not(.admin-mode) .route-map-topbar strong { color:#49383f; font-size:10px; font-weight:700; }
body:not(.admin-mode) .map-illustration-label { color:#9e7e88; font-weight:700; letter-spacing:1.4px; }
body:not(.admin-mode) .route-livebar {
  margin:14px 17px 0;
  padding:13px 15px;
  border:1px solid #3d2d33;
  border-radius:14px;
  background:
    radial-gradient(circle at 88% 0,rgba(199,17,64,.20),transparent 30%),
    linear-gradient(120deg,#24181d,#352129);
  box-shadow:0 11px 26px rgba(46,20,30,.16);
}
body:not(.admin-mode) .country-mark { box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 7px 14px rgba(5,80,48,.20); }
body:not(.admin-mode) .route-livebar small { color:#a9959d; }
body:not(.admin-mode) .route-livebar strong { color:#fff; }
body:not(.admin-mode) .route-current-leg { border-color:rgba(255,255,255,.10); }
body:not(.admin-mode) .route-current-leg strong { color:#ff7698; font-size:11px; }
body:not(.admin-mode) .route-live-status strong { color:#70dfae; }
body:not(.admin-mode) .route-live-status small { color:#ad9ca3; }
body:not(.admin-mode) .live-dot { background:#48d495; box-shadow:0 0 0 4px rgba(72,212,149,.13); }
body:not(.admin-mode) .city-route-viewport {
  padding:42px 18px 35px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.86),transparent 8%,transparent 92%,rgba(255,255,255,.86)),
    radial-gradient(circle at 15% 24%,#eadfe2 0 1.5px,transparent 2px),
    linear-gradient(180deg,#fff,#f9f6f7);
  background-size:auto,24px 24px,auto;
}
body:not(.admin-mode) .city-route { min-width:650px; }
body:not(.admin-mode) .city-stop { min-width:130px; padding:0 7px; }
body:not(.admin-mode) .city-stop:not(:last-child):after { top:22px; height:3px; background:#ded3d7; }
body:not(.admin-mode) .city-stop.completed:not(:last-child):after { background:linear-gradient(90deg,#a90734,#d31a49); box-shadow:0 2px 6px rgba(190,12,56,.12); }
body:not(.admin-mode) .city-stop.current:not(:last-child):after { background:repeating-linear-gradient(90deg,#cf5675 0 7px,transparent 7px 12px); }
body:not(.admin-mode) .city-stop-marker {
  width:46px;
  height:46px;
  margin-bottom:18px;
  border:2px solid #cab9bf;
  background:#fff;
  color:#816c74;
  box-shadow:0 0 0 6px #f7f1f3,0 8px 17px rgba(63,30,42,.09);
}
body:not(.admin-mode) .city-stop.completed .city-stop-marker {
  border-color:#a90031;
  background:linear-gradient(145deg,#d5184a,#a80031);
  box-shadow:0 0 0 6px #f6dfe6,0 9px 20px rgba(145,0,42,.18);
}
body:not(.admin-mode) .city-stop.current .city-stop-marker {
  border:4px solid #fff;
  background:linear-gradient(145deg,#ef2559,#ad0035);
  box-shadow:0 0 0 7px #e8b3c2,0 12px 27px rgba(130,0,39,.28);
}
body:not(.admin-mode) .city-stop.current .city-stop-marker:after { border-color:#c43058; }
body:not(.admin-mode) .city-stop-card {
  min-height:142px;
  padding:17px 14px 14px;
  border-color:#ded2d6;
  border-radius:15px;
  background:#fff;
  box-shadow:0 9px 24px rgba(53,27,36,.07);
}
body:not(.admin-mode) .city-stop-card:hover { transform:translateY(-3px); box-shadow:0 14px 30px rgba(53,27,36,.11); }
body:not(.admin-mode) .city-stop.completed .city-stop-card { border-color:#ddbec8; background:linear-gradient(145deg,#fff,#fff9fb); }
body:not(.admin-mode) .city-stop.pending .city-stop-card { border-style:dashed; background:#fbfaf9; box-shadow:none; }
body:not(.admin-mode) .city-stop.current .city-stop-card {
  border-color:#750023;
  background:
    radial-gradient(circle at 100% 0,rgba(255,255,255,.12),transparent 35%),
    linear-gradient(145deg,#b90a3b,#780026);
  box-shadow:0 18px 36px rgba(119,0,36,.28);
  transform:translateY(-7px);
}
body:not(.admin-mode) .city-stop-kind { color:#986d7a; }
body:not(.admin-mode) .city-stop-place strong { color:#38292f; font-size:12px; font-weight:750; }
body:not(.admin-mode) .city-stop-place span { background:#f5e4e9; color:#a40835; }
body:not(.admin-mode) .city-stop-meta { color:#89767d; }
body:not(.admin-mode) .route-card .map-legend {
  padding:15px 18px;
  border-top:1px solid #e8dfe2;
  background:#f4f0f1;
  color:#6f5f65;
  font-weight:600;
}
body:not(.admin-mode) .route-card .completed-dot { background:#bc0b3a; }
body:not(.admin-mode) .route-card .current-dot { background:#e02052; box-shadow:0 0 0 3px #e8b4c2; }
body:not(.admin-mode) #route-map-count { color:#846e76; font-weight:700; }
body:not(.admin-mode) .route-card .route-footer {
  margin:14px;
  border-color:#dccbd0;
  background:linear-gradient(120deg,#fff,#faf4f6);
  box-shadow:0 10px 26px rgba(62,27,40,.075);
}
body:not(.admin-mode) .route-card .route-footer-icon {
  border-color:#bd1745;
  background:linear-gradient(145deg,#c71042,#8f002b);
  color:#fff;
  box-shadow:0 9px 22px rgba(143,0,43,.18);
}
body:not(.admin-mode) .route-card .route-day-badge { border-color:#dcbcc6; color:#9e0934; box-shadow:0 7px 18px rgba(78,31,44,.07); }

@media(max-width:600px) {
  body:not(.admin-mode) .route-card { border-radius:20px; }
  body:not(.admin-mode) .route-card .route-card-heading { min-height:86px; padding:19px 16px; }
  body:not(.admin-mode) .route-heading-icon { width:40px; height:40px; }
  body:not(.admin-mode) .route-card-heading h3 { font-size:14px; }
  body:not(.admin-mode) .route-phase-badge { max-width:102px; }
  body:not(.admin-mode) .route-card .route-map { margin:10px 9px 0; }
  body:not(.admin-mode) .route-livebar { margin:11px 10px 0; padding:12px; }
  body:not(.admin-mode) .city-route-viewport { padding:38px 7px 30px; }
  body:not(.admin-mode) .city-route { min-width:0; }
  body:not(.admin-mode) .city-stop { width:158px; min-width:158px; flex-basis:158px; }
  body:not(.admin-mode) .city-stop-card { min-height:145px; }
  body:not(.admin-mode) .route-card .map-legend { padding:13px 14px; }
  body:not(.admin-mode) .route-scroll-hint { padding:10px 12px 13px; background:#f4f0f1; color:#8d747d; font-size:7px; font-weight:700; letter-spacing:.3px; }
  body:not(.admin-mode) .route-card .route-footer { margin:11px 9px; }
}

/* Paleta pública TrackLog: vermelho, branco e grafite. */
body:not(.admin-mode) .route-card .route-card-heading {
  background:
    radial-gradient(circle at 88% -40%,rgba(255,255,255,.18),transparent 36%),
    linear-gradient(125deg,#e0003c 0%,#d00036 56%,#b90030 100%);
}
body:not(.admin-mode) .route-card {
  border-color:#dedfe3;
  box-shadow:0 22px 55px rgba(35,37,43,.11);
}
body:not(.admin-mode) .route-card .route-map {
  border-color:#e1e2e6;
  background:#f7f7f8;
}
body:not(.admin-mode) .route-livebar {
  border-color:#2f3035;
  background:
    radial-gradient(circle at 88% 0,rgba(224,0,60,.18),transparent 31%),
    linear-gradient(120deg,#202126,#2d2e34);
  box-shadow:0 11px 26px rgba(24,25,29,.18);
}
body:not(.admin-mode) .route-livebar small { color:#aeb0b8; }
body:not(.admin-mode) .route-current-leg { border-color:rgba(255,255,255,.12); }
body:not(.admin-mode) .route-current-leg strong { color:#ff6b91; }
body:not(.admin-mode) .route-live-status small { color:#afb1b8; }
body:not(.admin-mode) .city-route-viewport {
  background:
    linear-gradient(90deg,rgba(255,255,255,.88),transparent 8%,transparent 92%,rgba(255,255,255,.88)),
    radial-gradient(circle at 15% 24%,#dddfe3 0 1.5px,transparent 2px),
    linear-gradient(180deg,#fff,#f7f7f8);
  background-size:auto,24px 24px,auto;
}
body:not(.admin-mode) .city-stop.completed:not(:last-child):after { background:linear-gradient(90deg,#d00036,#ed2358); }
body:not(.admin-mode) .city-stop.completed .city-stop-marker {
  border-color:#c90034;
  background:linear-gradient(145deg,#ed194f,#c50033);
  box-shadow:0 0 0 6px #fde3ea,0 9px 20px rgba(199,0,52,.17);
}
body:not(.admin-mode) .city-stop.current .city-stop-marker {
  background:linear-gradient(145deg,#f22a5d,#cb0036);
  box-shadow:0 0 0 7px #f4b6c7,0 12px 27px rgba(198,0,52,.24);
}
body:not(.admin-mode) .city-stop.current .city-stop-card {
  border-color:#b90030;
  background:
    radial-gradient(circle at 100% 0,rgba(255,255,255,.16),transparent 36%),
    linear-gradient(145deg,#df0741,#b90030);
  box-shadow:0 18px 36px rgba(185,0,48,.23);
}
body:not(.admin-mode) .city-stop-card { border-color:#dddfe3; }
body:not(.admin-mode) .city-stop.completed .city-stop-card { border-color:#efc5d0; }
body:not(.admin-mode) .route-card .map-legend { border-color:#e0e1e5; background:#f3f3f5; color:#62636a; }
body:not(.admin-mode) .route-card .route-footer { border-color:#dfe0e4; background:linear-gradient(120deg,#fff,#f7f7f8); }
body:not(.admin-mode) .route-card .route-footer-icon {
  border-color:#d00036;
  background:linear-gradient(145deg,#e8134a,#c40033);
  box-shadow:0 9px 22px rgba(196,0,51,.17);
}
body:not(.admin-mode) .status-card {
  border-color:#bd0031;
  background:linear-gradient(150deg,#e0003d 0%,#ce0036 58%,#b5002e 100%);
  box-shadow:0 20px 42px rgba(190,0,49,.19);
}
body:not(.admin-mode) .contact-strip {
  border-color:#c40034;
  background:linear-gradient(120deg,#e20842,#c40034);
  box-shadow:0 15px 34px rgba(196,0,52,.17);
}
body:not(.admin-mode) .contact-strip:hover { background:linear-gradient(120deg,#ec0a47,#ba002f); }

@media (max-width: 700px) {
  body:not(.admin-mode) .lookup-matches { margin-top:28px; padding:20px 15px; border-radius:17px; }
  body:not(.admin-mode) .lookup-matches h2 { font-size:19px; line-height:1.25; }
  body:not(.admin-mode) .lookup-match { grid-template-columns:minmax(0,1fr) 18px; gap:10px; padding:15px 13px; }
  body:not(.admin-mode) .lookup-match-meta { grid-column:1 / -1; flex-direction:row; align-items:center; justify-content:space-between; padding-top:10px; border-top:1px solid #f0e7ea; }
  body:not(.admin-mode) .lookup-match-arrow { grid-column:2; grid-row:1; }
}

/* Central administrativa premium: grafite, branco e vermelho TrackLog. */
body.admin-mode {
  --admin-red:#d00036;
  --admin-red-dark:#b5002f;
  --admin-graphite:#18181b;
  --admin-muted:#77747a;
  --admin-line:#e7e4e6;
  min-width:320px;
  background:
    radial-gradient(circle at 85% 0,rgba(208,0,54,.055),transparent 28%),
    #ecebed;
  color:#252328;
  font-family:Inter,'Segoe UI',Arial,sans-serif;
}
body.admin-mode>.header,
body.admin-mode main>footer { display:none; }
body.admin-mode main { max-width:1540px; min-height:100vh; margin:auto; padding:14px; }
body.admin-mode #admin-view { min-height:calc(100vh - 28px); }
body.admin-mode .admin-shell {
  min-height:calc(100vh - 28px);
  grid-template-columns:272px minmax(0,1fr);
  border:1px solid rgba(31,30,34,.08);
  border-radius:28px;
  background:#f7f7f8;
  box-shadow:0 28px 90px rgba(26,21,24,.12);
}
body.admin-mode .admin-sidebar {
  min-height:calc(100vh - 28px);
  padding:28px 18px 22px;
  background:linear-gradient(160deg,#252529 0%,#19191d 54%,#111114 100%);
  box-shadow:inset -1px 0 rgba(255,255,255,.035),inset 0 4px var(--admin-red);
  color:#fff;
}
body.admin-mode .admin-sidebar:before {
  width:230px;
  height:230px;
  top:-125px;
  right:-115px;
  border-color:rgba(255,255,255,.08);
  box-shadow:0 0 0 38px rgba(255,255,255,.022),0 0 0 76px rgba(255,255,255,.012);
}
body.admin-mode .admin-brand {
  align-items:center;
  gap:12px;
  margin:0;
  padding:0 10px 32px;
  color:#fff;
  font-family:inherit;
  letter-spacing:0;
}
body.admin-mode .admin-brand-logo {
  width:43px;
  height:45px;
  flex:0 0 43px;
  filter:drop-shadow(0 8px 14px rgba(208,0,54,.24));
}
body.admin-mode .admin-brand strong { color:#fff; font:750 19px/1 Arial,sans-serif; letter-spacing:-.6px; }
body.admin-mode .admin-brand small { margin-top:6px; color:#a7a4ab; font-size:7px; letter-spacing:1.55px; }
body.admin-mode .admin-menu-label { margin:4px 13px 12px; color:#77747c; font-size:8px; letter-spacing:1.9px; }
body.admin-mode .admin-navigation.admin-sidebar-nav {
  display:grid;
  gap:7px;
  margin:0;
  padding:0;
  overflow:visible;
  border:0;
}
body.admin-mode .admin-sidebar-nav button {
  min-height:48px;
  padding:0 14px;
  border-radius:13px;
  background:transparent;
  color:#aaa7ae;
  font-size:11px;
  white-space:nowrap;
}
body.admin-mode .admin-sidebar-nav button:hover { background:rgba(255,255,255,.065); color:#fff; transform:translateX(2px); }
body.admin-mode .admin-sidebar-nav button.selected {
  background:#fff;
  color:#202024;
  box-shadow:0 12px 28px rgba(0,0,0,.24);
}
body.admin-mode .admin-sidebar-nav button.selected:before { left:0; width:4px; height:23px; background:var(--admin-red); }
body.admin-mode .admin-sidebar-nav svg { width:19px; height:19px; margin-right:12px; stroke-width:1.7; }
body.admin-mode .admin-sidebar-nav button:first-child svg rect { fill:none; stroke:currentColor; opacity:1; }
body.admin-mode .admin-sidebar-nav button>.admin-nav-label {
  display:block;
  flex:1;
  min-width:0;
  min-height:0;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:inherit;
  font-size:inherit;
  text-align:left;
}
body.admin-mode .admin-sidebar-nav button b {
  min-width:25px;
  padding:4px 7px;
  border-radius:20px;
  background:rgba(255,255,255,.09);
  color:#c9c6cc;
  font-size:8px;
}
body.admin-mode .admin-sidebar-nav button.selected b { background:#f8e4e9; color:#bd0031; }
body.admin-mode .admin-protection {
  border-color:rgba(255,255,255,.08);
  background:rgba(255,255,255,.045);
  box-shadow:inset 0 1px rgba(255,255,255,.025);
}
body.admin-mode .admin-protection>span { background:rgba(26,151,111,.16); color:#62dfb7; }
body.admin-mode .admin-protection strong { color:#e8e7e9; }
body.admin-mode .admin-protection p { color:#85828a; }
body.admin-mode .admin-profile { border-color:rgba(255,255,255,.08); }
body.admin-mode .admin-avatar { background:linear-gradient(145deg,#f6dce3,#fff); color:#bf0032; box-shadow:0 5px 13px rgba(0,0,0,.18); }
body.admin-mode .admin-profile strong { color:#fff; }
body.admin-mode .admin-profile small { color:#817e86; }
body.admin-mode .admin-profile>a { display:grid; place-items:center; width:30px; height:30px; border-radius:9px; color:#8e8b92; }
body.admin-mode .admin-profile>a:hover { background:rgba(255,255,255,.08); color:#fff; }
body.admin-mode .admin-workspace { background:#f7f7f8; }
body.admin-mode .admin-topbar {
  min-height:142px;
  padding:31px 42px 27px;
  border-bottom:1px solid var(--admin-line);
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(14px);
}
body.admin-mode .admin-topbar #admin-breadcrumb { color:#c00033; font-size:8px; letter-spacing:1.8px; }
body.admin-mode .admin-topbar h1 { color:#202024; font-size:34px; font-weight:720; letter-spacing:-1.5px; }
body.admin-mode .admin-topbar #admin-page-description { color:#858188; font-size:11px; }
body.admin-mode .admin-topbar .primary-button {
  min-width:156px;
  min-height:47px;
  border:1px solid #b90030;
  border-radius:13px;
  background:linear-gradient(135deg,#dc0b40,#bc002f);
  box-shadow:0 12px 25px rgba(190,0,48,.21);
  color:#fff;
}
body.admin-mode .admin-topbar .primary-button:hover { transform:translateY(-1px); background:linear-gradient(135deg,#eb124a,#b0002b); }
body.admin-mode .admin-content { padding:32px 42px 48px; }
body.admin-mode .environment-notice {
  margin:0 0 20px;
  padding:12px 15px;
  border:1px solid #e5e2e4;
  border-radius:12px;
  background:#fff;
  color:#7c787f;
  box-shadow:0 5px 18px rgba(30,24,27,.025);
}
body.admin-mode .environment-notice>span { display:grid; place-items:center; width:24px; height:24px; border-radius:8px; background:#fff0f4; color:#c50034; font-size:13px; }
body.admin-mode .environment-notice strong { color:#3b383d; }
body.admin-mode .admin-welcome {
  padding:30px 32px;
  border:1px solid #e6e2e4;
  border-left:4px solid var(--admin-red);
  border-radius:19px;
  background:
    radial-gradient(circle at 96% 15%,rgba(208,0,54,.07),transparent 23%),
    linear-gradient(120deg,#fff 0%,#fff 65%,#fbf4f6 100%);
  box-shadow:0 10px 32px rgba(34,27,30,.045);
}
body.admin-mode .admin-welcome:after { border-color:rgba(208,0,54,.08); box-shadow:0 0 0 29px rgba(208,0,54,.025); }
body.admin-mode .admin-welcome .eyebrow { color:#c30033; }
body.admin-mode .admin-welcome h2 { color:#222126; font-size:25px; font-weight:700; }
body.admin-mode .admin-welcome p:not(.eyebrow) { color:#827e84; }
body.admin-mode .admin-live-badge { border-color:#cde8dc; background:#f2fbf6; color:#237054; box-shadow:0 4px 14px rgba(39,132,96,.06); }
body.admin-mode .admin-content .admin-summary { gap:15px; margin:19px 0; }
body.admin-mode .admin-content .summary-card {
  min-height:126px;
  padding:23px;
  overflow:hidden;
  border:1px solid #e5e2e4;
  border-radius:18px;
  background:linear-gradient(145deg,#fff,#fcfbfc);
  box-shadow:0 8px 26px rgba(37,29,33,.04);
  transition:transform .18s,border-color .18s,box-shadow .18s;
}
body.admin-mode .admin-content .summary-card:hover { transform:translateY(-2px); border-color:#dfc8cf; box-shadow:0 13px 32px rgba(52,28,37,.07); }
body.admin-mode .admin-content .summary-card:before { content:''; position:absolute; inset:0 auto 0 0; width:3px; background:linear-gradient(#e50b43,#b8002e); }
body.admin-mode .admin-content .summary-card:after { content:'↗'; background:#fff0f4; color:#c00033; }
body.admin-mode .admin-content .summary-card span { color:#827e84; font-size:10px; font-weight:600; }
body.admin-mode .admin-content .summary-card strong { color:#1f1e22; font-size:32px; font-weight:720; }
body.admin-mode .admin-overview-grid { gap:19px; }
body.admin-mode .admin-quick-card,
body.admin-mode .admin-operation-card {
  padding:27px;
  border:1px solid #e5e2e4;
  border-radius:19px;
  box-shadow:0 9px 28px rgba(37,29,33,.04);
}
body.admin-mode .admin-quick-card { background:#fff; }
body.admin-mode .admin-quick-card>.eyebrow { color:#ba0031; }
body.admin-mode .admin-quick-card>h3 { color:#252328; font-size:17px; }
body.admin-mode .admin-quick-actions { gap:11px; }
body.admin-mode .admin-quick-actions button {
  min-height:76px;
  border-color:#ebe7e9;
  border-radius:14px;
  background:#faf9fa;
}
body.admin-mode .admin-quick-actions button:hover { transform:translateY(-2px); border-color:#e2bdc7; background:#fff5f7; box-shadow:0 8px 18px rgba(124,28,54,.07); }
body.admin-mode .admin-quick-actions button>span { border-radius:11px; background:#ffe9ef; color:#c50034; }
body.admin-mode .admin-quick-actions strong { color:#2c292e; font-size:10px; }
body.admin-mode .admin-operation-card {
  border-color:#252529;
  background:linear-gradient(150deg,#29292e,#151518);
  box-shadow:inset 0 3px var(--admin-red),0 9px 28px rgba(37,29,33,.07);
  color:#fff;
}
body.admin-mode .admin-operation-card>.eyebrow { color:#ff6d92; }
body.admin-mode .admin-operation-card>h3 { color:#fff; font-family:inherit; font-weight:700; }
body.admin-mode .admin-operation-icon { border-color:rgba(255,255,255,.12); background:rgba(255,255,255,.07); color:#ff7498; }
body.admin-mode .admin-operation-card li { color:#aaa7ae; }
body.admin-mode .admin-operation-card li span { background:rgba(208,0,54,.18); color:#ff8aaa; }
body.admin-mode .integration-heading { margin-bottom:22px; }
body.admin-mode .integration-heading h2 { color:#242227; font-size:25px; font-weight:710; }
body.admin-mode .integration-heading>div>p:last-child { color:#868188; }
body.admin-mode .integration-card,
body.admin-mode .admin-content .admin-list-card,
body.admin-mode .paid-filters {
  border-color:#e4e1e3;
  border-radius:18px;
  background:#fff;
  box-shadow:0 9px 28px rgba(37,29,33,.045);
}
body.admin-mode .admin-content .admin-list-card .card-heading { padding:25px 27px; }
body.admin-mode .admin-content .admin-list-card .card-heading .eyebrow { color:#ba0031; }
body.admin-mode .admin-content .admin-list-card th,
body.admin-mode .integration-card th { padding-top:14px; padding-bottom:14px; background:#f5f4f5; color:#7f7a81; font-weight:700; }
body.admin-mode .admin-content .admin-list-card td,
body.admin-mode .integration-card td { padding-top:18px; padding-bottom:18px; border-color:#eeebed; }
body.admin-mode .admin-content .admin-list-card td code,
body.admin-mode .customs-code { border-color:#ebdbe0; border-radius:9px; background:#fff4f7; color:#a9002c; }
body.admin-mode .text-button { color:#bd0032; font-weight:650; }
body.admin-mode .text-button:hover { color:#e0003b; }
body.admin-mode .integration-card input:not([type=checkbox]),
body.admin-mode .integration-card select,
body.admin-mode .integration-card textarea,
body.admin-mode .paid-filters input,
body.admin-mode .paid-filters select {
  border-color:#dedadd;
  border-radius:11px;
  background:#fbfafb;
  color:#343136;
}
body.admin-mode .integration-card input:focus,
body.admin-mode .integration-card select:focus,
body.admin-mode .integration-card textarea:focus,
body.admin-mode .paid-filters input:focus,
body.admin-mode .paid-filters select:focus { border-color:#d15a78; background:#fff; box-shadow:0 0 0 4px rgba(208,0,54,.07); outline:0; }
body.admin-mode .integration-card .primary-button,
body.admin-mode .customs-fee-form .primary-button {
  border-radius:12px;
  background:linear-gradient(135deg,#dd0b41,#bc002f);
  box-shadow:0 9px 20px rgba(190,0,48,.17);
}
body.admin-mode .customs-gateway-card {
  border-color:#252529;
  background:linear-gradient(150deg,#29292e,#151518);
  box-shadow:inset 0 3px var(--admin-red),0 9px 28px rgba(37,29,33,.07);
  color:#fff;
}
body.admin-mode .customs-gateway-card .eyebrow { color:#ff789a; }
body.admin-mode .customs-gateway-card h3 { color:#fff; font-family:inherit; font-weight:700; }
body.admin-mode .customs-gateway-card>p:not(.eyebrow) { color:#aaa6ad; }
body.admin-mode .customs-gateway-status { border-color:rgba(255,255,255,.1); background:rgba(255,255,255,.055); }
body.admin-mode .customs-gateway-status strong { color:#fff; }
body.admin-mode .customs-gateway-status small { color:#96929a; }
body.admin-mode .customs-gateway-status i { background:#ff3b6c; box-shadow:0 0 0 4px rgba(255,59,108,.14); }
body.admin-mode dialog { border-color:#e1dadd; border-radius:22px; box-shadow:0 28px 90px rgba(24,16,20,.25); }

@media(max-width:950px) {
  body.admin-mode main { padding:8px; }
  body.admin-mode #admin-view,
  body.admin-mode .admin-shell { min-height:calc(100vh - 16px); }
  body.admin-mode .admin-shell { grid-template-columns:1fr; border-radius:22px; }
  body.admin-mode .admin-sidebar { min-height:auto; padding:18px 18px 13px; }
  body.admin-mode .admin-brand { padding:0 4px 17px; }
  body.admin-mode .admin-navigation.admin-sidebar-nav { display:flex; gap:6px; padding-bottom:4px; overflow-x:auto; scrollbar-width:none; }
  body.admin-mode .admin-sidebar-nav::-webkit-scrollbar { display:none; }
  body.admin-mode .admin-sidebar-nav button { min-width:max-content; width:auto; padding:0 14px; }
  body.admin-mode .admin-sidebar-nav button:hover { transform:none; }
  body.admin-mode .admin-sidebar-nav button.selected:before { left:13px; right:13px; bottom:0; width:auto; height:3px; }
  body.admin-mode .admin-sidebar-bottom { display:none; }
  body.admin-mode .admin-topbar { min-height:124px; padding:26px 28px; }
  body.admin-mode .admin-content { padding:26px 28px 38px; }
}
@media(max-width:700px) {
  body.admin-mode main { padding:0; }
  body.admin-mode .admin-shell { min-height:100vh; border:0; border-radius:0; }
  body.admin-mode .admin-sidebar { border-radius:0; }
  body.admin-mode .admin-brand-logo { width:38px; height:40px; flex-basis:38px; }
  body.admin-mode .admin-sidebar-nav svg { width:17px; height:17px; margin-right:8px; }
  body.admin-mode .admin-sidebar-nav button b { display:none; }
  body.admin-mode .admin-topbar { align-items:flex-start; min-height:auto; padding:23px 18px; }
  body.admin-mode .admin-topbar h1 { font-size:27px; }
  body.admin-mode .admin-topbar .primary-button { min-width:auto; padding:11px 14px; }
  body.admin-mode .admin-content { padding:18px 14px 30px; }
  body.admin-mode .environment-notice { align-items:flex-start; }
  body.admin-mode .admin-welcome { align-items:flex-start; padding:24px 21px; }
  body.admin-mode .admin-welcome h2 { font-size:21px; }
  body.admin-mode .admin-live-badge { display:none; }
  body.admin-mode .admin-content .admin-summary { grid-template-columns:1fr 1fr; gap:10px; }
  body.admin-mode .admin-content .summary-card { min-height:108px; padding:18px; }
  body.admin-mode .admin-content .summary-card:last-child { grid-column:1/-1; }
  body.admin-mode .admin-content .summary-card strong { font-size:27px; }
  body.admin-mode .admin-overview-grid { grid-template-columns:1fr; }
  body.admin-mode .admin-quick-actions { grid-template-columns:1fr; }
}
@media(max-width:450px) {
  body.admin-mode .admin-topbar { flex-direction:column; gap:16px; }
  body.admin-mode .admin-topbar .primary-button { width:100%; }
  body.admin-mode .admin-content .admin-summary { grid-template-columns:1fr; }
  body.admin-mode .admin-content .summary-card:last-child { grid-column:auto; }
  body.admin-mode .admin-quick-card,
  body.admin-mode .admin-operation-card { padding:21px; }
}
@media(max-width:600px) {
  body.admin-mode .admin-topbar { flex-direction:column; align-items:stretch; gap:17px; }
  body.admin-mode .admin-topbar .primary-button { width:100%; }
  body.admin-mode .admin-topbar #admin-page-description { max-width:none; }
  body.admin-mode .admin-content .admin-summary { grid-template-columns:1fr; }
  body.admin-mode .admin-content .summary-card:last-child { grid-column:auto; }
  body.admin-mode .integration-heading { align-items:flex-start; flex-direction:column; }
  body.admin-mode .integration-heading>span { align-self:flex-start; }
}

body.admin-mode .integration-card.gateway-charge-card {
  border-color:#252529;
  background:linear-gradient(150deg,#29292e,#151518);
  box-shadow:inset 0 3px var(--admin-red),0 9px 28px rgba(37,29,33,.07);
  color:#fff;
}
body.admin-mode .integration-card.gateway-charge-card .gateway-card-icon { border-color:rgba(255,255,255,.12); background:rgba(255,255,255,.07); color:#ff7799; }
body.admin-mode .integration-card.gateway-charge-card>.eyebrow { color:#ff7799; }
body.admin-mode .integration-card.gateway-charge-card h3 { color:#fff; }
body.admin-mode .integration-card.gateway-charge-card>p:not(.eyebrow) { color:#aaa6ad; }
body.admin-mode .integration-card.gateway-charge-card .gateway-charge-status { border-color:rgba(255,255,255,.1); background:rgba(255,255,255,.055); }
body.admin-mode .integration-card.gateway-charge-card .gateway-charge-status strong { color:#fff; }
body.admin-mode .integration-card.gateway-charge-card .gateway-charge-status small { color:#96929a; }
body.admin-mode .integration-card.gateway-charge-card .text-button { color:#ff7b9d; }

/* Login administrativo público. */
body.admin-login-mode { min-height:100vh; background:radial-gradient(circle at 15% 12%,#3a1420 0,transparent 34%),linear-gradient(145deg,#151316,#242126); }
body.admin-login-mode>.header { display:none; }
body.admin-login-mode main { max-width:none; min-height:100vh; padding:0; }
.admin-login-view { display:grid; min-height:100vh; place-items:center; padding:28px 18px; }
.admin-login-card { width:min(440px,100%); padding:38px; border:1px solid rgba(255,255,255,.1); border-radius:24px; background:rgba(24,22,25,.94); color:#fff; box-shadow:0 28px 90px rgba(0,0,0,.38); }
.admin-login-brand { display:flex; align-items:center; gap:13px; width:max-content; }
.admin-login-brand svg { width:43px; height:45px; }
.admin-login-brand span { display:flex; flex-direction:column; }
.admin-login-brand strong { font-size:20px; letter-spacing:-.6px; }
.admin-login-brand small { margin-top:5px; color:#a7a2a9; font-size:7px; letter-spacing:1.5px; }
.admin-login-heading { margin:42px 0 30px; }
.admin-login-heading>span { color:#ff789a; font-size:8px; font-weight:750; letter-spacing:2px; }
.admin-login-heading h1 { margin-top:12px; color:#fff; font-size:31px; letter-spacing:-1.2px; }
.admin-login-heading p { margin-top:12px; color:#aaa5ac; font-size:12px; line-height:1.7; }
.admin-login-card label { display:block; margin-bottom:9px; color:#d8d5d9; font-size:10px; font-weight:650; }
.admin-login-card input { width:100%; height:50px; padding:0 15px; border:1px solid #4a454c; border-radius:10px; outline:0; background:#211f22; color:#fff; }
.admin-login-card input:focus { border-color:#e33662; box-shadow:0 0 0 4px rgba(227,54,98,.14); }
.admin-login-card .primary-button { margin-top:17px; border-radius:10px; background:linear-gradient(135deg,#e10b43,#ae002c); }
.admin-login-card .primary-button:hover { background:linear-gradient(135deg,#ee1c51,#bd0031); }
.admin-login-card .message { margin:13px 0 0; }
.admin-login-back { display:block; margin-top:23px; color:#9b969d; font-size:10px; text-align:center; }
.admin-login-back:hover { color:#fff; }
@media(max-width:520px) { .admin-login-card { padding:30px 23px; border-radius:20px; } .admin-login-heading { margin:34px 0 25px; } .admin-login-heading h1 { font-size:27px; } }

.admin-profile .admin-account-button { width:auto; padding:0 9px; border:1px solid rgba(255,255,255,.1); font-size:8px; }
#admin-account-dialog { border-color:#e1dadd; background:#fff; }
.admin-password-intro { margin:14px 0 20px; color:#7f7980; font-size:11px; line-height:1.7; }
.admin-password-help { display:block; margin:11px 0 17px; color:#8b858c; font-size:9px; }
#admin-account-dialog .primary-button { background:linear-gradient(135deg,#dd0b41,#bc002f); }
.admin-users-dialog { width:min(650px,calc(100% - 30px)); }
.admin-invite-form { display:grid; grid-template-columns:1fr auto; align-items:end; gap:12px; }
.admin-invite-form .primary-button { min-height:42px; background:linear-gradient(135deg,#dd0b41,#bc002f); }
.admin-invite-result { margin:17px 0; padding:15px; border:1px solid #eadce0; border-radius:12px; background:#fff7f9; }
.admin-invite-result label { margin-top:0; }
.admin-invite-result .text-button { margin-top:10px; color:#bd0032; }
.admin-users-heading { margin:25px 0 10px; font-size:14px; }
.admin-users-list { display:grid; gap:8px; }
.admin-user-row { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:13px 15px; border:1px solid #ebe6e8; border-radius:11px; background:#fbfafb; }
.admin-user-row strong,.admin-user-row small { display:block; }
.admin-user-row strong { font-size:11px; }
.admin-user-row small { margin-top:4px; color:#89838a; font-size:9px; }
.admin-user-role { padding:5px 8px; border-radius:20px; background:#f1edef; color:#6f6970; font-size:8px; }
.admin-user-role.owner { background:#fff0f4; color:#b90030; }
@media(max-width:520px) { .admin-invite-form { grid-template-columns:1fr; } .admin-invite-form .primary-button { width:100%; } }

/* Central administrativa premium. */
body.admin-mode {
  --premium-red:#d3003b;
  --premium-red-dark:#a90030;
  --premium-ink:#19191d;
  --premium-muted:#77747d;
  --premium-line:#e8e7eb;
  --premium-panel:#ffffff;
  min-height:100vh;
  background:#f1f1f4;
}
body.admin-mode main { width:100%; max-width:none; padding:0; }
body.admin-mode #admin-view,
body.admin-mode .admin-shell { min-height:100vh; }
body.admin-mode .admin-shell {
  grid-template-columns:276px minmax(0,1fr);
  border:0;
  border-radius:0;
  background:#f6f6f8;
  box-shadow:none;
}
body.admin-mode .admin-sidebar {
  position:fixed;
  inset:0 auto 0 0;
  z-index:20;
  width:276px;
  height:100vh;
  height:100dvh;
  min-height:0;
  padding:30px 20px 22px;
  background:
    radial-gradient(circle at 10% 0,rgba(211,0,59,.2),transparent 27%),
    linear-gradient(165deg,#18171c 0%,#0d0d10 58%,#09090b 100%);
  box-shadow:12px 0 42px rgba(17,14,18,.1);
}
body.admin-mode .admin-sidebar:before {
  width:260px;
  height:260px;
  top:-145px;
  right:-115px;
  border-color:rgba(255,255,255,.055);
  box-shadow:0 0 0 46px rgba(255,255,255,.018),0 0 0 92px rgba(255,255,255,.012);
}
body.admin-mode .admin-brand { gap:14px; padding:0 8px 33px; }
body.admin-mode .admin-brand-logo {
  width:46px;
  height:48px;
  flex:0 0 46px;
  filter:drop-shadow(0 9px 16px rgba(211,0,59,.28));
}
body.admin-mode .admin-brand strong { color:#fff; font-size:18px; font-weight:760; letter-spacing:-.5px; }
body.admin-mode .admin-brand small { color:#77747d; letter-spacing:1.8px; }
body.admin-mode .admin-menu-label { margin:5px 12px 11px; color:#65626a; font-size:7px; }
body.admin-mode .admin-sidebar-nav { gap:6px; }
body.admin-mode .admin-sidebar-nav button {
  min-height:50px;
  padding:0 14px;
  border:1px solid transparent;
  border-radius:14px;
  color:#9d9aa3;
  font-size:10px;
  font-weight:650;
  transition:color .2s,background .2s,border-color .2s,transform .2s,box-shadow .2s;
}
body.admin-mode .admin-sidebar-nav button:before {
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  flex:0 0 28px;
  margin-right:11px;
  border:1px solid rgba(255,255,255,.06);
  border-radius:9px;
  background:rgba(255,255,255,.035);
  color:#8b8790;
  font-size:13px;
}
body.admin-mode #admin-overview-tab:before { content:'◈'; }
body.admin-mode #admin-orders-tab:before { content:'▣'; }
body.admin-mode #customs-fees-tab:before { content:'$'; font-size:11px; font-weight:800; }
body.admin-mode #gateway-tab:before { content:''; background-color:rgba(255,255,255,.035); background-image:url('/axxonpay-logo.jpg'); background-position:center; background-repeat:no-repeat; background-size:cover; }
body.admin-mode #emails-tab:before { content:'✉'; font-size:12px; }
body.admin-mode #admin-users-open:before { content:'◎'; }
body.admin-mode #admin-account-open:before { content:'●'; font-size:9px; }
body.admin-mode .admin-sidebar-nav button:hover { transform:translateX(2px); border-color:rgba(255,255,255,.06); background:rgba(255,255,255,.045); color:#fff; }
body.admin-mode .admin-sidebar-nav button.selected {
  border-color:rgba(255,255,255,.08);
  background:linear-gradient(110deg,rgba(211,0,59,.95),rgba(166,0,47,.88));
  color:#fff;
  box-shadow:0 12px 28px rgba(132,0,37,.3),inset 0 1px rgba(255,255,255,.16);
}
body.admin-mode .admin-sidebar-nav button.selected:before {
  position:static;
  width:28px;
  height:28px;
  border-color:rgba(255,255,255,.15);
  background:rgba(255,255,255,.13);
  color:#fff;
}
body.admin-mode .admin-sidebar-nav button b { background:rgba(255,255,255,.075); color:#aaa6af; }
body.admin-mode .admin-sidebar-nav button.selected b { background:rgba(255,255,255,.16); color:#fff; }
body.admin-mode .admin-protection {
  padding:14px;
  border-color:rgba(255,255,255,.07);
  border-radius:15px;
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
}
body.admin-mode .admin-protection>span { background:rgba(38,197,132,.13); color:#6de2b3; box-shadow:0 0 0 5px rgba(38,197,132,.04); }
body.admin-mode .admin-protection strong { font-size:8px; letter-spacing:.2px; }
body.admin-mode .admin-protection p { color:#77747d; }
body.admin-mode .admin-profile { gap:11px; padding:17px 3px 0; }
body.admin-mode .admin-avatar {
  width:38px;
  height:38px;
  flex-basis:38px;
  border:2px solid rgba(255,255,255,.14);
  background:linear-gradient(145deg,#fff,#f2d8e0);
  color:#b30032;
  font-family:inherit;
  font-weight:800;
}
body.admin-mode .admin-profile strong { overflow:hidden; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
body.admin-mode .admin-profile small { color:#6f6c74; }
body.admin-mode .admin-profile .admin-account-button { min-width:48px; height:30px; border-color:rgba(255,255,255,.09); border-radius:9px; color:#aaa6af; }
body.admin-mode #admin-logout { display:grid; place-items:center; width:30px; height:30px; border:1px solid rgba(255,255,255,.07); }
body.admin-mode .admin-workspace { grid-column:2; min-width:0; background:#f6f6f8; }
body.admin-mode .admin-topbar {
  position:sticky;
  top:0;
  z-index:15;
  min-height:138px;
  padding:29px 44px 27px;
  border-bottom:1px solid rgba(225,224,229,.9);
  background:rgba(255,255,255,.86);
  box-shadow:0 8px 30px rgba(31,27,34,.035);
  backdrop-filter:blur(20px) saturate(150%);
}
body.admin-mode .admin-topbar #admin-breadcrumb { margin-bottom:10px; color:var(--premium-red); font-size:7px; letter-spacing:2.1px; }
body.admin-mode .admin-topbar h1 { color:var(--premium-ink); font-size:35px; font-weight:780; letter-spacing:-1.8px; }
body.admin-mode .admin-topbar #admin-page-description { margin-top:9px; color:#85828b; font-size:10px; }
body.admin-mode .admin-topbar .primary-button {
  min-width:166px;
  min-height:50px;
  border:0;
  border-radius:14px;
  background:linear-gradient(135deg,#e40947,#b90034);
  box-shadow:0 14px 30px rgba(190,0,53,.23),inset 0 1px rgba(255,255,255,.2);
  font-weight:700;
}
body.admin-mode .admin-topbar .primary-button:hover { transform:translateY(-2px); box-shadow:0 18px 34px rgba(190,0,53,.29),inset 0 1px rgba(255,255,255,.2); }
body.admin-mode .admin-content { width:min(1180px,100%); margin:0 auto; padding:34px 42px 60px; }
body.admin-mode .environment-notice {
  margin-bottom:22px;
  padding:13px 16px;
  border-color:#e8e7eb;
  border-radius:14px;
  background:rgba(255,255,255,.82);
  box-shadow:0 7px 24px rgba(31,27,34,.035);
}
body.admin-mode .environment-notice>span { border:1px solid #f4dbe2; background:#fff4f7; }
body.admin-mode .admin-welcome {
  min-height:154px;
  padding:32px 34px;
  border:1px solid #e6e4e9;
  border-left:0;
  border-radius:22px;
  background:
    radial-gradient(circle at 86% 22%,rgba(211,0,59,.12),transparent 24%),
    radial-gradient(circle at 96% 100%,rgba(211,0,59,.055),transparent 25%),
    linear-gradient(135deg,#fff,#fdfcfd);
  box-shadow:0 15px 45px rgba(27,22,29,.055);
}
body.admin-mode .admin-welcome:before { content:''; position:absolute; inset:0 auto 0 0; width:5px; background:linear-gradient(#ef1653,#a90030); }
body.admin-mode .admin-welcome:after { display:block; right:-52px; bottom:-104px; width:190px; height:190px; }
body.admin-mode .admin-welcome h2 { font-size:28px; font-weight:780; letter-spacing:-1px; }
body.admin-mode .admin-welcome p:not(.eyebrow) { margin-top:10px; font-size:11px; }
body.admin-mode .admin-live-badge { padding:9px 13px; border-color:#cee9dc; background:rgba(244,252,248,.88); box-shadow:0 6px 18px rgba(34,134,94,.07); font-weight:650; }
body.admin-mode .admin-content .admin-summary { gap:18px; margin:22px 0; }
body.admin-mode .admin-content .summary-card {
  min-height:132px;
  padding:25px;
  border-color:#e7e5ea;
  border-radius:20px;
  background:linear-gradient(145deg,#fff,#fbfbfc);
  box-shadow:0 12px 36px rgba(28,24,31,.05);
}
body.admin-mode .admin-content .summary-card:before { width:4px; border-radius:0 6px 6px 0; }
body.admin-mode .admin-content .summary-card:nth-child(2):before { background:linear-gradient(#7054e8,#4a32b6); }
body.admin-mode .admin-content .summary-card:nth-child(3):before { background:linear-gradient(#2bbf83,#168c5e); }
body.admin-mode .admin-content .summary-card:after { top:22px; right:22px; width:30px; height:30px; border-radius:10px; }
body.admin-mode .admin-content .summary-card:hover { transform:translateY(-4px); border-color:#dcd8e0; box-shadow:0 18px 42px rgba(29,23,32,.085); }
body.admin-mode .admin-content .summary-card span { font-size:9px; font-weight:700; letter-spacing:.3px; text-transform:uppercase; }
body.admin-mode .admin-content .summary-card strong { margin-top:20px; font-size:34px; letter-spacing:-1.2px; }
body.admin-mode .admin-overview-grid { grid-template-columns:minmax(0,1.45fr) minmax(280px,.7fr); gap:22px; }
body.admin-mode .admin-quick-card,
body.admin-mode .admin-operation-card { padding:30px; border-radius:21px; }
body.admin-mode .admin-quick-card { border-color:#e7e5ea; box-shadow:0 13px 38px rgba(28,24,31,.045); }
body.admin-mode .admin-quick-card>h3 { font-size:18px; letter-spacing:-.35px; }
body.admin-mode .admin-quick-actions { gap:13px; margin-top:23px; }
body.admin-mode .admin-quick-actions button { min-height:84px; padding:17px; border-color:#e9e7eb; border-radius:16px; background:#fafafd; }
body.admin-mode .admin-quick-actions button:hover { transform:translateY(-3px); border-color:#e6c8d1; background:#fff; box-shadow:0 14px 26px rgba(85,35,53,.085); }
body.admin-mode .admin-quick-actions button>span { width:39px; height:39px; border-radius:12px; background:linear-gradient(145deg,#ffeaf0,#ffdde6); box-shadow:inset 0 1px #fff; }
body.admin-mode .admin-operation-card {
  border-color:#242329;
  background:radial-gradient(circle at 90% 10%,rgba(211,0,59,.2),transparent 35%),linear-gradient(150deg,#242329,#111114);
  box-shadow:0 18px 42px rgba(23,20,25,.16),inset 0 1px rgba(255,255,255,.06);
}
body.admin-mode .admin-operation-card li span { width:25px; height:25px; background:rgba(211,0,59,.2); }
body.admin-mode .integration-heading h2 { font-size:28px; font-weight:780; letter-spacing:-.9px; }
body.admin-mode .integration-card,
body.admin-mode .admin-content .admin-list-card,
body.admin-mode .paid-filters {
  border-color:#e6e4e9;
  border-radius:21px;
  box-shadow:0 13px 40px rgba(28,24,31,.05);
}
body.admin-mode .admin-content .admin-list-card .card-heading { padding:27px 29px; }
body.admin-mode .admin-content .admin-list-card table { min-width:760px; }
body.admin-mode .admin-content .admin-list-card th,
body.admin-mode .integration-card th { padding:15px 24px; border-color:#ebe9ed; background:#f7f7f9; color:#7b7780; font-size:8px; letter-spacing:.7px; text-transform:uppercase; }
body.admin-mode .admin-content .admin-list-card td,
body.admin-mode .integration-card td { padding:19px 24px; border-color:#eeedf0; }
body.admin-mode .admin-content .admin-list-card tbody tr { transition:background .16s; }
body.admin-mode .admin-content .admin-list-card tbody tr:hover { background:#fdf7f9; }
body.admin-mode .integration-card { padding:28px; }
body.admin-mode .integration-card label { color:#55515a; font-size:9px; font-weight:700; }
body.admin-mode .integration-card input:not([type=checkbox]),
body.admin-mode .integration-card select,
body.admin-mode .integration-card textarea {
  min-height:46px;
  border-color:#dfdde3;
  border-radius:12px;
  background:#fafafd;
  transition:border-color .18s,box-shadow .18s,background .18s;
}
body.admin-mode dialog {
  padding:34px;
  border:1px solid rgba(255,255,255,.7);
  border-radius:24px;
  background:rgba(255,255,255,.97);
  box-shadow:0 35px 110px rgba(20,14,18,.32);
}
body.admin-mode dialog::backdrop { background:rgba(12,10,13,.64); backdrop-filter:blur(8px); }
body.admin-mode dialog .dialog-heading h2 { font-size:25px; font-weight:780; letter-spacing:-.8px; }
body.admin-mode dialog input,
body.admin-mode dialog select { height:47px; border-color:#dedce2; border-radius:11px; background:#fafafd; }
body.admin-mode .admin-user-row { padding:15px 17px; border-color:#e7e5ea; border-radius:13px; background:#fafafd; }
body.admin-mode .admin-user-row strong { font-size:10px; }
body.admin-mode .admin-user-role { padding:6px 10px; font-weight:700; letter-spacing:.25px; text-transform:uppercase; }
body.admin-mode .admin-invite-result { border-color:#efd5dd; border-radius:14px; background:linear-gradient(145deg,#fff8fa,#fff); }

body.admin-login-mode {
  background:
    radial-gradient(circle at 18% 18%,rgba(211,0,59,.28),transparent 28%),
    radial-gradient(circle at 82% 78%,rgba(105,65,185,.13),transparent 30%),
    linear-gradient(145deg,#111015,#1b181e 55%,#0e0d11);
}
.admin-login-view:before { content:''; position:fixed; inset:0; pointer-events:none; background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px); background-size:34px 34px; mask-image:linear-gradient(to bottom,black,transparent 82%); }
.admin-login-card {
  position:relative;
  width:min(470px,100%);
  padding:42px;
  border-color:rgba(255,255,255,.11);
  border-radius:28px;
  background:linear-gradient(145deg,rgba(31,29,34,.96),rgba(20,19,23,.97));
  box-shadow:0 38px 120px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.055);
}
.admin-login-card:before { content:''; position:absolute; inset:0 28px auto; height:2px; background:linear-gradient(90deg,transparent,#e3134d,transparent); }
.admin-login-brand svg { filter:drop-shadow(0 8px 16px rgba(211,0,59,.3)); }
.admin-login-heading h1 { font-size:34px; font-weight:780; letter-spacing:-1.6px; }
.admin-login-card input { height:53px; margin-bottom:14px; border-color:#444149; border-radius:12px; background:#1b1a1e; }
.admin-login-card input:focus { border-color:#ed3c6d; background:#1e1c21; box-shadow:0 0 0 4px rgba(227,54,98,.13); }
.admin-login-card .primary-button { min-height:51px; margin-top:20px; border-radius:12px; box-shadow:0 13px 28px rgba(190,0,48,.26); }

@media(max-width:950px) {
  body.admin-mode main { padding:0; }
  body.admin-mode .admin-shell { grid-template-columns:1fr; }
  body.admin-mode .admin-sidebar { position:relative; inset:auto; z-index:auto; width:auto; height:auto; min-height:auto; padding:18px 20px 14px; }
  body.admin-mode .admin-workspace { grid-column:1; }
  body.admin-mode .admin-brand { padding-bottom:16px; }
  body.admin-mode .admin-navigation.admin-sidebar-nav { gap:7px; }
  body.admin-mode .admin-sidebar-nav button { min-height:44px; }
  body.admin-mode .admin-sidebar-nav button:before { width:24px; height:24px; flex-basis:24px; margin-right:8px; }
  body.admin-mode .admin-sidebar-nav button.selected:before { width:24px; height:24px; }
  body.admin-mode .admin-topbar { top:0; min-height:122px; padding:25px 29px; }
  body.admin-mode .admin-content { padding:27px 28px 45px; }
}
@media(max-width:700px) {
  body.admin-mode .admin-topbar { position:relative; padding:24px 18px; }
  body.admin-mode .admin-topbar h1 { font-size:28px; }
  body.admin-mode .admin-content { padding:19px 14px 36px; }
  body.admin-mode .admin-welcome { min-height:136px; padding:25px 22px; border-radius:18px; }
  body.admin-mode .admin-welcome h2 { font-size:23px; }
  body.admin-mode .admin-content .admin-summary { gap:11px; }
  body.admin-mode .admin-content .summary-card { min-height:112px; padding:20px; border-radius:16px; }
  body.admin-mode .admin-content .summary-card strong { font-size:29px; }
  body.admin-mode .admin-overview-grid { grid-template-columns:1fr; }
  body.admin-mode .admin-quick-card,
  body.admin-mode .admin-operation-card { padding:23px; border-radius:18px; }
  body.admin-mode .integration-card { padding:22px; border-radius:17px; }
  body.admin-mode dialog { padding:25px 21px; border-radius:21px; }
}
@media(max-width:520px) {
  .admin-login-card { padding:32px 24px; border-radius:23px; }
  .admin-login-heading h1 { font-size:29px; }
}
@media(prefers-reduced-motion:reduce) {
  body.admin-mode *,body.admin-login-mode * { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}

/* Prévia fiel ao novo e-mail transacional. */
body.admin-mode .email-preview-card { overflow:hidden; }
body.admin-mode .email-preview-title { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:20px; }
body.admin-mode .email-preview-title .eyebrow { margin:0 0 5px; color:#d3003b; font-size:8px; font-weight:800; letter-spacing:1.7px; }
body.admin-mode .email-preview-title h3 { margin:0; color:#242329; font-size:19px; letter-spacing:-.35px; }
body.admin-mode .email-preview-title>span { padding:7px 10px; border:1px solid #dfe9e4; border-radius:999px; background:#f4faf7; color:#21835d; font-size:9px; font-weight:750; }
body.admin-mode .email-preview-subject-row { margin-bottom:14px; padding:13px 15px; border:1px solid #e7e6ea; border-radius:12px; background:#f8f8fa; }
body.admin-mode .email-preview-subject-row small { display:block; margin-bottom:4px; color:#96939b; font-size:8px; font-weight:750; letter-spacing:1.2px; }
body.admin-mode .email-preview-subject { margin:0; color:#444149; font-size:11px; font-weight:650; line-height:1.55; overflow-wrap:anywhere; }
body.admin-mode .email-preview { border:1px solid #dfdfe4; border-radius:18px; overflow:hidden; background:#fff; box-shadow:0 16px 44px rgba(27,24,31,.09); }
body.admin-mode .email-preview-topline { height:5px; background:#d3003b; }
body.admin-mode .email-preview-header { display:flex; align-items:center; gap:11px; padding:18px 22px; background:#fff; color:#242329; }
body.admin-mode .email-preview-logo { display:grid!important; flex:0 0 36px; width:36px; height:36px; margin:0!important; place-items:center; border-radius:10px; background:#d3003b; color:#fff!important; font-size:17px!important; font-weight:800; letter-spacing:0!important; }
body.admin-mode .email-preview-header strong { display:block; color:#242329; font-family:inherit; font-size:15px; line-height:19px; }
body.admin-mode .email-preview-header small { display:block; margin-top:2px; color:#96939b; font-size:7px; font-weight:750; letter-spacing:1.25px; }
body.admin-mode .email-preview-hero { padding:28px 24px 26px; background:radial-gradient(circle at 95% 0,rgba(211,0,59,.24),transparent 36%),#19181d; }
body.admin-mode .email-preview-hero>span { color:#ff6d94; font-size:8px; font-weight:800; letter-spacing:1.45px; }
body.admin-mode .email-preview .email-preview-hero h4 { margin:9px 0 0; color:#fff; font-family:inherit; font-size:25px; font-weight:760; letter-spacing:-.7px; }
body.admin-mode .email-preview-hero p { max-width:390px; margin:9px 0 0; color:#bdbbc3; font-size:10px; line-height:1.65; }
body.admin-mode .email-preview-body { padding:25px 23px 20px; color:#65636c; }
body.admin-mode #email-preview-content { margin:0; color:#64626a; white-space:pre-wrap; overflow-wrap:anywhere; font-size:11px; line-height:1.85; }
body.admin-mode .email-preview-summary { margin-top:21px; padding:20px; border:1px solid #e5e4e8; border-radius:13px; background:#f7f7f9; }
body.admin-mode .email-preview-summary>small { color:#8b8991; font-size:7px; font-weight:800; letter-spacing:1.3px; }
body.admin-mode .email-preview-summary>strong { display:block; margin:8px 0 13px; color:#242329; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:19px; letter-spacing:.25px; overflow-wrap:anywhere; }
body.admin-mode .email-preview-meta { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #dfdee3; }
body.admin-mode .email-preview-meta>span { min-width:0; padding:12px 8px 2px 0; }
body.admin-mode .email-preview-meta>span+span { padding-left:13px; border-left:1px solid #dfdee3; }
body.admin-mode .email-preview-meta small { display:block; color:#96949c; font-size:7px; font-weight:800; letter-spacing:.9px; }
body.admin-mode .email-preview-meta b { display:block; margin-top:5px; color:#45434a; font-size:9px; line-height:1.5; overflow-wrap:anywhere; }
body.admin-mode .email-preview-cta { display:block; margin-top:17px; padding:13px 10px; border-radius:9px; background:linear-gradient(135deg,#e20a48,#bb0035); box-shadow:0 9px 20px rgba(190,0,52,.2); color:#fff; font-size:10px; font-weight:750; text-align:center; }
body.admin-mode .email-preview-steps { display:grid; grid-template-columns:repeat(3,1fr); margin-top:22px; }
body.admin-mode .email-preview-steps>span { display:flex; min-width:0; align-items:center; flex-direction:column; gap:7px; padding:0 4px; color:#74727a; font-size:8px; font-weight:700; text-align:center; }
body.admin-mode .email-preview-steps>span+span { border-left:1px solid #e4e3e7; }
body.admin-mode .email-preview-steps b { display:grid; width:22px; height:22px; place-items:center; border-radius:50%; background:#eeeef1; color:#85838b; font-size:9px; }
body.admin-mode .email-preview-steps>span:first-child b { background:#d3003b; color:#fff; }
body.admin-mode .email-preview-footer { display:flex; align-items:center; flex-direction:column; padding:19px; border-top:1px solid #e8e7eb; background:#f8f8fa; text-align:center; }
body.admin-mode .email-preview-footer strong { color:#3d3b42; font-size:11px; }
body.admin-mode .email-preview-footer span,body.admin-mode .email-preview-footer small { margin-top:4px; color:#929098; font-size:8px; }
body.admin-mode #email-preview-error { margin:12px 0 0; color:#b00031; font-size:10px; }

@media(max-width:520px) {
  body.admin-mode .email-preview-card { padding:16px; }
  body.admin-mode .email-preview-hero { padding:24px 19px; }
  body.admin-mode .email-preview-body { padding:21px 16px 18px; }
  body.admin-mode .email-preview-summary { padding:17px 15px; }
}

body.admin-mode .gateway-address-card { display:grid; grid-template-columns:minmax(230px,.65fr) minmax(0,1.35fr); align-items:center; gap:25px; margin-bottom:20px; }
body.admin-mode .gateway-address-card .eyebrow { color:#bd0032; }
body.admin-mode .gateway-address-card h3 { color:#29272c; font-size:18px; }
body.admin-mode .gateway-address-card p:not(.eyebrow) { margin-top:9px; color:#858188; font-size:10px; line-height:1.7; }
body.admin-mode .gateway-address-card code { color:#bd0032; font-size:9px; }
body.admin-mode .gateway-address-card pre { padding:17px; border-radius:12px; background:#f8f7f9; white-space:pre-wrap; overflow-wrap:anywhere; }
body.admin-mode .gateway-history-card { margin-bottom:20px; }
body.admin-mode .gateway-history-row { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:15px 2px; border-bottom:1px solid #eceaed; }
body.admin-mode .gateway-history-row:last-child { border-bottom:0; }
body.admin-mode .gateway-history-row strong,body.admin-mode .gateway-history-row p,body.admin-mode .gateway-history-row time { display:block; }
body.admin-mode .gateway-history-row strong { color:#37343a; font-size:10px; }
body.admin-mode .gateway-history-row p { margin-top:5px; color:#858188; font-size:9px; line-height:1.55; }
body.admin-mode .gateway-history-row time { margin-top:5px; color:#aaa6ac; font-size:8px; }
body.admin-mode .gateway-record-badge { flex:0 0 auto; padding:7px 10px; border-radius:999px; background:#eef8f3; color:#247553; font-size:8px; font-weight:750; }
body.admin-mode .gateway-history-row.skipped .gateway-record-badge { background:#fff2e5; color:#9a5a13; }
body.admin-mode #gateway-settings-form fieldset { min-width:0; }
body.admin-mode .gateway-email-warning { margin-top:18px; padding:12px 14px; border:1px solid #f0d7a9; border-radius:11px; background:#fff8ea; color:#8b601b; font-size:9px; line-height:1.6; }
body.admin-mode .gateway-email-warning.ready { border-color:#cce8da; background:#f1faf5; color:#276e54; }
body.admin-mode .gateway-axxon-logo { position:relative; overflow:hidden; border-color:#e7dbff; background:#f5f0ff; color:#6737df; }
body.admin-mode .gateway-axxon-logo>span { font-size:13px; font-weight:800; }
body.admin-mode .gateway-axxon-logo img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }

@media(max-width:700px) {
  body.admin-mode .gateway-address-card { grid-template-columns:1fr; }
  body.admin-mode .gateway-history-row { align-items:flex-start; flex-direction:column; }
}
