/* Shared administration layout, based on onboarding. */
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;600;700&family=Karla:wght@400;500;600&display=swap');
[hidden]{display:none!important}
body{font-family:'Karla',Arial,sans-serif;background:#f8f8f8;color:#1a1a1a}
.admin-header{display:flex;align-items:center;gap:16px;flex-wrap:wrap;background:#1a1a1a;color:#fff;padding:16px 32px;position:sticky;top:0;z-index:100;min-width:0}
.admin-header a{margin:0;text-decoration:none}
.admin-brand{display:flex;align-items:center;flex:none}
.admin-brand img{height:28px;width:auto;max-width:100px;object-fit:contain;filter:brightness(0) invert(1)}
.admin-divider{width:1px;height:20px;background:#ffffff26}
.admin-label{font-family:'Outfit',sans-serif;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#ffffff80}
.admin-nav{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto;min-width:0}
.admin-nav a{font-family:'Outfit',sans-serif;font-size:12px;font-weight:600;color:#ffffffad;padding:8px 14px;border-radius:20px;line-height:1.4}
.admin-nav a:hover{color:white;background:#ffffff1a}
.admin-nav a[aria-current=page]{background:#f7941d;color:white}
main{max-width:1280px;margin:36px auto;padding:0 24px 64px}
.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}
.eyebrow{font-family:'Outfit',sans-serif;color:#c36b00;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:600}
.page-heading h1{font-family:'Outfit',sans-serif;font-size:30px;line-height:1.2;margin:8px 0}
.page-heading p{margin:0;max-width:750px;font-size:15px}
main section{border:0;border-radius:14px;padding:28px;box-shadow:0 2px 12px #0000000d;margin:20px 0}
main section h2{font-family:'Outfit',sans-serif;font-size:12px;font-weight:700;color:#c36b00;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid #f0f0f0;padding-bottom:12px;margin:0 0 18px}
main p,dialog p{color:#636466;line-height:1.55}
main button,main .button,dialog button{font-family:'Outfit',sans-serif;font-size:13px;border-radius:8px;background:#f7941d;padding:11px 16px;line-height:1.4}
main .button{flex-shrink:0;color:#fff}
main button:hover,dialog button:hover{filter:brightness(.96)}
button.secondary{background:#f1f2f3;color:#36383a}
main input,main select,dialog input,dialog textarea,dialog select{font-family:'Karla',sans-serif;font-size:15px;border:1.5px solid #e0e0e0;padding:11px 13px;border-radius:8px;max-width:100%;min-width:0}
main input:focus,dialog input:focus,dialog textarea:focus,dialog select:focus{outline:2px solid #f7941d55;border-color:#f7941d}
main label,dialog label{font-family:'Outfit',sans-serif;font-size:11px;font-weight:600;color:#636466;letter-spacing:.05em}
main input[type=checkbox],dialog input[type=checkbox]{width:auto}
main .scroll{margin-top:20px;max-width:100%;overflow-x:auto}
main table{font-size:14px;width:100%;border-spacing:0}
main th{font-family:'Outfit',sans-serif;font-size:11px;letter-spacing:.05em;text-transform:uppercase;background:#fafafa}
main td,main th{padding:15px 12px;vertical-align:middle;border-bottom:1px solid #eee}
main td{overflow-wrap:anywhere;min-width:100px}
.table-actions{min-width:230px;display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.table-actions a{font-size:13px;font-weight:600;color:#ad5d00;white-space:nowrap}
.state-badge{display:inline-block;background:#f2f4f6;color:#475569;border-radius:6px;padding:6px 8px;font-size:12px;line-height:1.4}
dialog{padding:28px;border-radius:14px;box-shadow:0 20px 80px #0003}
.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.dialog-heading h2{font-family:'Outfit',sans-serif;margin:0;font-size:22px}
#routing-form{margin:22px 0;padding:18px;background:#fafafa;border-radius:10px}
#login{max-width:460px;margin:40px auto}
@media(max-width:680px){
 .admin-header{padding:14px 18px;gap:12px;position:relative}
 .admin-nav{margin-left:0;width:100%;gap:5px}
 .admin-nav a{padding:7px 10px;font-size:11px}
 main{margin-top:24px;padding:0 16px 40px}
 .page-heading{align-items:flex-start;flex-direction:column;gap:16px}
 .page-heading h1{font-size:25px}
 main section{padding:20px}
 dialog{padding:20px}
 .grid{grid-template-columns:minmax(0,1fr)}
}
