@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500;600;700&family=UnifrakturCook:wght@700&display=swap');
:root{--bg:#171719;--panel:#222225;--panel2:#29292d;--line:#39383a;--text:#e8e2d8;--muted:#9c9891;--rust:#a65336;--orange:#d17a39;--red:#c4473d;--gold:#c6a36b;--paper:#d1c2a3;--blue:#7297a8;--serif:'Cinzel',serif;--mono:'IBM Plex Mono',monospace;--goth:'UnifrakturCook',cursive}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--mono);font-size:13px}button,input{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.sidebar{width:252px;position:fixed;inset:0 auto 0 0;background:#1d1d20;border-right:1px solid #383538;display:flex;flex-direction:column;padding:25px 18px 18px;z-index:20}.brand{display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none;padding:0 7px 24px;border-bottom:1px solid var(--line)}.brand-mark{width:42px;height:42px;border:1px solid var(--rust);display:grid;place-items:center;font:700 27px var(--goth);color:var(--orange);transform:rotate(-4deg)}.brand strong{display:block;font:700 17px var(--serif);letter-spacing:2px}.brand small{display:block;color:var(--muted);font-size:9px;letter-spacing:1px;margin-top:4px}.side-status{font-size:9px;color:var(--muted);padding:18px 7px 25px;letter-spacing:.7px}.side-status b{color:#d2a06d;font-weight:500}.pulse,.connection i,.live-tag i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#c77b45;margin-right:7px;box-shadow:0 0 9px #c77b4580}.main-nav{display:flex;flex-direction:column;gap:5px}.nav-caption{font-size:9px;color:#77736f;letter-spacing:1.8px;padding:0 9px 8px}.nav-caption-spaced{margin-top:24px}.nav-link{height:42px;display:flex;align-items:center;gap:13px;padding:0 12px;color:#aaa6a0;text-decoration:none;border:1px solid transparent;border-radius:4px;font-size:12px;transition:.2s}.nav-link span{font-size:17px;width:18px;text-align:center;color:#a66c4c}.nav-link:hover{background:#29272a;color:#fff}.nav-link.active{background:linear-gradient(90deg,#58332670,transparent);border-color:#75432f;color:#f1e5d6}.nav-link.active span{color:#e18a4b}.sidebar-bottom{margin-top:auto}.threat-card{border:1px solid #633b32;background:linear-gradient(135deg,#482c2860,#222225);padding:13px;margin-bottom:18px}.eyebrow{display:block;color:#b47a58;font-size:9px;letter-spacing:1.6px;font-weight:600}.threat-card strong{display:block;color:#dc6652;font:700 20px var(--serif);margin:6px 0}.threat-card small{font-size:8px;color:#a8a09a}.threat-meter{display:flex;gap:4px;margin:8px 0}.threat-meter i{height:4px;flex:1;background:#a84439}.threat-meter i:last-child{background:#493a36}.side-footer{font-size:8px;line-height:1.8;color:#716d69;letter-spacing:.6px}.main-area{margin-left:252px;min-height:100vh;padding:0 34px;max-width:1800px}.topbar{height:67px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px}.breadcrumb{font-size:10px;letter-spacing:1px;color:#89847f}.breadcrumb i{font-style:normal;margin:0 12px;color:#5e5a56}.breadcrumb strong{color:#d7cfc4;font-weight:500}.top-actions{display:flex;align-items:center;gap:17px}.clock{font-size:11px;color:#c5a17a}.connection{font-size:9px;color:#8d8982}.connection i{background:#85a17d;box-shadow:0 0 8px #85a17d80}.master-button{border:1px solid #55463d;background:#29272a;color:#c6b9a9;padding:9px 12px;border-radius:3px;font-size:9px;letter-spacing:.5px}.master-button:hover,.master-active .master-button{border-color:var(--orange);color:#f0a46b}.mobile-menu{display:none;background:none;border:0;color:var(--text);font-size:20px}.page{display:none;padding:28px 0 48px;animation:fade .25s ease}.page.active{display:block}@keyframes fade{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:none}}.hero{height:350px;position:relative;overflow:hidden;border:1px solid #544039;background:#242124;margin:2px 0 35px}.hero-image{position:absolute;inset:0;background:linear-gradient(90deg,#171719 0%,#171719e8 28%,#17171970 68%,#17171940),linear-gradient(0deg,#171719 0%,transparent 40%),url('src/Assets/images/wasteland-bg.jpg') center 48%/cover no-repeat}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 45%,#a14e3020 100%)}.hero-grain{position:absolute;inset:0;opacity:.13;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.3'/%3E%3C/svg%3E")}.hero-content{position:absolute;left:5%;top:13%;z-index:2;max-width:660px}.hero-kicker{font-size:9px;letter-spacing:1.8px;color:#d18b5e;display:flex;align-items:center;gap:10px}.kicker-line{width:27px;height:1px;background:var(--orange)}.hero-pretitle{font:italic 14px var(--serif);color:#c6b9a8;margin:23px 0 4px}.hero h1{font:700 clamp(39px,5.4vw,72px)/.94 var(--serif);letter-spacing:-2px;margin:0;color:#f0e8dc;text-shadow:0 4px 25px #000}.hero h1 em{font-style:normal;color:#d17a49}.hero-subtitle{font:600 11px var(--mono);letter-spacing:3px;color:#d6c7b4;margin:19px 0}.hero-meta{display:flex;flex-wrap:wrap;gap:18px;font-size:8px;letter-spacing:.8px;color:#b4a99c}.hero-stamp{position:absolute;right:6%;top:16%;width:100px;height:100px;border:2px solid #b75d42a0;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(13deg);color:#c96c4d;font:700 17px var(--serif);opacity:.8;text-align:center}.hero-stamp b{font-size:23px}.hero-stamp small{font:8px var(--mono);letter-spacing:2px}.hero-bottom{position:absolute;bottom:0;left:0;right:0;padding:11px 20px;background:#141416b8;border-top:1px solid #ffffff14;display:flex;justify-content:space-between;color:#91877c;font-size:8px;letter-spacing:1px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin:0 0 17px}.section-heading h2,.page-intro h1{font:600 25px var(--serif);margin:5px 0 0;color:#eee6da}.section-heading h2 em,.page-intro h1 em{color:#d17a49;font-style:normal}.live-tag{font-size:9px;color:#a7a099}.live-tag i{background:#8aab7e}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:22px}.stat-card{background:linear-gradient(145deg,#29282a,#202023);border:1px solid #3b3838;padding:17px 18px;position:relative;overflow:hidden;min-height:126px}.stat-top{display:flex;justify-content:space-between;color:#9e9992;font-size:8px;letter-spacing:1px}.stat-top b{font-size:17px;color:#b77a55;font-weight:400}.stat-card>strong{display:block;font:600 28px var(--serif);margin:12px 0 4px;color:#eee5d9}.stat-card>strong small{font:10px var(--mono);color:#b49a7b}.stat-card>small{font-size:8px;color:#89847e;letter-spacing:.6px}.stat-accent{position:absolute;bottom:0;left:0;width:40%;height:2px;background:#a75a3b}.stat-accent.red{background:#c4473d}.stat-accent.gold{background:#c6a36b}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 32px}.panel{background:#222225;border:1px solid #393639;padding:20px}.panel-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.panel-heading h3{font:600 17px var(--serif);margin:5px 0 0}.status-pill{font-size:8px;padding:5px 8px;border:1px solid #8c443b;color:#dc7969;letter-spacing:1px}.record-no{font-size:9px;color:#8f8275}.panel p{color:#aaa49c;line-height:1.75;font-size:11px}.panel p.lead{font:500 13px var(--serif);color:#e2d8ca}.alert-strip{display:flex;align-items:center;gap:12px;background:#5a302b4d;border:1px solid #754038;padding:10px 12px;margin-top:18px;color:#d77c63}.alert-strip>span{font-size:21px}.alert-strip b,.alert-strip small{display:block}.alert-strip b{font-size:9px;letter-spacing:1px}.alert-strip small{font-size:9px;color:#b9a49a;margin-top:4px}.chronicle-date{font-size:8px;letter-spacing:1px;color:#bd825e;margin:4px 0 12px}.text-link{display:inline-block;color:#d58a58;text-decoration:none;font-size:9px;letter-spacing:1px;margin-top:8px}.text-link span{margin-left:8px}.compact-heading{margin-top:0}.map-preview-wrap{position:relative;border:1px solid #45403d}.map-box{height:280px;background:#252629;z-index:1}.map-overlay-label{position:absolute;z-index:500;top:13px;left:13px;padding:8px 10px;background:#1c1b1ddd;border:1px solid #5a4b40;color:#c6b8a7;font-size:8px;letter-spacing:1px;pointer-events:none}.map-overlay-label i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#c86d45;margin-right:7px}.leaflet-container{background:#252629;font-family:var(--mono)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#282629;color:#eee}.leaflet-popup-content{font:11px var(--mono);line-height:1.6}.page-intro{margin:14px 0 25px}.page-intro h1{font-size:34px}.page-intro p{color:#928d86;font-size:11px;margin-top:10px}.toolbar{display:flex;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}.toolbar input{flex:1;min-width:220px;background:#222225;border:1px solid #413c3b;padding:12px 14px;color:var(--text);outline:none;border-radius:3px}.toolbar input:focus{border-color:#a65e40}.muted-label{font-size:9px;color:#88827b;letter-spacing:.8px}.primary-button{background:#a65336;border:1px solid #c16d48;color:#fff0e2;padding:11px 14px;font-size:9px;letter-spacing:.7px;border-radius:3px}.master-only{display:none}.master-active .master-only{display:inline-block}.survivor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.survivor-card{display:grid;grid-template-columns:100px 1fr;min-height:205px;background:#232326;border:1px solid #3e3a39;overflow:hidden}.portrait{background:linear-gradient(145deg,#514036,#242326);position:relative;display:grid;place-items:center;color:#d5a079;font:700 35px var(--serif);overflow:hidden}.portrait img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.portrait small{position:absolute;bottom:7px;left:8px;font:8px var(--mono);color:#e7d2bd;background:#1b1a1bd9;padding:4px}.survivor-info{padding:12px;min-width:0}.survivor-faction{font-size:8px;color:#c17d56;letter-spacing:.8px;text-transform:uppercase}.survivor-info h3{font:600 14px var(--serif);margin:5px 0;color:#eee5d9}.survivor-info>p{font-size:9px;color:#9d978f;min-height:22px;margin:0 0 9px}.survivor-stats{display:flex;gap:20px;border-top:1px solid #3c3838;border-bottom:1px solid #3c3838;padding:7px 0}.survivor-stats span b,.survivor-stats span small{display:block}.survivor-stats b{font-size:11px;color:#e2c5a8}.survivor-stats small,.equipped small{font-size:7px;color:#837d76;letter-spacing:.7px}.equipped{display:flex;flex-direction:column;gap:3px;padding-top:7px}.equipped b{font-size:9px;color:#c7bdb1;font-weight:500}.equipped small:last-child{color:#d18a58}.card-actions{display:flex;gap:6px;margin-top:9px}.card-actions button,.mini-edit{border:1px solid #655044;background:#302a28;color:#d8a47d;padding:6px 8px;font-size:8px}.faction-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.faction-card{background:linear-gradient(140deg,#292629,#202023);border:1px solid #51403a;padding:22px;position:relative;overflow:hidden}.faction-card:before{content:"";position:absolute;width:160px;height:160px;border:1px solid #a75a3b30;border-radius:50%;right:-65px;top:-70px;box-shadow:0 0 0 20px #a75a3b0a,0 0 0 40px #a75a3b08}.faction-top{display:flex;justify-content:space-between;color:#c17c56;font-size:9px;letter-spacing:1.5px}.faction-top b{font-size:24px;font-weight:400}.faction-card h3{font:600 22px var(--serif);margin:17px 0 9px}.faction-card>p{font-size:11px;color:#a8a098;line-height:1.7;min-height:55px;max-width:560px}.faction-details{display:grid;grid-template-columns:1fr 1fr;gap:13px;border-top:1px solid #49403d;padding-top:15px;margin-top:14px}.faction-details small,.faction-details b{display:block}.faction-details small{font-size:8px;color:#887e75;letter-spacing:1px;margin-bottom:5px}.faction-details b{font-size:10px;color:#ded3c6;font-weight:500}.faction-finance{display:flex;justify-content:space-between;gap:12px;margin-top:17px;padding-top:12px;border-top:1px solid #49403d;color:#9e9489;font-size:9px}.faction-finance b{color:#d7a477;margin-left:5px}.faction-purple{border-color:#544253}.faction-purple .faction-top{color:#b58ab5}.faction-orange{border-color:#67503a}.weapon-list{display:flex;flex-direction:column;gap:8px}.weapon-row{display:grid;grid-template-columns:50px 1fr 120px 90px 35px;align-items:center;gap:15px;background:#232326;border:1px solid #3c3939;padding:12px 16px}.weapon-icon{width:43px;height:43px;background:#3a302b;border:1px solid #655044;display:grid;place-items:center;color:#d38a54;font-size:24px}.weapon-main h3{font:600 14px var(--serif);margin:0 0 5px}.weapon-main p{font-size:9px;color:#969089;margin:0}.weapon-value small,.weapon-damage small,.weapon-value b,.weapon-damage b{display:block}.weapon-value small,.weapon-damage small{font-size:8px;color:#817b75;letter-spacing:1px}.weapon-value b{font-size:11px;color:#d9c8b4;margin-top:5px}.weapon-damage b{font:600 17px var(--serif);color:#d17a49;margin-top:3px}.mini-edit{font-size:15px}.economy-stats{grid-template-columns:repeat(3,1fr);margin-bottom:20px}.table-panel{padding:20px 0}.table-panel .panel-heading{padding:0 20px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:8px;letter-spacing:1px;color:#a47a5e;font-weight:500;background:#292629;padding:12px 16px}td{font-size:10px;color:#c4bcb2;padding:13px 16px;border-bottom:1px solid #393638}td b,td small{display:block}td b{font-weight:500;color:#e0d5c9}td small{font-size:8px;color:#8c857d;margin-top:4px}.table-status{color:#a8bd8e;font-size:9px}.notice{margin-top:17px;padding:16px 18px;border:1px solid #79513a;background:#4c35272e}.notice b{font-size:9px;letter-spacing:1px;color:#d59a62}.notice p{font-size:10px;line-height:1.7;color:#aaa097;margin-bottom:0}.map-legend{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:12px;color:#a59e95;font-size:9px}.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.red-dot{background:#c94b3c}.orange-dot{background:#d58a4b}.blue-dot{background:#7297a8}.full-map{height:570px;border:1px solid #51483f}.map-disclaimer{font-size:9px;color:#837e77;line-height:1.6}.timeline{max-width:900px;margin:30px auto 0}.timeline-entry{display:grid;grid-template-columns:70px 1fr;gap:22px;padding:0 0 35px;position:relative}.timeline-entry:not(:last-child):before{content:"";position:absolute;left:34px;top:48px;bottom:0;width:1px;background:#704631}.timeline-index{width:48px;height:48px;border:1px solid #986044;display:grid;place-items:center;color:#d58a58;font:600 14px var(--serif);background:#292426;z-index:1}.timeline-entry h3{font:600 20px var(--serif);margin:6px 0 9px}.timeline-entry p{font-size:11px;line-height:1.8;color:#aaa39b;margin:0}.memorial-card{max-width:620px;margin:35px auto;background:radial-gradient(ellipse at top,#3a2c2a,#222225 70%);border:1px solid #60463d;text-align:center;padding:45px 35px;position:relative}.memorial-symbol{font:60px var(--serif);color:#bd7656;margin-bottom:17px}.memorial-card h2{font:700 35px var(--serif);margin:13px 0 5px}.memorial-title{color:#d17a49;letter-spacing:3px;font-size:10px}.memorial-card>p{font-size:10px;color:#a9a097}.memorial-card blockquote{border-top:1px solid #59463e;border-bottom:1px solid #59463e;padding:18px 0;margin:25px 0;color:#c8b9a9;font:italic 13px var(--serif)}.memorial-seal{font-size:8px;color:#8c7768;letter-spacing:2px}.main-footer{display:flex;justify-content:space-between;border-top:1px solid #393638;padding:18px 0 22px;color:#716c66;font-size:8px;letter-spacing:.7px}.empty-state{padding:35px;text-align:center;color:#938a81;border:1px dashed #51453d;font-size:10px}.toast{position:fixed;bottom:22px;right:22px;background:#302b28;border:1px solid #a45d3d;color:#f0dfce;padding:12px 17px;z-index:1000;font-size:10px;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}
@media(max-width:1150px){.main-area{padding:0 23px}.survivor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:transform .25s;width:270px;box-shadow:15px 0 40px #0008}.sidebar.open{transform:translateX(0)}.main-area{margin-left:0;padding:0 15px}.topbar{height:58px}.mobile-menu{display:block}.breadcrumb{font-size:8px;flex:1}.breadcrumb i{margin:0 5px}.top-actions{gap:8px}.clock,.connection{display:none}.master-button{font-size:8px;padding:8px}.hero{height:350px}.hero-content{left:22px;right:15px;top:16%}.hero h1{font-size:43px}.hero-stamp{right:15px;top:18px;width:65px;height:65px;font-size:12px}.hero-stamp b{font-size:17px}.hero-stamp small{font-size:6px}.hero-meta{font-size:7px;gap:8px}.hero-bottom{font-size:7px;padding:10px}.stats-grid,.economy-stats{grid-template-columns:repeat(2,1fr);gap:8px}.stat-card{padding:13px;min-height:112px}.stat-card>strong{font-size:23px}.dashboard-grid,.faction-grid{grid-template-columns:1fr}.section-heading h2{font-size:21px}.page-intro h1{font-size:27px}.survivor-grid{grid-template-columns:1fr}.survivor-card{grid-template-columns:95px 1fr}.weapon-row{grid-template-columns:40px 1fr 80px 55px;gap:8px;padding:10px}.weapon-icon{width:36px;height:36px}.weapon-main h3{font-size:12px}.weapon-main p{font-size:8px}.weapon-value b{font-size:9px}.weapon-damage b{font-size:14px}.weapon-row .mini-edit{grid-column:4;grid-row:1}.weapon-value{grid-column:3;grid-row:1}.weapon-damage{grid-column:3;grid-row:2}.hero-meta span:last-child{display:none}.main-footer{gap:10px;flex-direction:column}.full-map{height:470px}.map-legend{gap:10px}.timeline-entry{grid-template-columns:48px 1fr;gap:13px}.timeline-index{width:40px;height:40px}.timeline-entry:not(:last-child):before{left:19px;top:40px}.toolbar input{min-width:100%}}
@media(max-width:390px){.stats-grid,.economy-stats{grid-template-columns:1fr 1fr}.hero h1{font-size:36px}.hero-subtitle{font-size:9px;letter-spacing:2px}.hero-stamp{display:none}.faction-finance{font-size:8px}}


/* =================================
   SAHUR OS — TIPOGRAFIA AMPLIADA
================================= */

/* Texto geral */
body {
    font-size: 17px;
    line-height: 1.65;
}

/* Textos secundários */
p,
.description,
.muted,
small {
    font-size: 15px;
    line-height: 1.6;
}

/* Títulos das seções */
h1 {
    font-size: clamp(34px, 4vw, 48px);
}

h2 {
    font-size: 30px;
}

h3 {
    font-size: 23px;
}

/* Cards e informações */
.card,
.survivor-card,
.faction-card {
    font-size: 16px;
}

/* Nomes dos sobreviventes */
.survivor-card h3 {
    font-size: 21px;
}

/* Tabelas */
table {
    font-size: 16px;
}

th {
    font-size: 14px;
}

td {
    font-size: 16px;
    padding: 13px 12px;
}

/* Botões */
button,
.btn {
    font-size: 16px;
}

/* Campos de pesquisa */
input,
select,
textarea {
    font-size: 16px;
}

/* Indicadores e números */
.stat-value {
    font-size: 30px;
}

/* Navegação */
nav,
nav a,
.sidebar a {
    font-size: 16px;
}

/* ==========================================
   SAHUR OS — MODO ALTA LEGIBILIDADE
========================================== */

/* Texto padrão */
body {
    font-size: 19px;
    line-height: 1.7;
}

/* Subtítulos e títulos de seção */
h1 { font-size: 46px; }
h2 { font-size: 36px; }
h3 { font-size: 27px; }
h4 { font-size: 23px; }

/* Textos comuns e descrições */
p,
.description,
.subtitle,
.muted,
small,
label {
    font-size: 17px;
    line-height: 1.7;
}

/* Etiquetas, categorias e informações */
.badge,
.tag,
.category,
.status,
.eyebrow,
.section-label,
.card-label {
    font-size: 15px;
    letter-spacing: 1px;
}

/* Informações dos cards */
.card,
.survivor-card,
.faction-card {
    font-size: 18px;
}

/* Nomes dos sobreviventes */
.survivor-card h3 {
    font-size: 25px;
}

/* Tabelas */
table {
    font-size: 17px;
}

th {
    font-size: 16px;
}

td {
    font-size: 17px;
    line-height: 1.6;
    padding: 15px;
}

/* Menu e navegação */
nav a,
.sidebar a,
.menu a {
    font-size: 18px;
}

/* Botões */
button,
.btn {
    font-size: 17px;
}

/* Dados e indicadores */
.stat-value {
    font-size: 34px;
}

.stat-label {
    font-size: 16px;
}

/* Textos técnicos e pequenos */
code,
.mono,
.technical {
    font-size: 15px;
}

/* ==========================================
   CALDAS WASTELAND — MAPA TÁTICO
========================================== */
.map-page-intro h1{font:700 clamp(34px,4.6vw,54px)/1.05 var(--serif);letter-spacing:.5px;color:#e9dfd1}
.map-page-intro h1 em{font-style:normal;color:#d17a49}
.map-page-intro p{font-size:12px;letter-spacing:1px;color:#a59a8d}
.map-commandbar{display:flex;justify-content:space-between;align-items:stretch;gap:12px;margin:18px 0 12px;flex-wrap:wrap}
.map-searchbox{display:flex;align-items:center;gap:9px;flex:1 1 340px;min-width:260px;background:#202023;border:1px solid #514238;padding:5px 7px 5px 12px;box-shadow:inset 0 0 22px #0003}
.map-searchbox>span{font:22px var(--serif);color:#d17a49}
.map-searchbox input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#eee1d2;padding:9px 4px;font:14px var(--mono)}
.map-searchbox input::placeholder{color:#81766d}
.map-searchbox button,.map-action-button{border:1px solid #7a4a35;background:#382921;color:#e6b083;padding:10px 13px;font:600 11px var(--mono);letter-spacing:.6px;transition:.18s}
.map-searchbox button:hover,.map-action-button:hover{border-color:#d17a49;background:#513326;color:#ffe0bd}
.map-command-actions{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap}
.map-base-select{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:5px 10px;background:#202023;border:1px solid #403a37}
.map-base-select span{font-size:9px!important;letter-spacing:1.1px;color:#96765f}
.map-base-select select{max-width:190px;border:0;outline:0;background:#202023;color:#e0d1c1;font:11px var(--mono);padding:2px 0}
.map-action-button.active{border-color:#a94d3b;background:#492521;color:#f08a74}
.map-filterbar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 12px;padding:10px 12px;background:#1e1e21;border:1px solid #393536}
.map-filterbar>span{font-size:10px!important;color:#9a897c;letter-spacing:1px;margin-right:5px}
.map-filterbar button{border:1px solid #4a403a;background:#272427;color:#a99d91;padding:7px 10px;font:11px var(--mono);letter-spacing:.3px}
.map-filterbar button:hover{border-color:#a45e40;color:#efd0b0}
.map-filterbar button.active{background:#4b3027;border-color:#c1764b;color:#ffd0a4;box-shadow:inset 0 -2px #d17a49}
.map-operations-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:12px;align-items:stretch}
.map-ops-frame{min-width:0;position:relative;overflow:hidden;border:1px solid #665043;background:#19191c;box-shadow:0 12px 35px #0005}
.map-ops-frame:before{content:"";position:absolute;inset:0;z-index:450;pointer-events:none;border:1px solid #e4a36c35;box-shadow:inset 0 0 60px #0005}
.full-map{height:650px;min-height:520px;border:0;background:#232326}
.map-corner-stamp{position:absolute;top:14px;left:14px;z-index:500;display:flex;flex-direction:column;gap:3px;padding:9px 12px;background:#191719e8;border:1px solid #a86749a0;box-shadow:0 4px 18px #0008;pointer-events:none}
.map-corner-stamp b{font:700 13px var(--serif);letter-spacing:1.4px;color:#e6a16b}
.map-corner-stamp span{font-size:9px;color:#c5b39f;letter-spacing:1px}
.map-bottom-status{position:absolute;bottom:0;left:0;right:0;z-index:500;display:flex;align-items:center;gap:9px;min-height:34px;padding:7px 12px;background:#171719e8;border-top:1px solid #72513e;color:#c8aa8e;font:10px var(--mono);letter-spacing:.65px;pointer-events:none}
.map-live-dot{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#8ba77c;box-shadow:0 0 10px #8ba77c}
#mapBoundaryStatus.is-error{color:#e47a6d}
.map-coord-readout{margin-left:auto;color:#8a8179}
.map-intel-panel{position:relative;display:flex;flex-direction:column;min-width:0;padding:17px 17px 15px;background:linear-gradient(160deg,#292426,#1e1e21 62%);border:1px solid #50423b;overflow:hidden}
.map-intel-panel:after{content:"";position:absolute;right:-50px;top:65px;width:150px;height:150px;border:1px solid #a95a3b25;border-radius:50%;box-shadow:0 0 0 18px #a95a3b09,0 0 0 36px #a95a3b06;pointer-events:none}
.map-intel-top{display:flex;justify-content:space-between;gap:8px;padding-bottom:12px;border-bottom:1px solid #4d403a;color:#cd906b;font-size:10px;letter-spacing:1.4px}
.map-intel-top b{color:#897f77;font-weight:500}
.map-intel-cross{width:48px;height:48px;display:grid;place-items:center;margin:22px 0 13px;border:1px solid #87543d;color:#d17a49;font:32px var(--serif);background:#352723}
.map-intel-kicker{font-size:10px!important;color:#9c8170;letter-spacing:1.3px}
.map-intel-panel h3{position:relative;z-index:1;margin:6px 0 8px;font:700 22px/1.2 var(--serif);color:#e8d9c6;overflow-wrap:anywhere}
.map-info-type{display:inline-block;align-self:flex-start;padding:5px 8px;background:#3a2c27;border:1px solid #674734;color:#e1a06b;font-size:10px!important;letter-spacing:.7px;text-transform:uppercase}
.map-intel-panel>p{position:relative;z-index:1;margin:16px 0;color:#b1a69b;font-size:13px!important;line-height:1.7}
.map-info-coords{margin-top:auto;padding:10px 0;border-top:1px solid #49403c;border-bottom:1px solid #49403c;color:#9b8d81;font-size:9px;line-height:1.6;letter-spacing:.3px;overflow-wrap:anywhere}
.map-intel-divider{height:1px;margin:15px 0;background:linear-gradient(90deg,#a65e40,#473a36,transparent)}
.map-intel-note b{font-size:10px!important;color:#d18a58;letter-spacing:1.1px}
.map-intel-note p{margin:7px 0 0;color:#938b83;font-size:11px!important;line-height:1.65}
.map-search-status{margin-top:15px;color:#8ca17f;font-size:9px;letter-spacing:.7px}
.map-legend-enhanced{gap:16px;margin:13px 0 8px;padding:11px 13px;background:#202023;border:1px solid #3d3836;font-size:11px!important}
.map-legend-enhanced>span{display:flex;align-items:center;gap:2px}
.legend-line{display:inline-block;width:20px;height:0;margin-right:6px;border-top:2px dashed #f0a15d}
.map-disclaimer{font-size:11px!important;color:#877e75;line-height:1.7}
.leaflet-container{background:#232326;font-family:var(--mono)}
.map-ops-frame .leaflet-tile-pane{filter:sepia(.20) saturate(.78) brightness(.82) contrast(1.08)}
.leaflet-control-zoom{border:1px solid #77523f!important;box-shadow:0 3px 16px #0008!important}
.leaflet-control-zoom a{background:#211f20!important;color:#e5a16f!important;border-color:#554039!important}
.leaflet-control-zoom a:hover{background:#493026!important;color:#ffe0bd!important}
.leaflet-control-attribution{background:#171719d9!important;color:#a39a91!important;font-size:9px!important}
.leaflet-control-attribution a{color:#d69a6e!important}
.sahur-map-tooltip{background:#211d1c;border:1px solid #c77b4d;color:#f0c39c;box-shadow:0 3px 14px #0008;font:10px var(--mono);letter-spacing:.4px}
.sahur-map-tooltip:before{border-top-color:#c77b4d}
.sahur-popup{min-width:180px;font-family:var(--mono)}
.sahur-popup strong,.sahur-popup span,.sahur-popup small{display:block}
.sahur-popup strong{font:700 14px var(--serif);color:#e9b080;margin-bottom:5px}
.sahur-popup span{font-size:10px;color:#d0a17c;letter-spacing:.6px}
.sahur-popup p{font-size:11px;line-height:1.55;color:#e2d8cd;margin:8px 0}
.sahur-popup small{font-size:9px;color:#a99d91}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#262326;color:#eee}
.leaflet-popup-content{margin:12px 14px;line-height:1.5}
.map-preview-wrap .leaflet-control-attribution{display:none}
@media(max-width:1150px){.map-operations-grid{grid-template-columns:minmax(0,1fr) 245px}.full-map{height:590px}}
@media(max-width:900px){.map-operations-grid{grid-template-columns:1fr}.map-intel-panel{min-height:280px}.map-intel-cross{margin:13px 0 8px}.map-info-coords{margin-top:4px}}
@media(max-width:760px){.map-commandbar{display:block}.map-searchbox{margin-bottom:9px;min-width:0}.map-command-actions{display:grid;grid-template-columns:1fr 1fr}.map-base-select{grid-column:1/-1}.map-base-select select{max-width:none;width:100%;font-size:12px}.map-command-actions .map-action-button{font-size:10px;padding:9px 7px}.map-filterbar{gap:6px}.map-filterbar>span{width:100%;margin-bottom:3px}.map-filterbar button{font-size:10px;padding:7px}.full-map{height:500px;min-height:430px}.map-intel-panel{padding:14px}.map-page-intro p{font-size:10px!important}.map-bottom-status{font-size:8px;gap:6px}.map-coord-readout{display:none}}

/* ==============================================
   CALDAS WASTELAND — GRANDE ONDA / FOCOS REGIONAIS
   ============================================== */
.map-command-actions{gap:7px}
.map-action-button{font-size:12px;min-height:42px;padding:10px 12px}
.map-filterbar{gap:8px}
.map-filterbar button{font-size:12px;padding:8px 12px}
.map-legend-enhanced{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;font-size:12px!important}
.map-legend-enhanced>span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.legend-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:4px;box-shadow:0 0 9px currentColor}
.red-dot{background:#d62e2e;color:#d62e2e}
.rust-dot{background:#d97745;color:#d97745}
.purple-dot{background:#ad8bc6;color:#ad8bc6}
.orange-dot{background:#e39a59;color:#e39a59}
.blue-dot{background:#86aebe;color:#86aebe}
.sahur-hazard-core{filter:drop-shadow(0 0 8px #e22e2e55);animation:sahur-core-pulse 4.8s ease-in-out infinite}
.sahur-hazard-minor{filter:drop-shadow(0 0 4px #da754544)}
.sahur-hazard-spill{filter:drop-shadow(0 0 5px #ce4b4455)}
@keyframes sahur-core-pulse{0%,100%{stroke-opacity:.78}50%{stroke-opacity:1}}
.sahur-zone-tooltip{background:#211719;border:1px solid #c94b42;color:#ffb09a;box-shadow:0 3px 14px #000b;font:700 10px var(--mono);letter-spacing:.7px;text-transform:uppercase}
.sahur-zone-tooltip:before{border-top-color:#c94b42}
.sahur-point-label{background:#171719ed;border:1px solid #9a6547;color:#f1d2b1;border-radius:2px;box-shadow:0 2px 9px #000a;padding:3px 6px;font:700 9px var(--mono);letter-spacing:.55px;text-transform:uppercase;white-space:nowrap}
.sahur-point-label:before{border-top-color:#9a6547}
.sahur-point-label.regional-label{background:#211a27ed;border-color:#8c6da6;color:#d7bce9}
.sahur-point-label.regional-label:before{border-top-color:#8c6da6}
.sahur-zone-popup .sahur-popup strong{color:#ef877c}
.sahur-zone-popup .sahur-popup span{color:#ed9589}
.leaflet-control-scale-line{background:#1b1a1be8!important;border:1px solid #c18a61!important;border-top:0!important;color:#e1c5a9!important;text-shadow:none!important;font:10px var(--mono)!important}
.map-info-coords{font-size:10px;line-height:1.7;overflow-wrap:anywhere}
.map-disclaimer{font-size:12px!important;line-height:1.75}
@media(max-width:760px){
  .map-command-actions{grid-template-columns:1fr 1fr}
  .map-command-actions .map-action-button{font-size:10px;padding:9px 7px}
  .map-legend-enhanced{gap:9px 12px}
  .map-legend-enhanced>span{white-space:normal;font-size:10px}
  .sahur-point-label{font-size:8px;padding:2px 4px}
}


/* CALDAS WASTELAND — ATALHOS DE REFERÊNCIA */
.map-reference-rail{margin:0 0 12px;padding:12px 13px;background:linear-gradient(100deg,#241e1d,#1d1d20);border:1px solid #594438;box-shadow:inset 3px 0 #a94d3b}
.map-reference-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px;color:#d69a6e;font:700 11px var(--mono);letter-spacing:1px}
.map-reference-heading span{color:#91867c;font:10px var(--mono);letter-spacing:.45px}
.map-reference-heading i{font-style:normal}
.map-reference-buttons{display:flex;flex-wrap:wrap;gap:7px}
.map-reference-buttons button{border:1px solid #59443a;background:#292322;color:#d7c0a9;padding:8px 10px;font:600 10px var(--mono);letter-spacing:.45px;transition:background .16s,border-color .16s,color .16s}
.map-reference-buttons button:hover{background:#493027;border-color:#d17a49;color:#ffe0bd}
.map-reference-buttons button:focus-visible{outline:2px solid #e39a59;outline-offset:2px}
@media(max-width:760px){.map-reference-heading{align-items:flex-start;flex-direction:column;gap:5px}.map-reference-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.map-reference-buttons button{min-height:38px;padding:7px 6px;font-size:9px}}

/* ==================================
   SAHUR OS — BACKGROUND PRINCIPAL
================================== */

html,
body {
    min-height: 100%;
}

body {
    background-color: #171719;

    background-image:
        linear-gradient(
            rgba(15, 14, 14, 0.68),
            rgba(15, 14, 14, 0.82)
        ),
        url("src/Assets/images/Backgrounds/background.jpg");

    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

/* ==========================================
   SAHUR OS — AUTENTICAÇÃO DO MODO MESTRE
========================================== */
.master-auth-dialog {
  width: min(440px, calc(100vw - 32px));
  padding: 0;
  border: 1px solid #76513d;
  border-radius: 5px;
  color: #e8e2d8;
  background: #1e1d20;
  box-shadow: 0 24px 90px #000c, inset 0 0 45px #a6533610;
}
.master-auth-dialog::backdrop { background: #080809c9; backdrop-filter: blur(5px); }
.master-auth-form { display: flex; flex-direction: column; gap: 12px; padding: 30px; }
.master-auth-emblem { align-self: center; display: grid; place-items: center; width: 54px; height: 54px; border: 1px solid #a65336; color: #d17a39; font: 34px var(--serif); transform: rotate(45deg); margin: 3px 0 12px; }
.master-auth-form > .eyebrow { text-align: center; }
.master-auth-form h2 { margin: 0; text-align: center; font: 700 22px var(--serif); letter-spacing: .7px; }
.master-auth-form h2 em { color: #d17a49; font-style: normal; }
.master-auth-form p { margin: 0 0 8px; text-align: center; color: #aaa097; font-size: 13px; line-height: 1.65; }
.master-auth-form label { color: #c28a65; font: 700 10px var(--mono); letter-spacing: 1px; }
.master-auth-form input { width: 100%; border: 1px solid #59463c; background: #141416; color: #eee5d9; border-radius: 3px; padding: 13px 14px; outline: none; }
.master-auth-form input:focus { border-color: #d17a39; box-shadow: 0 0 0 2px #d17a3928; }
.master-auth-actions { display: grid; grid-template-columns: 1fr 1.2fr; gap: 9px; margin-top: 7px; }
.master-auth-actions button { min-height: 42px; border-radius: 3px; font: 700 10px var(--mono); letter-spacing: .8px; }
.master-auth-cancel { border: 1px solid #55463d; background: #29272a; color: #bfb3a6; }
.master-auth-submit { border: 1px solid #a65336; background: linear-gradient(135deg,#a65336,#713b2c); color: #fff0e4; }
.master-auth-actions button:disabled { opacity: .55; cursor: wait; }
.master-auth-form > small { min-height: 16px; color: #a79c90; text-align: center; font-size: 11px; }
@media(max-width:480px) { .master-auth-form { padding: 24px 20px; } .master-auth-form h2 { font-size: 19px; } }
