
#portal{--p-bg:light-dark(#f5f6f2,#151b18);--p-paper:light-dark(#fff,#202823);--p-text:light-dark(#172c23,#eaf2ed);--p-dim:light-dark(#58675e,#aebeb3);--p-line:light-dark(#dce4dc,#3b4940);--p-green:light-dark(#234c39,#b4dfbf);--p-on:light-dark(#fff,#18291d);--p-soft:light-dark(#e9f1e8,#2c4031);--p-amber:light-dark(#795414,#e8c487);--p-warm:light-dark(#faf0dc,#403521);font:14px/1.5 system-ui,sans-serif;color:var(--p-text);background:var(--p-bg);border-radius:14px;color-scheme:light dark}
#portal *{box-sizing:border-box}#portal button,#portal select,#portal input{font:inherit}#portal button,#portal select{color:var(--p-text)}#portal button{background:var(--p-paper);border:1px solid var(--p-line);border-radius:7px;padding:9px 13px;text-align:left}#portal button.primary{background:var(--p-green);color:var(--p-on);border-color:var(--p-green)}#portal button:disabled{opacity:.5;cursor:default}#portal button:hover:enabled{filter:brightness(.96)}#portal select{background:var(--p-paper);border:1px solid var(--p-line);border-radius:7px;padding:8px;max-width:100%}#portal h1{font-size:27px;font-weight:600;line-height:1.2;margin:0 0 9px}#portal h2{font-size:19px;font-weight:600;margin:0 0 7px}#portal h3{font-size:15px;font-weight:600;margin:0 0 5px}#portal p{margin:0 0 12px}#portal .muted{color:var(--p-dim)}#portal .small{font-size:12px}#portal .top{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 24px;background:var(--p-paper);border-bottom:1px solid var(--p-line);flex-wrap:wrap}#portal .brand{display:flex;align-items:center;gap:11px;font-weight:650;font-size:16px}#portal .monogram{background:var(--p-green);color:var(--p-on);padding:7px 8px;border-radius:7px;font-size:13px}#portal .demo{padding:8px 24px;background:var(--p-warm);color:var(--p-amber);font-size:12px}#portal .shell{display:grid;grid-template-columns:180px minmax(0,1fr)}#portal aside{padding:22px 14px;background:var(--p-paper);border-right:1px solid var(--p-line)}#portal .aside-label{text-transform:uppercase;letter-spacing:.09em;font-size:11px;color:var(--p-dim);padding:0 9px;margin:0 0 10px}#portal .nav{width:100%;border:0;background:transparent;margin-bottom:5px;color:var(--p-dim)}#portal .nav.active{background:var(--p-soft);color:var(--p-text);font-weight:600}#portal .side-foot{margin:32px 9px 0;font-size:12px;color:var(--p-dim)}#portal main{padding:28px;min-width:0}#portal .row{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}#portal .start{align-items:flex-start}#portal .gap{margin-top:22px}#portal .tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}#portal .panel{background:var(--p-paper);border:1px solid var(--p-line);border-radius:10px;padding:20px}#portal .site{display:flex;flex-direction:column;align-items:stretch;gap:13px;padding:20px}#portal .site .row{gap:6px}#portal .site h2{margin:0}#portal .pill{display:inline-block;border-radius:20px;background:var(--p-soft);color:var(--p-green);padding:3px 9px;font-size:12px;font-weight:500}#portal .pill.warn{background:var(--p-warm);color:var(--p-amber)}#portal .line{border-top:1px solid var(--p-line);padding-top:13px}#portal .tabs{display:flex;gap:5px;border-bottom:1px solid var(--p-line);margin:23px 0 22px;flex-wrap:wrap}#portal .tabs button{border:0;border-radius:0;background:transparent;color:var(--p-dim);padding:12px 10px;border-bottom:2px solid transparent}#portal .tabs button.active{color:var(--p-green);border-bottom-color:var(--p-green);font-weight:600}#portal .statline{display:flex;gap:25px;flex-wrap:wrap;margin:18px 0}#portal .statline strong{font-size:24px;display:block;font-weight:600;font-variant-numeric:tabular-nums}#portal .statline span{font-size:12px;color:var(--p-dim)}#portal .tablewrap{overflow-x:auto}#portal table{width:100%;border-collapse:collapse;font-size:13px}#portal th{font-size:11px;letter-spacing:.035em;text-transform:uppercase;color:var(--p-dim);font-weight:500;text-align:left}#portal th,#portal td{padding:13px 9px;border-bottom:1px solid var(--p-line);vertical-align:top}#portal td.num{text-align:right;font-variant-numeric:tabular-nums}#portal td button{padding:5px 8px;white-space:nowrap;font-size:12px}#portal .notice{border-left:3px solid var(--p-green);background:var(--p-soft);padding:12px 15px;border-radius:0 7px 7px 0;margin:16px 0}#portal .notice.warn{background:var(--p-warm);border-color:var(--p-amber);color:var(--p-amber)}#portal .back{background:transparent;border:0;padding:0;color:var(--p-dim);margin-bottom:15px}#portal .steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:20px}#portal .step{border-top:2px solid var(--p-line);padding-top:12px}#portal .step strong{display:block;margin-bottom:5px}#portal .job{padding:17px 0;border-bottom:1px solid var(--p-line)}#portal .track{height:6px;background:var(--p-line);border-radius:5px;margin-top:14px;overflow:hidden}#portal .fill{height:100%;background:var(--p-green)}#portal .detail{background:var(--p-paper);border:1px solid var(--p-green);border-radius:10px;padding:22px;margin:17px 0}#portal .detail dl{display:grid;grid-template-columns:120px minmax(0,1fr);gap:10px;margin-bottom:0}#portal dt{color:var(--p-dim)}#portal dd{margin:0}#portal .empty{padding:28px 0;color:var(--p-dim)}#portal a{color:var(--p-green);overflow-wrap:anywhere}#portal .sitelink{overflow-wrap:anywhere}#portal details{margin-top:16px}#portal summary{color:var(--p-dim)}#portal .toast{margin-top:14px;color:var(--p-green);font-weight:500}#portal .two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}#portal .kicker{text-transform:uppercase;letter-spacing:.09em;font-size:11px;color:var(--p-dim);margin-bottom:9px}
@media(max-width:760px){#portal .shell{grid-template-columns:1fr}#portal aside{display:flex;gap:6px;flex-wrap:wrap;padding:10px 16px;border-right:0;border-bottom:1px solid var(--p-line)}#portal .aside-label,#portal .side-foot{display:none}#portal .nav{width:auto;margin:0}#portal main{padding:21px 17px}#portal .tiles,#portal .two{grid-template-columns:1fr}#portal .steps{grid-template-columns:1fr}#portal .top{padding:15px 17px}#portal .demo{padding:8px 17px}#portal h1{font-size:24px}#portal .detail dl{grid-template-columns:1fr;gap:5px}#portal dd{margin-bottom:9px}}
@media(pointer:coarse){#portal button,#portal select{min-height:44px}}

body{margin:0;background:#f5f6f2;font-family:system-ui,sans-serif}#portal{border-radius:0;min-height:100vh}#portal .top{position:relative}#portal label{display:block}#portal input,#portal textarea{font:inherit;max-width:100%;width:100%;padding:9px 11px;border:1px solid var(--p-line);border-radius:7px;background:var(--p-paper);color:var(--p-text)}#portal input[type=checkbox]{width:auto}#portal input[type=number]{max-width:130px}#portal .fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}#portal .field{display:grid;gap:6px}#portal .primary{font-weight:600}#portal .toast{background:var(--p-paper);padding:13px 24px;border-top:1px solid var(--p-line);margin:0}#portal .alert{color:var(--p-amber);background:var(--p-warm);padding:12px 16px;margin-bottom:16px;border-radius:7px}#portal .paginator{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;flex-wrap:wrap}#portal .formstack{display:grid;gap:15px}#portal .danger{color:var(--p-amber)}#portal .inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}#portal .smallbutton{padding:5px 8px;font-size:12px}#portal .wrap{overflow-wrap:anywhere}#portal [hidden]{display:none!important}#portal .tablewrap input{min-width:70px}#portal .busy{color:var(--p-dim)}#portal .field small{font-size:12px;color:var(--p-dim)}#portal .stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}#portal .stats strong{font-size:25px;display:block}#portal .stats p{color:var(--p-dim);font-size:12px;margin-bottom:0}#portal .nav{display:block;text-decoration:none}#portal .side-foot button{margin-top:12px;width:100%}#portal .print-only{display:none}@media(max-width:650px){#portal .fields,#portal .stats{grid-template-columns:1fr}}@media print{#portal aside,#portal .top,#portal button,#portal form,#portal .tabs{display:none}#portal .shell{display:block}#portal main{padding:0}#portal .panel{break-inside:avoid}}
body:not(#portal){color:#172c23}body:not(#portal)>main{max-width:460px;margin:10vh auto;padding:28px}body:not(#portal)>main h1{font-size:32px}body:not(#portal)>main .panel{background:white;border:1px solid #dce4dc;border-radius:10px;padding:24px;margin:20px 0}body:not(#portal)>main input{display:block;width:100%;box-sizing:border-box;padding:10px;margin:6px 0 16px;border:1px solid #cad6cc;border-radius:6px;font:inherit}body:not(#portal)>main button{padding:10px 20px;border:0;border-radius:6px;background:#234c39;color:white;font:inherit}body:not(#portal)>main p{line-height:1.6}body:not(#portal)>main #error{color:#923820}
/* Standalone pages scroll with the document; only tables have local horizontal scrolling. */
html{min-height:100%;scrollbar-gutter:stable}
body#portal{height:auto;min-height:100vh;min-height:100dvh;width:auto;max-width:100%;overflow:visible;overflow-wrap:anywhere}
#portal .shell,#portal main,#portal aside,#portal #content,#portal .panel,#portal .detail,#portal .site,#portal .field,#portal .formstack,#portal .tablewrap{min-width:0;max-width:100%}
#portal .row>*,#portal .inline>*,#portal .top>*{min-width:0;max-width:100%}
#portal select{min-width:0;width:auto;max-width:100%;text-overflow:ellipsis}
#portal .field select{width:100%}
#portal button,#portal select{cursor:pointer}
#portal button:disabled{cursor:default}
#portal input,#portal select,#portal textarea{font-size:16px}
#portal .tablewrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
#portal .tablewrap:focus-visible{outline:2px solid var(--p-green);outline-offset:3px}
#portal .side-foot{overflow-wrap:anywhere}
#portal summary{cursor:pointer}
@media(max-width:1000px){#portal .fields,#portal .two{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){#portal .shell,#portal .tiles,#portal .steps,#portal .detail dl{grid-template-columns:minmax(0,1fr)}#portal aside{align-items:stretch}#portal .nav{flex:1 1 140px}#portal .top>.inline{width:100%;justify-content:space-between}#portal .panel,#portal .detail{padding:17px}}
@media(max-width:480px){#portal main{padding:20px 14px}#portal .top{padding:14px}#portal .demo{padding:9px 14px}#portal .row>.primary{width:100%;text-align:center}#portal .tabs{gap:0}#portal .tabs button{flex:1 1 45%;white-space:normal}#portal .statline{gap:16px}#portal .panel,#portal .detail{padding:14px}#portal .inline>input{flex:1 1 100%}}
@media print{html{scrollbar-gutter:auto}body#portal{min-height:0;overflow:visible}#portal .tablewrap{overflow:visible}#portal #message,#portal .demo{display:none}}
