/* FSRE Map Studio web portal — white, gold lines, calm type */
/* fonts are served by this server: no third-party requests from the pages */
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/inter-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"Michroma";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/michroma-latin-400-normal.woff2) format("woff2")}
:root{--ink:#0b1b33;--ink2:#33465f;--dim:#6c7d96;--line:#dfe7f3;--soft:#f3f7fd;--blue:#9a7a12;--cyan:#c8a227;--ok:#00a86b;--warn:#f5a623;--bad:#e5193a;
 --grad:linear-gradient(90deg,#9a7a12,#c8a227);--r:14px;--sans:"Inter","Segoe UI",system-ui,sans-serif;--disp:"Michroma","Inter",sans-serif;--mono:ui-monospace,Menlo,Consolas,monospace}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--sans);color:var(--ink);background:#fff;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh}
a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}
button,input,select,textarea{font:inherit;color:inherit}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
.nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.86);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;gap:14px;height:64px}
.logo{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:700;letter-spacing:.01em}
.logo img{width:34px;height:34px}.logo b{font-family:var(--disp);font-size:14px;letter-spacing:.06em;font-weight:400}
.logo small{display:block;font-size:10px;color:var(--dim);letter-spacing:.14em;font-weight:600}
.nav .sp{flex:1}.nav .links{display:flex;gap:20px;align-items:center}.nav .links a{color:var(--ink2);font-weight:500;font-size:14px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:11px;padding:11px 18px;font-weight:700;cursor:pointer;background:var(--blue);color:#fff;font-size:14.5px;text-decoration:none!important;transition:transform .12s,box-shadow .2s}
.btn:hover{box-shadow:0 8px 24px rgba(0,102,255,.25);transform:translateY(-1px)}
.btn.grad{background:var(--grad)}.btn.ghost{background:#fff;color:var(--blue);border:1px solid #ead9a6}.btn.ghost:hover{box-shadow:none;background:var(--soft)}
.btn.sm{padding:7px 12px;font-size:13px;border-radius:9px}.btn.danger{background:#fff;color:var(--bad);border:1px solid #f6c7cf}
.btn[disabled]{opacity:.55;cursor:default;transform:none;box-shadow:none}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px}
.muted{color:var(--dim)}.small{font-size:13px}
h1,h2,h3{line-height:1.2;color:var(--ink)}
.disp{font-family:var(--disp);font-weight:400;letter-spacing:.02em}
.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:700;color:var(--blue);text-transform:uppercase}
label{display:block;font-size:13px;font-weight:600;color:var(--ink2);margin:12px 0 5px}
input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],select,textarea{width:100%;padding:11px 13px;border:1px solid #cfdbec;border-radius:10px;background:#fff;outline:none;transition:border .15s,box-shadow .15s}
input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(154,122,18,.14)}
.err{color:var(--bad);font-size:13.5px;margin-top:10px;min-height:1px}.ok{color:var(--ok);font-size:13.5px;margin-top:10px}
.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;background:var(--soft);color:var(--ink2);border:1px solid var(--line)}
.pill.ok{background:#e9fbf3;color:#06794f;border-color:#bfeedb}.pill.warn{background:#fff6e6;color:#9a5b00;border-color:#ffe2ad}.pill.bad{background:#fff0f2;color:#b5102b;border-color:#ffd0d8}.pill.blue{background:#eef5ff;color:#0052cc;border-color:#cfe0ff}
table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;font-size:12px;color:var(--dim);font-weight:600;letter-spacing:.04em;padding:8px 8px;border-bottom:1px solid var(--line)}
td{padding:10px 8px;border-bottom:1px solid #eef2f8;vertical-align:middle}
.foot{border-top:1px solid var(--line);margin-top:60px;padding:28px 0;color:var(--dim);font-size:13px}
.foot .wrap{display:flex;gap:18px;flex-wrap:wrap;align-items:center}.foot a{color:var(--ink2)}
.grid-lines{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(0,102,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(0,102,255,.07) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(ellipse at 50% 0%,#000 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 50% 0%,#000 30%,transparent 75%)}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--ink);color:#fff;padding:10px 16px;border-radius:10px;font-size:14px;display:none;z-index:99;max-width:92vw}
@media (max-width:720px){.nav .links .hide-m{display:none}.card{padding:18px}}
