:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#203049;background:#f4f7fb;font-size:15px;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.wrap{max-width:1180px;margin:auto;padding:0 22px 60px}a{color:#155fc2;text-decoration:none}a:hover{text-decoration:underline}.top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:0 0 28px;padding:24px 0;border-bottom:1px solid #dbe3ed}.top>div{display:grid;gap:4px}.top small{font-size:12px;color:#60718a}.brand{font-size:22px;font-weight:900;letter-spacing:1px;color:#153357}.brand span{color:#db3043}.chip{font-weight:800;background:#fff1da;border-radius:50px;padding:9px 13px;font-size:12px;color:#824b16}h1{font-size:clamp(25px,4vw,38px);letter-spacing:-.035em;margin:0 0 10px}h2{font-size:19px;margin:0 0 13px}.intro{max-width:850px;line-height:1.55;margin:0 0 25px;color:#576d86}.panel{background:white;border:1px solid #e2e8f0;border-radius:16px;padding:24px;margin:20px 0;box-shadow:0 6px 25px rgba(26,49,82,.035)}.login-panel,.install{max-width:620px;margin:45px auto;padding:32px}.login-panel form{display:grid;gap:15px}.nav{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 24px}.nav a,.quiet{background:#e9eff8;border:0;border-radius:9px;padding:9px 12px;color:#31425a;font-size:13px}.nav form{margin-left:auto}.nav button{cursor:pointer}button{font:inherit;color:white;background:#1b5ea3;border:0;border-radius:10px;padding:11px 17px;cursor:pointer;font-weight:700}button:hover{filter:brightness(.94)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #eab35e;outline-offset:2px}.primary{background:#0d7467}.quiet,.tiny{color:#30435d;background:#eff3f8}.tiny{font-size:11px;padding:7px 9px;margin-top:10px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin-bottom:10px}.section-head h2{margin:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.responder-form{display:grid;gap:22px}label{display:grid;gap:7px;font-size:13px;font-weight:700;color:#3b4c63}input,select{width:100%;min-width:0;padding:12px;border:1px solid #d4dde7;border-radius:9px;background:#fbfdff;font:inherit;color:#203049}input[type="checkbox"]{width:17px;height:17px;accent-color:#188171}.checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;border-top:1px solid #e5ebf3;padding-top:18px}.checks label{display:flex;align-items:center;gap:8px;font-weight:500}.hint{color:#5f7289;font-size:13px;line-height:1.5}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metrics article{padding:20px;border-radius:14px;background:#fff;border:1px solid #e1e8f0;display:grid;gap:7px}.metrics strong{font-size:30px}.metrics span{color:#65748b;font-size:12px}.scroll-table{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:700px}th{text-align:left;color:#61728a;font-weight:650;font-size:12px;background:#f4f7fb}th,td{padding:12px 10px;border-bottom:1px solid #edf0f4;text-align:left;vertical-align:top;font-size:13px;overflow-wrap:anywhere}td small{display:block;color:#61728a;margin:5px 0}td b{display:block}.status{display:inline-flex;background:#f2f4f8;color:#526179;border-radius:25px;padding:5px 8px;font-size:12px;font-weight:700}.status.active{background:#e1f8ef;color:#08775c}.success,.error{padding:14px 16px;border-radius:10px;font-weight:600}.success{background:#e8f8f0;color:#096246}.error{background:#fff1ee;color:#a92c2c}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:16px}.card-grid .panel{margin:0}.info{border-left:4px solid #edb75f}code{background:#f0f3f9;padding:2px 5px;border-radius:3px}@media(max-width:690px){.wrap{padding:0 13px 30px}.top{padding:17px 0}.panel{padding:18px}.form-grid,.checks{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.nav{gap:7px}.nav a{font-size:12px}.nav form{margin-left:0}}

/* ADDIS_SOS_MOBILE_FIRST_V1_START */

/* Base responsive safety and accessibility. No network or JavaScript dependencies. */
*, *::before, *::after {box-sizing:border-box}
html {-webkit-text-size-adjust:100%;text-size-adjust:100%}
body {min-width:0}
:where(img,video,canvas,svg,iframe) {max-width:100%}
:where(audio) {max-width:100%}
:where(pre,code) {overflow-wrap:anywhere;white-space:pre-wrap}
:where(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea) {
  max-width:100%;min-width:0;font-size:16px;
}
:where(button,a,input,select,textarea) {touch-action:manipulation}
:where(button,a,input,select,textarea):focus-visible {outline:3px solid #e9a943;outline-offset:3px}
@media (pointer:coarse) {
 :where(button,input[type=submit],input[type=button],select) {min-height:44px}
}

/* Administration, official contacts, SOS case lists and test-message reviews. */
.wrap,.panel,.login-panel,.install,main,section,.form-grid,.metrics,.nav,.scroll-table{min-width:0}
:where(.panel,.wrap,main) :where(p,dd,td,a,small){overflow-wrap:anywhere}
.scroll-table {max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.scroll-table table {min-width:670px}
/* Legacy test-messages.php renders a bare table inside main.panel; scroll ONLY that table. */
main.panel > table {display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
:where(.panel,.card-grid,.metrics) audio{max-width:100%;width:100%}
@media(max-width:760px){
 .wrap{width:100%;padding:0 13px 26px}
 .top{flex-wrap:wrap;align-items:flex-start;gap:10px;padding:15px 0;margin-bottom:16px}
 .top > *{min-width:0}
 .panel{padding:17px 14px;margin:14px 0;border-radius:14px}
 .login-panel,.install{max-width:100%;padding:20px 16px;margin:20px 0}
 .nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .nav a,.nav button,.nav .quiet{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px;text-align:center;white-space:normal;overflow-wrap:anywhere}
 .nav form{margin:0;min-width:0}
 .nav form button{width:100%}
 .form-grid,.checks{grid-template-columns:minmax(0,1fr);gap:13px}
 .metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .metrics article{min-width:0;padding:13px}
 .metrics strong{font-size:clamp(21px,5.5vw,28px)}
 .section-head{align-items:stretch;gap:12px}
 .section-head button{min-height:44px}
 .card-grid{grid-template-columns:minmax(0,1fr);gap:12px}
 :where(.panel,.section-head) button{min-height:44px}
 .scroll-table th,.scroll-table td{padding:10px 9px}
 main.panel > table {min-width:0;max-width:100%}
 main.panel > table th,main.panel > table td{min-width:105px}
}
@media(max-width:390px){
 .nav{grid-template-columns:1fr}
 .metrics{grid-template-columns:1fr 1fr}
 .panel{padding:14px 12px}
}

/* ADDIS_SOS_MOBILE_FIRST_V1_END */
