:root{font-family:Inter,Arial,sans-serif;color:#182e43;background:#eff3f7;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;border:1px solid #c9d6e3;border-radius:9px;padding:10px 15px;background:#fff;color:#20384e;font-weight:600}button:disabled{opacity:.5;cursor:wait}button:hover{filter:brightness(.96)}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #5b9bdb;outline-offset:2px}input,select,textarea{border:1px solid #c4d1de;padding:11px 12px;border-radius:8px;background:#fff;max-width:100%;color:#172f45}input[type=checkbox]{width:auto}label{display:grid;gap:7px;font-size:13px;font-weight:600;text-transform:none}form{display:grid;gap:15px}small{display:block;color:#60768b;font-size:12px;margin-top:5px}h1,h2,h3,p{margin-top:0}p{line-height:1.6;color:#586d80}h1{font-size:27px}h2{font-size:22px}h3{font-size:17px}a{color:inherit}.app{--deep: #082746;--medium: #bdd3ed;--light: #e0ecf9;--accent: #245c98;min-height:100vh}.theme-green{--deep: #093b2a;--medium: #b8dcc8;--light: #e0f1e6;--accent: #24784d}.theme-purple{--deep: #30204e;--medium: #d2c0e8;--light: #eee5f8;--accent: #7853a4}.theme-orange{--deep: #51290f;--medium: #edcaa4;--light: #fbeddc;--accent: #b45c20}.theme-teal{--deep: #073d42;--medium: #b1d9dc;--light: #dff1f2;--accent: #257d86}header{background:var(--deep);color:#fff;padding:22px max(24px,calc((100vw - 1240px)/2));display:flex;justify-content:space-between;gap:15px;align-items:center}.brand{display:flex;align-items:center;gap:13px}.brand strong{font-size:21px;letter-spacing:1.2px}.brand small,header small{color:#cedbea}.brand-mark{background:#fff2cc;color:#cf8d22;border-radius:12px;font-size:27px;display:inline-grid;place-items:center;width:46px;height:46px}.header-right{display:flex;gap:12px;align-items:center}.header-right>span{font-size:14px}.header-right button{background:#ffffff15;color:#fff;border-color:#ffffff40}main{max-width:1240px;padding:28px 24px;margin:auto}.workspace{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}.workspace h1{margin-bottom:0}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.6px;margin-bottom:7px;color:var(--accent)}nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}nav button{background:transparent;border:0;color:#65798c}.selected{background:var(--deep)!important;color:#fff!important}.primary{background:var(--accent, #245c98);color:#fff;border-color:transparent}.filters{background:var(--medium);padding:20px;border-radius:15px;border:1px solid #0000000d}.search{background:#fff;display:flex;align-items:center;border-radius:10px;padding-left:14px;color:var(--accent)}.search input{border:0;flex:1;min-width:0;padding:14px}.filter-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}.filter-row select{flex:1;min-width:145px}.result-title{display:flex;justify-content:space-between;margin:23px 0 13px;font-size:13px}.result-title span{color:#6c8193}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.contact{background:var(--light);border:1px solid #0000000e;border-radius:15px;overflow:hidden;box-shadow:0 3px 10px #10263a05}.office-row{padding:12px 17px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #0000000c;background:#ffffff35}.office-row>span{font-size:10px;font-weight:800;letter-spacing:.9px;color:var(--accent)}.office-row small{margin:0;font-size:10px}.contact-person{display:flex;gap:12px;padding:20px 17px 12px;align-items:center}.avatar{width:42px;height:42px;border-radius:50%;background:var(--medium);color:var(--deep);display:grid;place-items:center;font-weight:800;flex-shrink:0}.contact h3{margin:0 0 5px;font-size:16px}.contact p{margin:0;font-size:12px}.hierarchy{display:grid;gap:5px;margin:0 17px 16px;font-size:12px;color:#586f83}.hierarchy strong{font-size:12px}.contact-actions{padding:12px 15px;border-top:1px solid #0000000d;display:flex;gap:8px;align-items:center;background:#ffffff28}.contact-actions>span{flex:1;font-weight:700;font-size:12px}.contact-actions button{padding:8px 10px;background:var(--deep);color:#fff;border:0}.contact-actions button+button{background:#2a8054}.panel{background:#fff;border:1px solid #dce5ed;border-radius:15px;padding:25px;margin-bottom:20px}.toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 20px}.toolbar button{font-size:12px}.inline-form,.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;align-items:end}.editor{padding:20px;background:#f2f6fa;border-radius:12px;margin:20px 0}.editor button{margin:15px 8px 0 0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}th{color:#6b7d8d;background:#f1f5f8;font-size:11px;text-transform:uppercase}td,th{padding:13px 12px;border-bottom:1px solid #e2e9ef}td button{padding:7px 10px;font-size:11px;margin-right:5px}pre{white-space:pre-wrap;max-width:500px;font-size:11px}.list-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 0;border-bottom:1px solid #e4ebf2}.list-row>div{display:flex;gap:7px;flex-wrap:wrap}.list-row button,.list-row select{font-size:11px;padding:8px}.notice{background:#fff4d9;color:#715016;border:1px solid #edd9a3;border-radius:9px;padding:15px;margin-bottom:15px}.alert{display:flex;justify-content:space-between;background:#fff0ef;border:1px solid #e9b5ae;color:#8a2923;padding:12px;border-radius:9px;margin-bottom:16px}.alert button{background:transparent;border:0;padding:0 8px;color:inherit}.credential{background:#e6f1ff;padding:20px;border-radius:12px;margin:18px 0}.credential code{display:block;overflow-wrap:anywhere;background:#fff;padding:12px;margin:12px 0}.file-button{display:inline-flex;background:#fff;border:1px solid #c9d6e3;border-radius:9px;padding:10px 15px;cursor:pointer}.file-button input{display:none}.consent{max-width:750px;margin:30px auto}.consent-text{white-space:pre-wrap;line-height:1.8;background:#f4f7fa;padding:20px;border-radius:10px;margin:20px 0}.consent button{margin-right:10px}.login{min-height:100vh;background:radial-gradient(ellipse at 10% 20%,#234f76,#092746 70%);display:grid;place-items:center;padding:25px}.login-card{background:#f7faff;border-radius:23px;padding:38px;width:430px;max-width:100%;box-shadow:0 25px 80px #0004}.login-card h1{font-size:27px;letter-spacing:1px;margin:20px 0 7px}.login-card>p{font-size:13px}.login-card form{margin:24px 0 16px}.login-card .primary,.wide{width:100%}.login-card>small{margin-top:20px;text-align:center}.loading{padding:80px;text-align:center}footer{text-align:center;color:#8393a0;font-size:11px;padding:25px}textarea{min-height:140px}.panel>form:not(.inline-form){max-width:700px}input{min-width:0}@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){header{padding:18px 16px}.brand strong{font-size:16px}.brand small{font-size:9px}.brand-mark{width:35px;height:35px;font-size:22px}.header-right>span{display:none}.header-right{gap:6px}main{padding:20px 14px}.cards{grid-template-columns:1fr}.workspace h1{font-size:22px}.workspace select{max-width:145px}.inline-form,.form-grid{grid-template-columns:1fr}.panel{padding:18px}.list-row{align-items:flex-start;flex-direction:column}nav button{font-size:12px;padding:9px}.login-card{padding:28px}.filter-row select{min-width:100px}.filter-row{gap:7px}}:root{font-family:Arial,sans-serif;background:#dce8f6}.app{--deep: #061a35;--medium: #789fc9;--light: #dce8f6;--card: #e8f1fb;--accent: #2f6fae;background:var(--light);color:#0f172a}.theme-green{--deep: #064e3b;--medium: #74bd9e;--light: #dff2e8;--card: #eaf7ef;--accent: #047857}.theme-purple{--deep: #3b0764;--medium: #b29ace;--light: #eee4f7;--card: #f4ecfb;--accent: #7e22ce}.theme-orange{--deep: #51290f;--medium: #d9a46d;--light: #faead9;--card: #fff2e5;--accent: #9a4b16}.theme-teal{--deep: #083344;--medium: #72b8bf;--light: #dcf1f2;--card: #e9f8f8;--accent: #0e7490}.app>header{position:sticky;top:0;z-index:30;padding:10px max(12px,calc((100vw - 1180px)/2));min-height:62px;box-shadow:0 2px 8px #061a3526;border-bottom:1px solid #ffffff20}.brand{gap:9px;min-width:0}.brand-mark{width:34px;height:34px;border-radius:8px;background:#ea580c;color:#fff;font-size:21px;flex-shrink:0}.brand strong{font-size:16px;font-weight:800;letter-spacing:.7px;display:flex;gap:7px;align-items:center}.brand small{font-size:10px;margin-top:4px}.role-badge{padding:3px 5px;font-size:9px;letter-spacing:.4px;border:1px solid #f59e0b66;background:#f59e0b26;color:#fcd34d;border-radius:4px}.header-right{gap:7px}.header-right>span{font-size:12px}.header-right small{font-size:10px}.header-right button{padding:7px 9px;font-size:11px;border-radius:7px}main{max-width:1180px;padding:16px 14px}.workspace{margin-bottom:12px}.workspace h1{font-size:20px;line-height:1.25}.workspace select{font-size:12px;padding:8px}.eyebrow{font-size:9px;margin-bottom:4px}.app-nav{background:var(--card);border:1px solid #061a351a;padding:5px;border-radius:10px;margin-bottom:14px;gap:5px}.app-nav button{font-size:12px;border-radius:7px;padding:8px 12px}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}.summary-card{background:var(--card);justify-content:space-between;text-align:left;padding:12px;border:1px solid #061a3520;border-radius:12px}.summary-card div{display:grid;gap:3px}.summary-card small{margin:0;text-transform:uppercase;font-weight:800;font-size:9px}.summary-card strong{font-size:24px}.summary-card span{font-size:10px}.summary-card svg{background:#fff5;width:36px;height:36px;padding:8px;border-radius:9px;color:var(--deep)}.summary-card.active{background:var(--deep);color:#fff;border-color:#f59e0b;box-shadow:0 0 0 1px #f59e0b55}.summary-card.active small{color:#fcd34d}.summary-card.active svg{background:#ea580c;color:#fff}.filters{padding:12px;border-radius:12px;box-shadow:0 2px 6px #061a3510}.search{border-radius:8px;padding-left:10px;border:1px solid #061a3526}.search input{padding:11px 10px;font-size:13px;border-radius:8px}.filter-row{gap:7px;margin-top:9px}.filter-row select{min-width:120px;font-size:12px;padding:9px 8px}.filter-row button{font-size:11px;padding:8px 10px}.designation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:6px;margin:12px 0}.designation-tile{display:flex;flex-direction:column;align-items:stretch;gap:4px;padding:7px;border-radius:9px;background:#eff6ff;border-color:#93c5fd;min-width:0;text-align:center}.tile-top{display:flex;justify-content:space-between;align-items:center}.tile-top b{font-size:10px;border-radius:12px;background:#ffffff70;padding:2px 5px}.designation-tile strong{font-size:10px;overflow-wrap:anywhere;line-height:1.2}.designation-tile small{margin:0;font-size:9px}.designation-tile.tone-1{background:#dcfce7;border-color:#86efac}.designation-tile.tone-2{background:#e0f2fe;border-color:#7dd3fc}.designation-tile.tone-3{background:#fef3c7;border-color:#fcd34d}.designation-tile.tone-4{background:#ccfbf1;border-color:#5eead4}.designation-tile.tone-5{background:#f3e8ff;border-color:#d8b4fe}.designation-tile.active{background:var(--deep);color:#fff;border-color:var(--accent)}.designation-tile.active small{color:#dae7f5}.designation-tile.active .tile-top b{background:#ffffff26}.result-title{margin:12px 0 9px;font-size:11px}.cards{gap:9px}.contact{border-radius:12px;background:var(--card);border-left:4px solid var(--accent);box-shadow:0 2px 8px #061a350c}.office-row{padding:6px 10px;background:#ffffff30}.office-row>span,.office-row small{font-size:9px}.contact-person{padding:9px 10px 5px;gap:8px;align-items:flex-start}.contact-person>div:last-child{min-width:0}.avatar{width:34px;height:34px;border-radius:8px;font-size:12px}.contact h3{font-size:14px;line-height:1.3;margin:0 0 3px;overflow-wrap:anywhere}.contact-person p{display:inline-block;font-size:9px;font-weight:800;text-transform:uppercase;padding:2px 6px;border-radius:4px;color:var(--deep);background:var(--medium)}.hierarchy{margin:3px 10px 8px;gap:4px;font-size:10px}.fgmo-tag{display:inline-flex;align-items:center;gap:4px;width:fit-content;border:1px solid #bfdbfe;color:#1e3a8a;background:#eff6ff;padding:3px 5px;border-radius:4px}.location-pair{display:flex;gap:5px;align-items:flex-start;flex-wrap:wrap}.zone-tag,.centre-tag{display:inline-flex;align-items:center;gap:4px;border:1px solid #facc15;background:#fef08a;color:#713f12;padding:3px 6px;border-radius:5px;max-width:100%;overflow-wrap:anywhere;font-weight:800}.hierarchy .centre-tag{background:#0f766e;color:#fff;border-color:#0d9488;font-size:10px}.contact-actions{margin:0 10px;padding:8px 0;background:transparent;gap:5px}.contact-actions>span{display:flex;align-items:center;gap:4px;font-size:11px;font-family:ui-monospace,monospace}.contact-actions button{background:#10b981;padding:7px 9px;font-size:11px;border-radius:7px}.contact-actions button+button{background:#15803d}.contact-actions svg{width:14px;height:14px;flex-shrink:0}.panel{border-radius:12px;padding:20px;box-shadow:0 2px 8px #061a3508}.empty-state{text-align:center;background:var(--card);padding:28px 15px}.empty-state svg{color:var(--accent);margin-bottom:10px}.empty-state h3{font-size:15px;margin-bottom:5px}.empty-state p{font-size:12px;margin-bottom:0}footer{padding:18px;font-size:10px}.login{background:linear-gradient(145deg,#061a35,#103d70)}.login-card{padding:30px;border-radius:16px;border-top:4px solid #ea580c}.login-card h1{font-size:24px}.login-card .brand-mark{width:44px;height:44px;font-size:28px}.night{--light: #050d18;--card: #0c1827;--medium: #203a56;color:#f1f5f9}.night .panel,.night .editor,.night th,.night .consent-text{background:#0c1827;color:#f1f5f9;border-color:#203a56}.night p,.night small,.night .result-title span{color:#b1c0d1}.night input,.night select,.night textarea,.night .search{background:#07121f;color:#f1f5f9;border-color:#28445e}.night .designation-tile:not(.active){background:#14273c;color:#f1f5f9;border-color:#28445e}.night td{border-color:#28445e}.night .contact-person p{color:#e2e8f0}@media(max-width:650px){.app>header{padding:10px 12px;min-height:60px}.brand strong{font-size:14px;gap:5px;letter-spacing:.4px}.brand small{font-size:9px}.brand-mark{width:32px;height:32px;font-size:20px}.role-badge{font-size:8px;padding:2px 4px}.header-right{gap:4px}.header-right button{padding:7px}main{padding:12px 10px 6px}.workspace h1{font-size:17px}.workspace select{max-width:145px}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.summary-card{padding:9px 7px;border-radius:9px}.summary-card strong{font-size:21px}.summary-card svg{display:none}.summary-card small,.summary-card span{font-size:8px}.filters{padding:10px}.filter-row select{min-width:90px}.designation-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.app-nav{position:fixed;bottom:0;left:0;right:0;z-index:40;border-radius:0;margin:0;display:flex;justify-content:space-around;flex-wrap:nowrap;padding:5px 3px calc(5px + env(safe-area-inset-bottom));min-height:58px;background:var(--card);box-shadow:0 -2px 10px #061a351a}.app-nav button{display:flex;flex:1;flex-direction:column;font-size:9px;padding:4px 2px;gap:4px}.app-nav .selected{color:var(--accent)!important;background:transparent!important}.app{padding-bottom:calc(62px + env(safe-area-inset-bottom))}.panel{padding:15px}.contact-actions>span{font-size:12px}.contact-actions button{padding:7px 10px}}@media(max-width:360px){.role-badge{display:none}.contact-actions button{padding:7px;font-size:10px}.header-right button{padding:5px}}
