:root{color-scheme:light;--blue:#5b9bd8;--blue-d:#4a89c6;--side:#66a0de;--side-d:#5588c4;--link:#3f86d0;--ink:#333;--mute:#777;--line:#e3e6ea;--band:#f4f5f7;--ok:#4cae4c;--bad:#d9534f;--warn:#b07d2a;--warn-bg:#fcf6e6;--info-bg:#e8f1fb}
*{box-sizing:border-box}html,body{margin:0;-webkit-text-size-adjust:100%}img,svg{max-width:100%}body{background:#fff;color:var(--ink);font:15px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif}
h1{font-size:32px;font-weight:400;margin:0 0 18px;line-height:1.2}h2{font-size:22px;font-weight:400;margin:0 0 14px}h3{font-size:16px;font-weight:600;margin:22px 0 8px}p{margin:0 0 12px}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}.boot{padding:60px;text-align:center;color:var(--mute)}
.mute{color:var(--mute)}.small{font-size:13px}.right{margin-left:auto}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.row.sp{justify-content:space-between}.grow{flex:1}
/* top bar */
.nav{display:flex;align-items:stretch;height:66px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:20;padding-left:18px}
.brand{display:flex;align-items:center;gap:9px;white-space:nowrap;flex:none;padding-right:26px;color:#1d3557;font-size:23px;font-weight:600;letter-spacing:-.3px;text-decoration:none!important}.brand svg{width:34px;height:34px}.brand small{display:block;font-size:10px;letter-spacing:.5px;font-weight:500;color:var(--mute);margin-top:-4px}
.tabs{display:flex;align-items:stretch;flex:1;overflow-x:auto}.tab{display:flex;align-items:center;padding:0 20px;color:#666;font-size:16px;white-space:nowrap;text-decoration:none!important;position:relative}.tab:hover{background:var(--band)}.tab.on{background:var(--band);color:#222}.tab .badge{background:var(--bad);color:#fff;border-radius:99px;font-size:11px;padding:0 7px;margin-left:6px}
.acct{position:relative;display:flex;align-items:center;padding:0 22px}.acct>button{background:none;border:0;cursor:pointer;color:#777;padding:6px}.acct>button svg{width:30px;height:30px}
.menu{position:absolute;right:14px;top:62px;width:290px;background:#fff;border:1px solid var(--line);box-shadow:0 4px 14px rgba(0,0,0,.14);z-index:30}.menu .who{padding:14px 18px;border-bottom:1px solid var(--line)}.menu .who b{display:block;font-size:17px}.menu .who span{display:block;font-size:13px;color:var(--mute)}.menu a,.menu button.item{display:block;width:100%;text-align:left;border:0;background:none;padding:10px 18px;color:#666;font:inherit;cursor:pointer;text-decoration:none!important}.menu a:hover,.menu button.item:hover{background:var(--band)}
/* page frames */
.layout{display:flex;min-height:calc(100vh - 66px - 48px)}.side{width:300px;flex:none;background:var(--side);color:#fff;padding:0 0 30px}.side .who2{padding:20px 24px 18px;border-bottom:1px solid rgba(255,255,255,.22);min-height:72px}.side .who2 b{display:block;font-size:17px;font-weight:500}.side .who2 span{font-size:14px;opacity:.9}
.side .group{margin:16px 14px 0}.side .sl{display:flex;align-items:center;gap:8px;padding:13px 24px;color:#fff;font-size:17px;border-radius:5px;cursor:pointer;text-decoration:none!important}.side .sl:hover{background:var(--side-d)}.side .sl.on{background:#fff;color:var(--link)}.side .sl.sub{padding:5px 24px 5px 24px;font-size:16px;color:#e8f1fc}.side .sl.sub.on{background:none;color:#fff;font-weight:700}.side .box{background:#fff;border-radius:5px;padding:6px 0}.side .box .sl{color:var(--link)}.side .box .sl:hover{background:var(--band)}.side .box .sl.sub{color:#6aa3df}.side .box .sl.sub.on{color:var(--link);font-weight:700}
.content{flex:1;padding:26px 44px 70px;min-width:0}.full{padding:0;flex:1}.pagehead{background:var(--band);border-bottom:1px solid var(--line);padding:18px 36px 12px}.pagehead h1{margin:0;font-size:34px}.pagehead .row{margin-top:2px}.page{padding:26px 36px 70px}
.foot{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--band);border-top:1px solid var(--line);padding:12px 18px;font-size:13px;color:#555;flex-wrap:wrap}.foot a{color:#555;text-decoration:underline;margin-left:26px}
.helpbtn{position:fixed;right:20px;bottom:14px;background:#1f3a63;color:#fff;border:0;border-radius:22px;padding:11px 20px;font-weight:600;cursor:pointer;z-index:15;font-size:15px}
/* buttons + forms */
button,.btn{font:inherit;white-space:nowrap;touch-action:manipulation;border-radius:3px;border:1px solid #cbd3dc;background:#fff;color:var(--link);padding:8px 16px;cursor:pointer;display:inline-block;text-decoration:none!important}button:hover:not(:disabled),.btn:hover{border-color:var(--blue)}button:disabled{opacity:.5;cursor:not-allowed}
button.pri,.btn.pri{background:var(--blue);border-color:var(--blue);color:#fff}button.pri:hover:not(:disabled){background:var(--blue-d);border-color:var(--blue-d)}button.danger{color:var(--bad);border-color:#e5b6b4}button.sm{padding:4px 11px;font-size:13px}button.link{border:0;background:none;padding:0;color:var(--link)}
:focus-visible{outline:2px solid #1f6fd1;outline-offset:2px}label{display:block;font-size:13px;color:var(--mute);margin:12px 0 4px}input,select,textarea{font:inherit;width:100%;padding:9px 11px;border:1px solid #cdd3da;border-radius:3px;background:#fff;color:var(--ink)}input[type=checkbox],input[type=radio]{width:auto}textarea{min-height:84px;resize:vertical}
.form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:2px 22px}.form .wide{grid-column:1/-1}.err{color:var(--bad);font-size:13px;min-height:18px;margin-top:6px}
.filters{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap;margin:6px 0 18px}.filters>div{min-width:170px}.filters label{margin:0 0 3px}.seg{display:inline-flex}.seg button{border-radius:0;margin-left:-1px}.seg button:first-child{border-radius:3px 0 0 3px}.seg button:last-child{border-radius:0 3px 3px 0}.seg button.on{background:var(--blue);color:#fff;border-color:var(--blue)}
/* tables: header band + banded rows */
table{width:100%;border-collapse:collapse}th{background:var(--band);color:#666;text-align:left;font-weight:500;font-size:14px;padding:12px 18px}td{padding:13px 18px;border-bottom:1px solid var(--line);vertical-align:top}tbody tr:nth-child(even) td{background:#fafbfc}tr.link{cursor:pointer}tr.link:hover td{background:var(--info-bg)}.empty{text-align:center;color:#888;font-size:22px;padding:70px 10px}.empty.sm{font-size:18px;padding:26px 10px}
.tag{display:inline-block;border:1px solid #bbb;border-radius:3px;padding:1px 9px;font-size:13px;color:#555;background:#fff}.tag.ok{border-color:var(--ok);color:var(--ok)}.tag.bad{border-color:var(--bad);color:var(--bad)}.tag.warn{border-color:#d9a441;color:var(--warn)}.tag.dark{background:#6b6b6b;border-color:#6b6b6b;color:#fff;font-weight:600}.tag.blue{border-color:var(--blue);color:var(--link)}
.tag.fill-bad{background:#fff;border:1px solid var(--bad);color:var(--bad);font-weight:600}
/* document cards (colored edge shows status) */
.doc{border:1px dashed #d8dce1;border-left:5px solid #ccc;padding:16px 20px;margin-bottom:16px;display:flex;gap:18px;align-items:flex-start}.doc.ok{border-left-color:var(--ok)}.doc.bad{border-left-color:var(--bad)}.doc.warn{border-left-color:#e0a63a}.doc .dt{font-size:17px;margin-bottom:4px}.doc .dd{color:#666;margin-bottom:10px}.doc .meta{display:flex;gap:18px;align-items:center;flex-wrap:wrap;font-size:14px;color:#666}.doc .meta button.link{display:inline-flex;gap:6px;align-items:center}
.steps{display:flex;gap:0;margin:8px 0 18px;border:1px solid var(--line);border-radius:3px;overflow:hidden;flex-wrap:wrap}.steps span{flex:1;min-width:110px;text-align:center;padding:9px 6px;font-size:13px;background:#fff;color:#888;border-right:1px solid var(--line)}.steps span:last-child{border-right:0}.steps .done{background:#eaf6ea;color:#3c8a3c}.steps .now{background:var(--blue);color:#fff;font-weight:600}.steps .stop{background:#fbe9e8;color:var(--bad);font-weight:600}
.stat{display:inline-block;min-width:150px;padding:14px 18px;border:1px solid var(--line);margin:0 14px 14px 0;vertical-align:top;background:#fff}.stat b{display:block;font-size:30px;font-weight:300;line-height:1.1}.stat span{color:var(--mute);font-size:13px}.stat.bad b{color:var(--bad)}
.note{background:var(--band);border-left:3px solid var(--blue);padding:9px 14px;margin:9px 0}.alert{padding:12px 18px;margin:12px 0;background:var(--warn-bg);color:var(--warn);border:1px solid #f0e2bd}.alert.bad{background:#fbe9e8;color:var(--bad);border-color:#f0c9c7}.alert.ok{background:#eaf6ea;color:#3c8a3c;border-color:#cfe8cf}
.rows .rw{display:grid;grid-template-columns:240px 1fr;gap:6px 20px;padding:12px 18px}.rows .rw:nth-child(odd){background:var(--band)}.rows .rw>span:first-child{color:#777;text-align:right}
.check{display:flex;gap:12px;align-items:flex-start;padding:11px 0;border-bottom:1px solid var(--line)}.check:last-child{border:0}.dot{width:22px;height:22px;border-radius:50%;flex:none;margin-top:1px;display:grid;place-items:center;font-size:13px;font-weight:700;background:#fdf0d0;color:var(--warn)}.dot.ok{background:#dcf0dc;color:#3c8a3c}.dot.bad{background:#f8dcda;color:var(--bad)}.dot.gray{background:var(--band);color:#999}
.tabsb{display:flex;gap:2px;border-bottom:1px solid var(--line);margin:0 0 20px;flex-wrap:wrap}.tabsb button{border:0;border-bottom:3px solid transparent;border-radius:0;background:none;padding:10px 16px;color:#666}.tabsb button.on{border-bottom-color:var(--blue);color:var(--link);font-weight:600}
.entry{border:1px solid var(--line);padding:12px 16px;margin:10px 0;display:flex;gap:14px;justify-content:space-between;align-items:flex-start}.entry dl{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:2px 20px;flex:1}.entry dt{font-size:11px;color:var(--mute);text-transform:uppercase;letter-spacing:.4px}.entry dd{margin:0 0 5px;word-break:break-word}
.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:30px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,310px),1fr));gap:26px;max-width:1200px;margin:0 auto}.tile{border:1px solid #f0d9cc;background:#fdf5f0;box-shadow:0 1px 3px rgba(0,0,0,.12);display:flex;flex-direction:column}.tile .bar{background:#6aa3df;color:#fff;text-align:center;padding:5px;font-size:15px}.tile .logo{background:#fff;padding:24px;text-align:center;min-height:130px;display:grid;place-items:center;font-size:24px;font-weight:700;color:#1d3557}.tile .body{padding:20px 22px;flex:1;font-size:16px;line-height:1.55}.tile .act{padding:0 22px 20px}
.center{text-align:center;max-width:620px;margin:50px auto}.circle{width:150px;height:150px;border-radius:50%;background:var(--band);display:grid;place-items:center;margin:0 auto 18px}.circle svg{width:70px;height:70px;fill:#5b9bd8}
.modalbg{position:fixed;inset:0;background:rgba(40,45,50,.55);display:grid;place-items:start center;padding-top:9vh;z-index:40;overflow-y:auto}.modal{background:#fff;width:min(780px,94vw);box-shadow:0 8px 30px rgba(0,0,0,.3);margin-bottom:40px}.modal header{display:flex;justify-content:space-between;align-items:center;padding:20px 28px;border-bottom:1px solid var(--line)}.modal header h2{margin:0;font-size:26px}.modal .mb{padding:22px 28px}.modal footer{padding:14px 28px 22px;display:flex;gap:10px;justify-content:flex-end}.modal .x{border:0;font-size:22px;color:#999;padding:0 6px}
.auth{max-width:440px;margin:7vh auto;padding:0 18px}.auth .box{border:1px solid var(--line);padding:26px;box-shadow:0 2px 8px rgba(0,0,0,.06)}
#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#333;color:#fff;padding:11px 20px;border-radius:3px;opacity:0;transition:.2s;pointer-events:none;max-width:90vw;z-index:60}#toast.on{opacity:1}
@media (max-width:900px){.layout{flex-direction:column}.side{width:auto}.content,.page{padding:20px 16px 60px}.pagehead{padding:14px 16px 10px}.rows .rw{grid-template-columns:1fr}.rows .rw>span:first-child{text-align:left}.tab{padding:0 12px;font-size:15px}.doc{flex-direction:column}}

.supportbar{background:#fff3cd;color:#664d03;border-bottom:1px solid #ffe08a;padding:8px 18px;display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap;font-size:14px;position:sticky;top:0;z-index:25}
.hero{text-align:center;padding:70px 22px 60px;max-width:900px;margin:0 auto}.hero h1{font-size:46px;font-weight:300;line-height:1.15;margin-bottom:18px}.hero .lead{font-size:19px;color:#555;max-width:720px;margin:0 auto 28px}.row.center{justify-content:center}
.band{background:var(--band);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:46px 22px}.wrap{max-width:1050px;margin:0 auto;padding:40px 22px}.band .wrap{padding:0}.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:34px}.feat h3{font-size:20px;font-weight:600;margin-top:0}.feat ul{padding-left:20px;margin:0}.feat li{margin:9px 0;color:#444}
.steps4{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:24px;margin-top:20px}.stepc{border:1px solid var(--line);padding:22px;background:#fff}.stepc .num{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--blue);color:#fff;font-weight:700;margin-bottom:10px}.stepc b{display:block;font-size:17px;margin-bottom:4px}
.acct .gap{width:10px}.nav .acct{gap:0}

/* ---------- phones and small tablets ---------- */
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
body{padding-bottom:env(safe-area-inset-bottom)}
@media (max-width:760px){
  body{font-size:16px}
  h1{font-size:26px}.pagehead h1{font-size:26px;overflow-wrap:anywhere}h2{font-size:20px}
  /* top bar: logo + account on the first row, tabs scroll on the second */
  .nav{flex-wrap:wrap;height:auto;padding:0;position:sticky;top:0}
  .brand{padding:10px 12px;font-size:20px;order:1}.brand svg{width:30px;height:30px}.brand small{display:none}
  .acct{order:2;margin-left:auto;padding:0 10px;gap:8px}.acct>button{padding:8px}.nav .acct .btn{padding:9px 14px;font-size:15px}.acct .gap{width:4px}
  .tabs{order:3;flex:0 0 100%;border-top:1px solid var(--line);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}
  .tab{padding:0 15px;min-height:46px;font-size:15px;flex:none}
  .menu{right:6px;top:100%;width:min(300px,calc(100vw - 12px))}
  .supportbar{padding:8px 12px;font-size:13px;justify-content:space-between}
  /* page frames */
  .pagehead{padding:14px 14px 10px}.pagehead .row.sp{align-items:flex-start}.pagehead .row{gap:8px}.page,.content{padding:16px 14px 90px}
  .layout{flex-direction:column;min-height:0}
  .side{width:auto;padding:0}.side .who2{padding:12px 14px 8px;min-height:0;border:0}.side .who2 span{font-size:13px}
  .side .group{margin:0;padding:6px 10px 12px;display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.side .group::-webkit-scrollbar{display:none}
  .side .box{display:flex;gap:6px;background:none;padding:0}.side .sl{padding:9px 14px;font-size:15px;white-space:nowrap;flex:none;background:rgba(255,255,255,.18);border-radius:99px}.side .sl.on{background:#fff}.side .box .sl,.side .box .sl.sub,.side .sl.sub{color:#fff;font-size:15px;padding:9px 14px;border-radius:99px;background:rgba(255,255,255,.18)}.side .box .sl.on,.side .box .sl.sub.on,.side .sl.sub.on{background:#fff;color:var(--link);font-weight:600}.side .box .sl:hover{background:rgba(255,255,255,.28)}.side .box .sl.on:hover{background:#fff}.side .box>.sl:first-child{display:none}
  /* landing */
  .hero{padding:34px 16px 34px}.hero h1{font-size:clamp(30px,9vw,40px);line-height:1.15}.hero .lead{font-size:17px}.hero .row.center{flex-direction:column;align-items:stretch}.hero .btn{text-align:center;padding:14px 16px}
  .band{padding:30px 16px}.wrap{padding:30px 16px}.feat h3{font-size:18px}.stepc{padding:16px}
  .auth{margin:3vh auto;padding:0 14px}.auth .box{padding:18px}
  /* forms + controls: 16px stops iOS zooming on focus, 44px is a comfortable tap target */
  input,select,textarea{font-size:16px;min-height:44px}textarea{min-height:96px}input[type=checkbox],input[type=radio]{min-height:0;width:20px;height:20px}
  button,.btn{min-height:44px;padding:10px 16px}button.sm,.btn.sm{min-height:38px;padding:6px 12px}button.link{min-height:0}
  .form{grid-template-columns:1fr}.filters{gap:10px}.filters>div{min-width:0;flex:1 1 100%}
  .row{gap:8px}.row>.btn,.row>button{flex:0 1 auto}
  .stat{min-width:0;flex:1 1 calc(50% - 10px);margin:0 8px 10px 0;padding:12px}.stat b{font-size:26px}
  .steps span{min-width:calc(50% - 1px);border-bottom:1px solid var(--line)}
  .rows .rw{grid-template-columns:1fr;padding:10px 12px}.rows .rw>span:first-child{text-align:left;font-size:12px;text-transform:uppercase}
  .entry{flex-direction:column}.doc{flex-direction:column;padding:14px}.doc>button{width:100%}.doc .meta{gap:12px}
  .split{gap:18px}.tile .logo{min-height:90px;font-size:20px}.cards{gap:16px}
  .tabsb{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.tabsb::-webkit-scrollbar{display:none}.tabsb button{flex:none;min-height:44px}
  .empty{font-size:18px;padding:36px 8px}.center{margin:30px auto;padding:0 14px}.center h1{font-size:26px}
  .foot{padding:12px 14px 74px;font-size:12px}.foot a{margin-left:0}
  .helpbtn{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));padding:9px 16px;font-size:14px;min-height:0;opacity:.95}
  #toast{bottom:calc(70px + env(safe-area-inset-bottom));width:calc(100% - 28px);text-align:center}
  /* dialogs become near-full-screen sheets */
  .modalbg{padding-top:0;place-items:end center;align-items:end}.modal{width:100%;max-height:92vh;overflow-y:auto;margin:0;border-radius:14px 14px 0 0}.modal header{padding:14px 16px;position:sticky;top:0;background:#fff;z-index:1}.modal header h2{font-size:20px}.modal .mb{padding:14px 16px}.modal footer{padding:10px 16px calc(14px + env(safe-area-inset-bottom));position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line)}.modal footer button{flex:1}
  .modal table{font-size:14px}
  /* tables turn into stacked cards: one card per row, label on the left */
  table.stack,table.stack tbody,table.stack tr,table.stack td{display:block;width:100%}table.stack thead{display:none}
  table.stack tr{border:1px solid var(--line);margin:0 0 12px;background:#fff}table.stack tbody tr:nth-child(even) td{background:#fff}
  table.stack td{padding:9px 12px;border-bottom:1px solid #f0f2f4;display:flex;gap:12px;justify-content:space-between;align-items:flex-start;text-align:right;overflow-wrap:anywhere}table.stack td:last-child{border-bottom:0}
  table.stack td::before{content:attr(data-label);flex:none;max-width:42%;text-align:left;color:var(--mute);font-size:12px;text-transform:uppercase;letter-spacing:.3px;padding-top:2px}table.stack td[data-label=""]::before{display:none}table.stack td[data-label=""]{justify-content:flex-start;text-align:left}
  table.stack td>*{max-width:100%}table.stack td .row{justify-content:flex-end}table.stack td button{white-space:normal}
}
@media (max-width:760px){
  h1,h2,h3,p,td,th,dd,dt,li,label,.mute,.small,.dt,.dd,.note,.alert,.tag,.who b,.who span{overflow-wrap:anywhere;word-break:break-word}
  .row>div,.grow,.pagehead .row.sp>div{min-width:0}.row.sp{flex-wrap:wrap}
  .row select{width:100%;flex:1 1 100%}.pagehead .row.sp .row{width:100%}
  .page>.row.sp>.row,.content>.row.sp>.row{width:100%}.page .row.sp .row select{flex:1 1 100%}
  table:not(.stack){table-layout:fixed}table:not(.stack) td{padding:10px 8px}
}
@media (max-width:380px){.nav .acct .btn{padding:8px 10px;font-size:14px}.brand{font-size:18px}.stat{flex-basis:100%}}

.pk .big{font-size:30px;font-weight:300;margin-bottom:4px}.pk .tile .logo{font-size:26px}.pk .body>div{margin-bottom:4px}

.code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;letter-spacing:.4px;white-space:nowrap;overflow-wrap:normal!important;word-break:keep-all!important}
@media (max-width:1100px) and (min-width:761px){.tab{padding:0 12px;font-size:15px}.brand{padding-right:14px}}

.side .box .sl.head,.side .box .sl.head:hover{background:none;cursor:default;font-weight:600;color:#3d5f8a;pointer-events:none}

.mt{margin-top:8px}
