@font-face{font-family:Archivo Narrow;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ui-f6c1fed6c7d7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Narrow;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ui-d718d173037f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo Narrow;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ui-f6c1fed6c7d7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Narrow;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ui-d718d173037f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo Narrow;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ui-f6c1fed6c7d7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Narrow;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ui-d718d173037f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo Narrow;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ui-f6c1fed6c7d7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Narrow;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ui-d718d173037f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ui-5a183aea8406.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ui-daba0ce5c75f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ui-5a183aea8406.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ui-daba0ce5c75f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ui-5a183aea8406.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ui-daba0ce5c75f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:fairweather;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/fairweather-regular.woff2)format("woff2")}@font-face{font-family:fairweather;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/fairweather-bold.woff2)format("woff2")}:root{--paper:#1b1e1c;--olive:#4c5740;--ink:#eceee7;--line:#3c4239;--muted:#a5ad9a;--green:#a7c593;--red:#ae1428;--sans:"Archivo Narrow","Arial Narrow",sans-serif;--mono:"Roboto Mono",monospace}*{box-sizing:border-box}body{color:var(--ink);background:var(--paper);font:16px/1.5 var(--sans);margin:0}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}img{max-width:100%}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:2px solid #896727}button{color:inherit}h1,h2,h3,h4,p{margin:0}ul,ol{padding-left:22px}small{font-size:11px}.skip{background:var(--paper);z-index:300;padding:10px;position:fixed;top:-70px;left:15px}.skip:focus{top:10px}.site-header{z-index:30;color:#eee;background:#10110e;border-bottom:1px solid #292c20;justify-content:space-between;align-items:center;height:80px;padding:0 4vw;display:flex;position:sticky;top:0}.brand{justify-content:center;align-items:center;width:150px;height:60px;display:flex;position:relative}.brand-emblem{width:72px;height:auto;transition:opacity .32s,transform .42s}.brand-name{opacity:0;white-space:nowrap;font:700 32px/1.2 fairweather,sans-serif;transition:opacity .32s,transform .42s;position:absolute;top:50%;left:50%;transform:translate(-50%,calc(6px - 50%))}.brand:is(:hover,:focus-visible) .brand-emblem{opacity:0;transform:translateY(-6px)}.brand:is(:hover,:focus-visible) .brand-name{opacity:1;transform:translate(-50%,-50%)}.desktop-nav{gap:26px;font:400 23px/1.2 fairweather,sans-serif;display:flex}.desktop-nav a{padding:12px 0}.desktop-nav [aria-current=page]{border-bottom:1px solid #ddd}.menu-toggle{color:#eee;background:0 0;border:0;font-size:28px;display:none}.mobile-nav{z-index:29;color:#eee;background:#10110e;gap:18px;padding:22px;font:26px fairweather,sans-serif;display:grid;position:fixed;inset:80px 0 auto}.classification{text-align:center;font:700 10px/1.2 var(--sans);letter-spacing:.35em;color:#fff;background:#252b23;padding:9px 10px}.roster-banner{background:var(--olive);color:#f0f0e8;border-bottom:2px solid #171910;justify-content:space-between;align-items:center;gap:20px;padding:22px 3vw;display:flex}.roster-banner>div{align-items:center;gap:20px;display:flex}.roster-banner img{object-fit:contain;filter:grayscale();width:45px;height:52px}.roster-banner h1{letter-spacing:.03em;font-size:26px;font-weight:700;line-height:1.2}.roster-banner p{font:10px var(--mono);letter-spacing:.24em;color:#c0c5b0;margin-top:8px}.roster-banner aside{font:10px var(--mono);grid-template-columns:auto auto;align-items:center;gap:6px 18px;display:grid}.roster-banner small{text-align:right;letter-spacing:.07em;grid-column:1/3}.roster-banner button{color:inherit;font:inherit;background:0 0;border:1px solid #c0c5b0;padding:4px 10px}.connection{letter-spacing:.09em;color:#c0c5b0}.connection:before{content:"";background:#778d55;border-radius:50%;width:6px;height:6px;margin-right:8px;display:inline-block}.connection.error:before{background:#e97b74}.roster-filters{flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:16px;display:flex}.roster-filters label{font:700 10px var(--sans);letter-spacing:.15em;flex:1;gap:7px;min-width:115px;display:grid}.roster-filters .search-field{flex:2;min-width:220px}.roster-filters input,.roster-filters select{width:100%;height:38px;font:12px var(--mono);background:#21251f;border:1px solid #454937;border-radius:0;padding:8px}.outline-button{font:500 12px var(--mono);background:0 0;border:1px solid #454937;padding:9px 16px}.record-count{font:10px var(--mono);letter-spacing:.07em;white-space:nowrap;padding:11px 0}.table-scroll{border:1px solid var(--line);max-width:100%;overflow-x:auto}.personnel-table{border-collapse:collapse;width:100%;min-width:960px;font:12px var(--mono);text-align:left}.personnel-table th{color:#eaece0;font:700 10px var(--sans);letter-spacing:.1em;white-space:nowrap;background:#171910;padding:12px 8px}.personnel-table th button{color:inherit;font:inherit;letter-spacing:inherit;background:0 0;border:0;padding:0}.personnel-table th button span{color:#8d937d;margin-left:7px;font-size:8px}.personnel-table td{border-bottom:1px solid var(--line);height:54px;padding:7px 8px}.personnel-table tbody tr:nth-child(odd){background:#21251f}.personnel-table tbody tr:nth-child(2n){background:#2b3225}.personnel-table tbody tr{cursor:pointer}.personnel-table tbody tr:hover,.personnel-table tbody tr:focus-within{background:#3b4430}.personnel-table td:nth-child(3){font:700 14px var(--sans)}.table-photo,.avatar-initials{object-fit:cover;color:#c1c9b4;width:34px;height:43px;font:600 12px var(--sans);filter:grayscale();background:#30392b;justify-content:center;align-items:center;display:flex}.status-pill{font:10px var(--mono);color:#afd49b;white-space:nowrap;border:1px solid #6a8266;padding:4px 8px}.status-pill.reserve{color:#d4c58e;border-color:#a99b67}.status-pill.leave{color:#a7c6e0;border-color:#97acbc}.status-pill.departed{color:#bdb7b3;border-color:#ada399}.award-count{text-align:center;min-width:26px;display:inline-block}.roster-foot{font:10px var(--mono);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;padding:20px 0;display:flex}.roster-foot button,.record-bottom button{border:1px solid var(--line);background:0 0;margin:0 4px;padding:7px 10px}.empty-state{text-align:center;border-bottom:1px solid var(--line);padding:70px 20px 90px}.empty-state>span{font:10px var(--mono);letter-spacing:.2em;color:var(--muted)}.empty-state h2{font:600 25px var(--sans);margin:15px 0}.empty-state p{color:var(--muted);font-size:16px}.empty-state a{border:1px solid var(--olive);font:12px var(--mono);margin-top:28px;padding:10px 17px;display:inline-block}.site-footer{color:#c6c9bd;font:12px var(--mono);background:#10110e;justify-content:space-between;gap:20px;padding:25px 4vw;display:flex}.site-footer a{letter-spacing:.1em;font-size:10px}.record-dialog{color:var(--ink);background:0 0;border:0;width:calc(100% - 88px);max-width:1450px;max-height:calc(100dvh - 50px);margin:auto;padding:0;overflow:auto}.record-paper{background:var(--paper);border:1px solid #171910;width:100%}.record-top{border-bottom:3px solid #171910;align-items:center;gap:18px;padding:18px 24px;display:flex}.record-top>img{object-fit:contain;filter:grayscale();width:50px;height:55px}.record-top>div>span{font:10px var(--mono);letter-spacing:.12em}.record-top h2{letter-spacing:.06em;margin-top:3px;font-size:25px;line-height:1.25}.record-document{text-align:right;font:10px var(--mono);gap:5px;margin-left:auto;display:grid}.record-document span{font:inherit!important;letter-spacing:.05em!important}.record-close{z-index:80;color:#fff;background:#171910;border:1px solid #777b68;width:44px;height:44px;font-size:28px;line-height:1;position:fixed;top:15px;right:18px}.section-bar{background:var(--olive);color:#f2f2e9;font:700 12px var(--sans);letter-spacing:.1em;border-bottom:1px solid #171910;padding:7px 24px}.identity-layout{grid-template-columns:1fr 185px;display:grid}.record-grid{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.record-cell{overflow-wrap:anywhere;border-bottom:1px solid #313629;border-right:1px solid #313629;min-height:78px;padding:10px 13px}.record-cell>span{font:9px var(--sans);letter-spacing:.12em;color:#a7b19b;margin-bottom:7px;display:block}.record-cell>strong{font:500 15px var(--mono);text-transform:uppercase;line-height:1.5}.record-cell.wide{grid-column:span 2}.identity-grid .wide>strong{font:700 25px var(--sans)}.portrait-box{background:#242a21;border-bottom:1px solid #313629;border-left:1px solid #313629;flex-direction:column;align-items:center;display:flex;overflow:hidden}.portrait-box>img:not(.unit-emblem){object-fit:cover;filter:grayscale();width:100%;height:220px}.portrait-box .unit-emblem{object-fit:contain;width:75px;height:80px;margin:12px}.assignment-grid .wide{grid-column:span 2}.record-paper h4{font:500 13px var(--sans);letter-spacing:.05em;border-bottom:1px solid #abb09e;margin:14px 0 10px;padding-bottom:8px}.field-note{font:10px var(--mono);color:var(--muted);margin-bottom:20px}.medal-rack{flex-wrap:wrap;gap:22px 25px;padding:12px 0;display:flex}.medal-rack figure{text-align:center;font:11px var(--mono);flex-direction:column;align-items:center;gap:7px;max-width:150px;margin:0;display:flex}.medal-rack figure>img{object-fit:contain;width:105px;height:190px}.medal-rack figcaption{overflow-wrap:anywhere;max-width:150px}.medal-rack small{color:var(--muted);font-size:9px}.ribbon-rack{grid-template-columns:repeat(3,110px);justify-content:start;gap:3px;padding:10px 0 15px;display:grid}.ribbon-rack>div{background:#30392b;justify-content:center;align-items:center;min-height:32px;display:flex;position:relative}.ribbon-rack img{object-fit:fill;width:110px;height:32px;display:block}.ribbon-rack b{color:#fff;font:9px var(--mono);background:#171910;padding:0 2px;position:absolute;bottom:0;right:0}.precedence-list{font:12px var(--mono);padding-left:24px}.precedence-list li{border-bottom:1px dotted #b6baa9;padding:4px 0}.precedence-list span{float:right;color:var(--muted);font-size:10px}.empty-inline{font:12px var(--mono);color:var(--muted);padding:10px 0}.record-bottom{border-top:1px solid var(--line);font:10px var(--mono);justify-content:space-between;align-items:center;gap:15px;padding:15px 24px;display:flex}.standalone-record{padding:25px 3vw 50px}.back-link{font:12px var(--mono);margin:5px 0 20px;display:inline-block}.alert{background:#2b3225;border:1px solid #8e947a;margin-bottom:20px;padding:14px 18px;font-size:15px}.alert button{background:0 0;border:0;margin-left:12px;text-decoration:underline}.toast{z-index:120;background:var(--olive);color:#fff;max-width:min(450px,90vw);padding:16px 25px;position:fixed;bottom:22px;right:22px;box-shadow:0 6px 25px #0002}.login-card{border:1px solid var(--line);background:#21251f;max-width:590px;margin:80px auto 100px;padding:40px}.login-card h1{font:600 34px var(--sans);margin:15px 0}.login-card p{color:var(--muted);margin:15px 0}.primary-button{background:var(--olive);color:#fff;border:1px solid var(--olive);font:600 13px var(--sans);padding:11px 18px;display:inline-block}.danger-button{color:#fff;background:#ae1428;border:1px solid #ae1428;padding:9px 15px}.secondary-button{font:600 13px var(--sans);background:0 0;border:1px solid #89917b;padding:10px 15px}.login-card small{color:var(--muted);margin-top:25px;display:block}.summary-cards{grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:28px;display:grid}.summary-cards>div{border:1px solid var(--line);background:#21251f;padding:20px}.summary-cards span{font:10px var(--mono);letter-spacing:.1em;color:var(--muted);display:block}.summary-cards b{margin-top:5px;font-size:32px;display:block}.admin-table{border-collapse:collapse;text-align:left;width:100%;min-width:600px;font-size:14px}.admin-table th{background:var(--olive);color:#fff;letter-spacing:.05em;padding:12px;font-size:11px}.admin-table td{border-bottom:1px solid var(--line);background:#21251f;padding:13px 12px}.admin-table td button{font:11px var(--mono);white-space:nowrap;background:0 0;border:1px solid #a3ac91;padding:7px 10px}.admin-table td b{display:block}.admin-table td small{color:var(--muted)}.catalog-tabs,.person-tabs{flex-wrap:wrap;gap:8px;margin:12px 0 20px;display:flex}.catalog-tabs button,.person-tabs button{border:1px solid var(--line);background:0 0;padding:8px 14px}.catalog-tabs [aria-pressed=true],.person-tabs [aria-pressed=true]{background:var(--olive);color:#fff}.catalog-thumb{object-fit:contain;vertical-align:middle;width:60px;height:45px;margin-right:10px}.editor-panel{border:1px solid var(--line);background:#21251f;margin-bottom:25px;padding:24px}.editor-panel h3{margin-bottom:18px;font-size:22px}.form-grid{grid-template-columns:1fr 1fr;gap:16px 24px;display:grid}.form-grid label{font:600 13px var(--sans);flex-direction:column;gap:6px;display:flex}.form-grid input,.form-grid select,.form-grid textarea{background:var(--paper);width:100%;font:14px var(--sans);border:1px solid #a6ac98;border-radius:0;padding:10px 12px}.form-grid input[type=checkbox]{align-self:start;width:auto}.form-grid textarea{resize:vertical;min-height:95px}.form-grid .full{grid-column:1/-1}.form-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:22px;display:flex}.form-actions a{font:11px var(--mono);margin-left:auto;text-decoration:underline}.upload-box{border:1px dashed #a6ac98;flex-wrap:wrap;align-items:center;gap:16px;padding:15px;display:flex}.upload-box img{object-fit:contain;width:60px;height:75px}.upload-box input{max-width:280px;border:0!important;padding:0!important}.upload-box button{background:0 0;border:0;font-size:12px;text-decoration:underline}.grant-list{gap:10px;margin-top:24px;display:grid}.grant-row{border:1px solid var(--line);background:var(--paper);align-items:center;gap:15px;padding:12px;display:flex}.grant-row img{object-fit:contain;width:48px;height:52px}.grant-row>div{flex:1;min-width:0}.grant-row strong,.grant-row small{display:block}.grant-row small{color:var(--muted);overflow-wrap:anywhere}.grant-row button{white-space:nowrap;background:0 0;border:1px solid #a78b83;padding:8px;font-size:11px}.grant-row.revoked{opacity:.6}.confirm-dialog{background:var(--paper);border:1px solid var(--olive);width:calc(100vw - 40px);max-width:500px;padding:30px}.confirm-dialog h3{margin-bottom:12px}.confirm-dialog label{margin-top:15px;font-weight:600;display:block}.confirm-dialog textarea{border:1px solid var(--line);width:100%;min-height:90px;margin-top:6px;padding:10px}.help-text{color:var(--muted);margin:12px 0;font-size:13px}@media (max-width:1000px){.desktop-nav{gap:17px;font-size:20px}.roster-filters{gap:10px}.roster-banner h1{font-size:23px}.identity-layout{grid-template-columns:1fr 150px}}@media (max-width:767px){.site-header{height:65px;padding:0 4vw}.brand{width:120px;height:50px}.brand-emblem{width:57px}.brand-name{font-size:28px}.desktop-nav{display:none}.menu-toggle{display:block}.mobile-nav{top:65px}.classification{letter-spacing:.2em;font-size:8px}.roster-banner{flex-direction:column;align-items:start;padding:20px 5vw}.roster-banner h1{font-size:22px}.roster-banner p{letter-spacing:.12em;font-size:8px}.roster-banner img{width:35px}.roster-banner>div{gap:12px}.roster-banner aside{grid-template-columns:1fr auto;gap:8px;width:100%}.roster-banner small{text-align:left}.roster-content{padding:20px 5vw}.roster-filters label{flex-basis:calc(50% - 12px);min-width:0}.roster-filters .search-field{flex-basis:100%;min-width:0}.record-count{margin-left:auto}.roster-foot{font-size:9px}.roster-foot>span:last-child{text-align:center;width:100%}.site-footer{text-align:center;flex-direction:column;font-size:10px}.record-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 24px)}.record-close{width:36px;height:36px;font-size:24px;top:3px;right:3px}.record-top{flex-wrap:wrap;gap:10px;padding:18px 12px}.record-top>img{width:34px;height:40px}.record-top h2{font-size:19px}.record-top>div>span{font-size:7px}.record-document{text-align:left;width:100%;margin-left:44px;font-size:8px}.section-bar{padding:8px 12px;font-size:10px}.identity-layout{flex-direction:column-reverse;display:flex}.portrait-box{border-left:0;flex-direction:row;justify-content:center;gap:20px;padding:12px}.portrait-box>img:not(.unit-emblem){width:100px;height:130px}.portrait-box .unit-emblem{width:70px;height:70px;margin:0}.record-grid{grid-template-columns:1fr 1fr}.record-cell{min-height:74px;padding:10px}.record-cell>strong{font-size:12px}.identity-grid .wide>strong{font-size:24px}.record-cell>span{font-size:8px}.record-paper h4{font-size:11px}.medal-rack{gap:20px 12px}.medal-rack figure{max-width:95px;font-size:9px}.medal-rack figure>img{width:75px;height:140px}.ribbon-rack{grid-template-columns:repeat(3,86px);gap:2px}.ribbon-rack img{width:86px;height:25px}.ribbon-rack>div{min-height:25px}.record-bottom{flex-direction:column;padding:12px;font-size:8px}.standalone-record{padding:15px 10px}.login-card{margin:30px 15px;padding:28px}.login-card h1{font-size:29px}.summary-cards{gap:8px}.summary-cards>div{padding:12px}.summary-cards span{letter-spacing:0;font-size:8px}.summary-cards b{font-size:26px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.editor-panel{padding:18px 14px}.grant-row{gap:10px}.grant-row img{width:34px;height:43px}.grant-row strong{font-size:13px}.grant-row button{font-size:10px}.toast{font-size:13px;bottom:15px;right:15px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.row-awards{align-items:center;gap:4px;display:flex}.row-awards img{object-fit:fill;width:24px;height:8px}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}input,select,textarea{color:var(--ink)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#b4c498}.orbat-roster{border:1px solid var(--line);background:#1b1e1c;width:calc(100% - 64px);max-width:1360px;margin:24px auto 0}.orbat-roster .classification{color:#c2cbb6;letter-spacing:.2em;background:#252b23;padding:6px 10px}.roster-banner{border-bottom:1px solid var(--line);background:#292f24;padding:18px 20px}.roster-banner>div{gap:14px}.roster-banner h1{font-size:23px}.roster-banner p{letter-spacing:.12em;margin-top:5px}.roster-content{min-height:0;padding:18px 20px 0}.roster-filters{gap:10px;margin-bottom:12px}.roster-filters label{gap:5px;min-width:100px}.roster-filters .search-field{min-width:190px}.roster-filters input,.roster-filters select{border-color:var(--line);background:#171b16;height:34px;padding:6px 8px}.outline-button{border-color:var(--line);padding:7px 12px}.record-count{padding:9px 0}.personnel-table{min-width:1120px;font-size:11.5px}.personnel-table th{background:#151a12;padding:9px 6px}.personnel-table td{white-space:nowrap;height:44px;padding:4px 6px}.personnel-table .table-photo,.personnel-table .avatar-initials{width:29px;height:36px}.personnel-table td:first-child{width:42px;padding:4px 6px}.personnel-table td:nth-child(3){text-transform:uppercase;font-size:14px}.personnel-table .duty-cell{white-space:normal;max-width:190px;line-height:1.35}.personnel-table .mos-cell{white-space:normal;max-width:160px;line-height:1.35}.personnel-table td{text-transform:uppercase}.orbat-roster .table-scroll{max-height:none}@media (min-width:1320px){.orbat-roster .table-scroll{overflow:visible}.orbat-roster .personnel-table th{top:var(--site-header-height)}}.status-pill{letter-spacing:.04em;text-transform:uppercase;padding:3px 7px;font-size:9px}.award-count{min-width:12px;font-size:10px}.row-awards{gap:4px}.row-awards img{width:24px;height:8px}.country-label{vertical-align:middle;align-items:center;gap:7px;line-height:1.4;display:inline-flex}.country-flag{border:1px solid #ffffff26;min-width:22px;object-fit:fill!important;filter:none!important;width:22px!important;height:16px!important}.record-cell .country-label{font:500 13px var(--mono);text-transform:none}.record-cell .service-date{text-transform:none;overflow-wrap:anywhere}.record-cell>span{color:var(--muted)}.record-top>img{filter:none}.record-paper,.record-top{border-color:var(--line)}.section-bar{background:#303a29}.record-dialog{max-width:1200px}.standalone-record{max-width:1240px;margin:auto}.precedence-list li,.record-cell,.record-paper h4,.portrait-box{border-color:var(--line)}.roster-foot{padding:14px 0;font-size:9px}.empty-state{padding:42px 20px 50px}.empty-state h2{font-size:23px}.empty-state p{font-size:14px}.empty-state a{border-color:#7c8c65;margin-top:20px}.site-footer{padding:16px 4vw;font-size:10px}.login-card,.editor-panel,.summary-cards>div{background:#22271f}.primary-button{background:#4c5740;border-color:#687753}.form-grid input,.form-grid select,.form-grid textarea{border-color:var(--line);background:#171b16}.confirm-dialog textarea{color:var(--ink);background:#171b16}@media (max-width:1000px){.roster-filters label{min-width:120px}.roster-filters .search-field{min-width:210px}}@media (max-width:767px){.orbat-roster{width:calc(100% - 24px);margin-top:12px}.roster-banner{padding:16px 14px}.roster-banner h1{font-size:21px}.roster-content{padding:15px 12px 0}.roster-filters label{flex-basis:calc(50% - 10px);min-width:0}.roster-filters .search-field{flex-basis:100%;min-width:0}.roster-filters .record-count{margin-left:auto}.roster-foot>span:last-child{display:none}.empty-state{padding:35px 8px 40px}.empty-state h2{font-size:22px}.empty-state p{font-size:14px}.site-footer{flex-direction:row;align-items:center;padding:16px 18px}.record-cell .country-label{gap:5px;font-size:12px}}.record-dialog{scrollbar-width:none;-ms-overflow-style:none;width:calc(100% - 24px);max-width:1200px;max-height:calc(100dvh - 24px)}.record-dialog::-webkit-scrollbar{display:none}.record-paper{--record-line:#4c4a3b;--record-muted:#aaa58f;color:#f1eee5;font-family:var(--mono);background:#211f14;border:1px solid #8d8976}.record-paper .record-top{border-bottom:1px solid #8d8976;gap:18px;height:96px;padding:18px 26px}.record-paper .record-top>img{object-fit:contain;filter:none;width:50px;height:55px}.record-paper .record-top>div>span{font:9px/1.5 var(--mono);letter-spacing:.16em}.record-paper .record-top h2{font:700 22px/1.25 var(--sans);letter-spacing:.04em;margin-top:4px}.record-paper .record-document{font:10px/1.5 var(--mono);letter-spacing:.08em}.record-paper .section-bar{color:#f0ecde;height:29px;font:700 11px/1.5 var(--sans);letter-spacing:.16em;background:#303819;border-top:1px solid #8d8976;border-bottom:1px solid #252414;align-items:center;padding:6px 26px;display:flex}.record-paper .identity-layout{grid-template-columns:minmax(0,1fr) 180px;display:grid}.record-paper .identity-grid{grid-template-rows:118px 102px 122px;grid-template-columns:repeat(4,minmax(0,1fr))}.record-paper .record-cell{background:#211f14;border-color:#15150e;min-height:0;padding:10px 15px}.record-paper .record-cell>span{font:700 8px/1.4 var(--sans);letter-spacing:.14em;color:#c7bea2;margin-bottom:7px}.record-paper .record-cell>strong{font:500 14px/1.4 var(--mono);text-transform:uppercase;display:block}.record-paper .identity-grid .wide>strong{font:700 28px/1.2 var(--sans)}.record-paper .record-cell .country-label{font:500 13px/1.5 var(--mono);text-transform:uppercase}.record-paper .portrait-box{background:#211f14;border-color:#15150e;flex-direction:column;gap:0;min-height:0;padding:0;display:flex}.record-paper .portrait-box>.record-portrait{object-fit:cover;filter:grayscale();flex:1;width:100%;height:0;min-height:0}.portrait-unit{border-top:1px solid #15150e;flex-shrink:0;justify-content:center;align-items:center;width:100%;height:102px;display:flex}.record-paper .portrait-unit .unit-emblem{object-fit:contain;width:80px;height:85px;margin:6px}.record-paper .assignment-grid .record-cell{min-height:50px;padding:8px 15px}.record-paper .assignment-grid .record-cell>span{margin-bottom:4px;line-height:1.1}.record-paper h4{font:700 9px/1.5 var(--sans);letter-spacing:.12em;border-color:var(--record-line);margin:0 0 10px;padding-bottom:6px}.record-paper .field-note{font:9px/1.5 var(--mono);letter-spacing:.06em;color:var(--record-muted);margin-bottom:9px}.record-paper .empty-inline{font:italic 12px/1.7 var(--mono);color:var(--record-muted);padding:3px 0 8px}.record-medals{border-bottom:1px solid #8d8976;padding:14px 20px 18px}.record-paper .medal-rack{border:1px solid var(--record-line);background:#242217;align-items:flex-start;gap:18px 28px;min-height:190px;padding:24px 28px 16px}.record-paper .medal-rack figure{max-width:85px;font:500 10px var(--mono);gap:7px}.record-paper .medal-rack figure>img{object-fit:contain;width:70px;height:125px}.record-paper .medal-rack figcaption{max-width:85px;font:500 9px/1.4 var(--mono)}.record-paper .medal-rack small{font:8px/1.4 var(--mono);color:var(--record-muted)}.record-award-columns,.record-history-columns{grid-template-columns:54.5% 45.5%;display:grid}.record-award-columns{min-height:400px}.record-award-columns>section,.record-history-columns>section{min-width:0;padding:15px 20px 22px}.record-award-columns>section+section,.record-history-columns>section+section{border-left:1px solid #15150e}.record-awards-right>h4:not(:first-child),.record-history-columns h4:not(:first-child){margin-top:22px}.record-paper .ribbon-rack{grid-template-columns:repeat(3,110px);gap:2px;padding:0 0 18px}.record-paper .ribbon-rack>div{background:0 0}.record-paper .precedence-list{counter-reset:award;margin:0;padding:0;list-style:none}.record-paper .precedence-list li{counter-increment:award;font:12px/1.6 var(--mono);border:0;padding:5px 0 5px 31px;position:relative}.record-paper .precedence-list li:before{content:counter(award,decimal-leading-zero);color:var(--record-muted);font-size:9px;position:absolute;left:0}.record-paper .precedence-list span{float:none;border:1px solid var(--record-line);color:var(--record-muted);margin-left:8px;padding:1px 4px;font-size:9px}.record-badge-rack{flex-wrap:wrap;gap:8px;margin:0 0 14px;display:flex}.record-badge{border:1px solid var(--record-line);background:#262419;justify-content:center;align-items:center;width:76px;height:56px;padding:3px;display:flex}.record-badge img{object-fit:contain;width:74px;height:48px}.record-badge>span{font:9px var(--mono);text-align:center;overflow-wrap:anywhere}.record-item-list{font:13px/1.65 var(--mono);margin:0;padding:0;list-style:none}.record-item-list li{border-bottom:1px dotted var(--record-line);overflow-wrap:anywhere;padding:4px 0 4px 15px;position:relative}.record-item-list li:before{content:"·";position:absolute;left:0}.record-item-list small{font:9px/1.6 var(--mono);color:var(--record-muted);display:block}.record-campaigns{flex-wrap:wrap;gap:16px;display:flex}.record-campaigns figure{text-align:center;max-width:95px;font:8px/1.4 var(--mono);margin:0}.record-campaigns img{object-fit:contain;width:64px;height:64px}.record-campaigns figcaption{overflow-wrap:anywhere;text-transform:uppercase;margin-top:5px}.record-campaigns small{font:8px/1.4 var(--mono);color:var(--record-muted);display:block}.record-history-columns{min-height:310px}.record-paper .record-bottom{min-height:58px;font:9px/1.5 var(--mono);letter-spacing:.08em;border-top:2px solid #8d8976;padding:15px 26px}.record-paper .record-bottom button{text-transform:uppercase;font:10px var(--mono);border-color:#8d8976;padding:8px 12px}@media (max-width:767px){.record-paper .record-top{gap:10px;height:auto;min-height:100px;padding:16px 12px}.record-paper .record-top>div>span{letter-spacing:.1em;font-size:7px}.record-paper .record-top h2{font-size:20px}.record-paper .record-document{width:100%;margin-left:44px;font-size:8px}.record-paper .section-bar{letter-spacing:.08em;height:auto;min-height:29px;padding:7px 12px;font-size:10px}.record-paper .identity-layout{flex-direction:column-reverse;display:flex}.record-paper .portrait-box{flex-direction:row;justify-content:center;gap:20px;padding:12px}.record-paper .portrait-box>.record-portrait{width:100px;height:135px}.record-paper .portrait-unit{border-top:0;width:85px;height:135px}.record-paper .identity-grid{grid-template-rows:none;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(75px,auto)}.record-paper .record-cell{min-height:75px;padding:10px}.record-paper .record-cell>strong,.record-paper .record-cell .country-label{font-size:12px}.record-paper .identity-grid .wide>strong{font-size:25px}.record-paper .assignment-grid .record-cell{min-height:65px}.record-award-columns,.record-history-columns{grid-template-columns:1fr;min-height:0}.record-award-columns>section,.record-history-columns>section{padding:15px 12px 20px}.record-award-columns>section+section,.record-history-columns>section+section{border-left:0;border-top:1px solid var(--record-line)}.record-medals{padding:14px 12px 18px}.record-paper .medal-rack{gap:18px 20px;padding:18px 14px}.record-paper .ribbon-rack{grid-template-columns:repeat(3,86px)}.record-paper .record-bottom{text-align:center;flex-direction:column;gap:12px;padding:15px 12px;font-size:8px}.record-paper .record-top>img{width:34px;height:40px}.record-paper .portrait-box>.record-portrait{flex:none}}.roster-view-switch{border-bottom:1px solid var(--line);background:#171b16;gap:4px;padding:0 20px;display:flex}.roster-view-switch a{font:700 11px var(--mono);letter-spacing:.07em;color:var(--muted);border-bottom:2px solid #0000;padding:13px 16px}.roster-view-switch a[aria-current=page]{color:var(--ink);background:#252b23;border-bottom-color:#b4c498}.roster-view-switch a:hover{color:#fff}.battle-intro{max-width:740px;font:12px/1.8 var(--mono);color:var(--muted)}.battle-summary{flex-wrap:wrap;gap:10px;margin:18px 0 24px;display:flex}.battle-summary span{border:1px solid var(--line);font:10px var(--mono);letter-spacing:.08em;color:#c5cfba;padding:8px 12px}.battle-unit{border:1px solid var(--line);background:#22271f;margin-bottom:24px}.battle-unit-header{border-bottom:1px solid var(--line);background:#35402c;flex-wrap:wrap;align-items:center;gap:14px;padding:11px 16px;display:flex}.battle-unit-header>img{object-fit:contain;width:32px;height:28px}.battle-unit-header h2{font:700 19px/1.2 var(--sans);letter-spacing:.1em}.battle-unit-header>span{font:10px/1.5 var(--mono);letter-spacing:.08em;color:#c5cfba}.battle-unit-header>small{font:10px var(--mono);letter-spacing:.08em;white-space:nowrap;margin-left:auto}.battle-company{border-bottom:1px solid var(--line);font:10px/1.5 var(--mono);letter-spacing:.05em;color:#bac6aa;background:#1b2117;justify-content:space-between;gap:16px;padding:9px 16px;display:flex}.battle-company small{font:inherit;color:var(--muted)}.battle-assignment{grid-template-columns:185px minmax(0,1fr);display:grid}.battle-assignment-label{border-right:1px solid var(--line);border-bottom:1px solid var(--line);overflow-wrap:anywhere;background:#20251d;flex-direction:column;gap:6px;padding:15px 16px;display:flex}.battle-assignment-label h3{font:700 16px/1.2 var(--sans);letter-spacing:.04em}.battle-assignment-label>span{font:10px/1.6 var(--mono);color:#b4c498}.battle-assignment-label>small{font:9px var(--mono);letter-spacing:.1em;color:var(--muted)}.battle-members{min-width:0;box-shadow:inset 0 -1px 0 var(--line);grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(62px,auto);display:grid}.battle-subunit+.battle-subunit,.battle-assignment+.battle-subunit{border-top:1px solid var(--line);margin-top:14px}.battle-person{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0;color:var(--ink);align-items:flex-start;gap:10px;padding:13px 14px;display:flex}.battle-person:hover,.battle-person:focus-visible{background:#39432f}.battle-rank{text-align:right;font:10px/18px var(--mono);color:var(--muted);flex:0 0 36px}.battle-person-info{flex:1;gap:4px;min-width:0;display:grid}.battle-person-name{align-items:center;gap:8px;min-width:0;display:flex}.battle-person-name strong{font:500 12px/1.5 var(--mono);text-transform:uppercase;overflow-wrap:anywhere}.battle-person-name .country-flag{flex-shrink:0}.battle-duty{font:9px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.025em;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.battle-status{font:9px var(--mono);color:#c5b489}.battle-empty{color:var(--muted);font:12px/1.6 var(--mono);border-bottom:1px solid var(--line);grid-column:1/-1;padding:20px 16px}.comms-scroll{overflow-x:auto}.comms-table{border-collapse:collapse;width:100%;font:12px var(--mono);text-align:left}.comms-table th{font:700 10px var(--sans);letter-spacing:.1em;white-space:nowrap;padding:10px 16px}.comms-table td{border-top:1px solid var(--line);white-space:nowrap;padding:11px 16px}.comms-table .comms-code{width:1%;font-weight:700}.mos-grid{box-shadow:inset 0 -1px 0 var(--line);grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));display:grid}.mos-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0;padding:16px 18px}.mos-card h3{font:700 13px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.04em}.mos-title{font:11px/1.5 var(--mono);color:var(--muted);margin-top:3px}.mos-note{font:13px/1.5 var(--sans);color:#c5b489;margin-top:10px}.mos-description{font:14px/1.5 var(--sans);margin-top:10px}.mos-card ul{font:14px/1.45 var(--sans);gap:5px;margin:12px 0 0;padding:0;list-style:none;display:grid}.mos-card li{gap:9px;display:flex}.mos-card li:before{content:"♦";color:var(--muted);flex-shrink:0;font-size:10px;line-height:20px}.mos-footnote{font:13px/1.6 var(--sans);color:var(--muted);padding:14px 18px}.mos-footnote b{color:var(--ink);letter-spacing:.06em}@media (max-width:1100px){.battle-members{grid-template-columns:repeat(2,minmax(0,1fr))}.battle-assignment{grid-template-columns:150px minmax(0,1fr)}}@media (max-width:767px){.roster-view-switch{gap:0;padding:0 10px}.roster-view-switch a{letter-spacing:.02em;padding:13px 11px;font-size:10px}.battle-intro{font-size:11px}.battle-summary{gap:6px;margin:14px 0 18px}.battle-summary span{padding:7px 8px;font-size:9px}.battle-unit{margin-bottom:18px}.battle-unit-header{gap:8px 10px;padding:11px 12px}.battle-unit-header h2{font-size:17px}.battle-unit-header>span{order:3;width:100%;font-size:9px}.battle-assignment{grid-template-columns:1fr}.battle-assignment-label{border-right:0;flex-flow:wrap;align-items:center;gap:6px 12px;padding:12px}.battle-assignment-label h3{font-size:14px}.battle-assignment-label>small{margin-left:auto}.battle-assignment-label>span{flex-basis:100%;order:3}.battle-members{grid-template-columns:1fr}.battle-person{padding:12px}.battle-company{padding:10px 12px;font-size:9px}.battle-company small{display:block}}.orbat-page{flex-direction:column;min-height:100dvh;display:flex}.orbat-page>*{flex-shrink:0}.orbat-page>.orbat-roster{margin-bottom:auto}.community-footer{color:#eee;text-align:center;background:#000;margin-top:24px}.community-footer-inner{max-width:1360px;margin:auto;padding:44px 30px 28px}.community-badges{grid-template-columns:minmax(0,166px);justify-content:center;align-items:center;display:grid}.community-footer-brand{object-fit:contain;width:100%;height:125px}.community-footer-brand .brand-emblem{object-fit:contain;width:100%;height:100%}.community-footer-brand .brand-name{font-size:clamp(24px,2.6vw,38px)}.community-footer h3{white-space:nowrap;margin-top:18px;font:700 clamp(30px,3.8vw,50px)/1.1 fairweather,sans-serif}.community-socials{justify-content:center;align-items:center;gap:8px;margin-top:24px;display:flex}.community-socials a{justify-content:center;align-items:center;width:48px;height:48px;display:flex}.community-socials svg{width:48px;height:48px}.community-footer hr{border:0;border-top:1px solid #626262;width:120px;margin:42px auto 0}@media (max-width:767px){.community-footer{margin-top:18px}.community-footer-inner{padding:32px 18px 24px}.community-badges{grid-template-columns:minmax(0,101px)}.community-footer-brand{height:76px}.community-footer h3{margin-top:22px;font-size:clamp(25px,7vw,40px)}.community-socials{margin-top:14px}.community-footer hr{margin-top:28px}.community-footer-brand .brand-name{font-size:22px}}.attendance h3{margin:30px 0 8px}.attendance .attendance-scroll{border:1px solid var(--roster-line);border-radius:6px;max-height:72dvh}.attendance .attendance-table{width:100%;min-width:0;font-size:13px}.attendance .attendance-table th,.attendance .attendance-table td{text-align:center;vertical-align:middle;white-space:nowrap;height:38px;padding:4px 12px;line-height:1.3}.attendance .attendance-table thead th{background:var(--roster-banner);border-bottom:1px solid var(--roster-strong);height:auto;font:700 10px var(--mono);letter-spacing:.14em;color:var(--roster-ink);padding:10px 12px}.attendance .attendance-table tbody td{background:var(--roster-panel);border-bottom:1px solid var(--roster-line)}.attendance .attendance-table tbody tr:hover td{background:var(--roster-hover)}.attendance .attendance-table .attendance-person{text-align:left;min-width:210px}.attendance .attendance-table tbody .attendance-person{text-transform:uppercase;letter-spacing:.03em}.attendance .attendance-table .attendance-person b{font-weight:600;display:inline}.attendance-rank{min-width:46px;font:12px var(--mono);color:var(--roster-accent);margin-right:6px;display:inline-block}.attendance .attendance-table .attendance-operation,.attendance .attendance-table .attendance-rate{width:1%}.attendance .attendance-table .attendance-operation{min-width:92px}.attendance-operation span{font:700 12px var(--mono);letter-spacing:.06em;display:block}.attendance-operation small{text-overflow:ellipsis;max-width:120px;font:400 10px var(--sans);letter-spacing:.04em;color:var(--roster-muted);margin:3px auto 0;display:block;overflow:hidden}.attendance .attendance-table .attendance-rate{text-align:left;min-width:130px}.attendance-meter{vertical-align:middle;background:var(--roster-inset);border-radius:3px;width:60px;height:5px;margin-right:10px;display:inline-block;overflow:hidden}.attendance-meter i{background:var(--roster-accent);height:100%;display:block}.attendance .attendance-table .attendance-rate b{text-align:right;min-width:40px;font:700 12px var(--mono);display:inline-block}.attendance .attendance-table tfoot td{z-index:2;background:var(--roster-banner);border-top:1px solid var(--roster-strong);height:auto;font:700 13px var(--mono);padding:9px 12px;position:sticky;bottom:0}.attendance .attendance-table tfoot td:first-child{z-index:4;letter-spacing:.18em;font-size:10px}.attendance .attendance-table tfoot td small{margin:0;font-size:11px;font-weight:400;display:inline}.attendance .attendance-cell{min-width:78px;min-height:0;font:700 9px/1.2 var(--mono);letter-spacing:.14em;text-align:center;color:var(--roster-muted);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:2px;padding:4px 6px;display:inline-block;position:relative}.attendance .attendance-cell.present{color:#8ed2ad;border-color:#3f7d5c}.attendance .attendance-cell.absent{color:#ff8f9f;border-color:#6e2f3c}.attendance .attendance-cell.loa{color:#f0d58a;border-color:#6d6435}.attendance-cell.manual:after{content:"";background:currentColor;border-radius:50%;width:6px;height:6px;position:absolute;top:-3px;right:-3px}.attendance-alert{border:1px solid;border-left-width:4px;border-radius:6px;gap:6px;margin:0 0 14px;padding:12px 16px;font-size:13px;line-height:1.5;display:grid}.attendance-alert.short{color:#ffc2cb;background:#2a1119;border-color:#7a3040}.attendance-alert.risk{color:#f6e3a8;background:#231d0b;border-color:#6d6435}.attendance-alert b{font:700 11px var(--mono);letter-spacing:.14em;text-transform:uppercase}.attendance-alert small{opacity:.75;font-size:12px}.attendance .attendance-table td.attendance-rate.short{color:#ff8f9f}.attendance .attendance-table td.attendance-rate.risk{color:#f0d58a}.attendance-rate.met .attendance-meter i{background:#8ed2ad}.attendance-rate.short .attendance-meter i{background:#ff8f9f}.attendance-rate.risk .attendance-meter i{background:#f0d58a}.attendance .attendance-table tr.attendance-short td.attendance-person{box-shadow:inset 3px 0 #ff8f9f,1px 0 var(--roster-line)}.attendance .attendance-table tr.attendance-risk td.attendance-person{box-shadow:inset 3px 0 #f0d58a,1px 0 var(--roster-line)}.attendance .training-table thead th.training-group{text-align:center;text-transform:uppercase;letter-spacing:.24em;color:var(--roster-accent);border-bottom:1px solid var(--roster-line);padding:8px 12px;position:static}.attendance .training-table thead tr+tr th{white-space:normal;vertical-align:bottom;min-width:96px;max-width:116px;line-height:1.25}.attendance .training-table thead tr+tr th:first-child{z-index:3;left:auto}.attendance .training-table .group-start{border-left:1px solid var(--roster-strong)}.training-month{font:700 13px var(--mono);letter-spacing:.2em;color:var(--roster-ink);align-items:baseline;gap:14px;margin:18px 0 6px;display:flex}.training-month span{letter-spacing:.12em;color:var(--roster-muted);font-size:11px;font-weight:400}.attendance .attendance-cell.earlier{color:#8ed2ad;opacity:.75;border:1px dashed #3f7d5c}.attendance .attendance-table td .attendance-cell:hover:not(:disabled),.attendance .attendance-table td .attendance-cell:focus-visible{outline:2px solid var(--roster-accent);outline-offset:1px}.attendance-dialog{max-width:560px}.attendance-choices{border:1px solid var(--line);gap:10px;margin:18px 0;padding:14px;display:grid}.attendance-choices label{align-items:center;gap:10px;display:flex}.attendance-dialog label textarea,.attendance-dialog label input,.attendance-dialog label select{width:100%;margin-top:6px;display:block}.attendance .admin-table td small{color:var(--muted);margin-top:3px;font-size:12px;display:block}@media (max-width:767px){.attendance .attendance-table .attendance-person{min-width:150px}.attendance .attendance-scroll{max-height:none}}.site-header .desktop-nav a.nav-portal{background-origin:content-box;border-left:1px solid #ffffff59;margin-left:.6vw;padding-left:2vw}@media (max-width:1100px){.site-header .desktop-nav{gap:1vw}.site-header .desktop-nav a.nav-portal{margin-left:.2vw;padding-left:1.2vw}}.login-links{flex-wrap:wrap;gap:18px;margin:14px 0 4px;display:flex}.management-status.pending{color:#f0d58a;background:#231d0b}.management-status.rejected{color:#ffb3bf;background:#2a1119}.portal-actions{flex-wrap:wrap;gap:10px;margin:12px 0;display:flex}.portal .record-paper{margin-top:20px}.portal h3{margin:26px 0 10px}.portal .editor-panel>h3{margin-top:0}.portal-new{color:#fff;font:700 9px var(--mono);letter-spacing:.14em;vertical-align:middle;background:#8a3b2c;border-radius:3px;margin-left:8px;padding:2px 6px;display:inline-block}.warning-level{font:700 10px var(--mono);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;border:1px solid;border-radius:3px;padding:3px 7px;display:inline-block}.warning-level.verbal{color:#f0d58a}.warning-level.written{color:#ffbc88}.warning-level.final{color:#fff;background:#8a3b2c;border-color:#8a3b2c}.warnings tr.revoked{opacity:.6}.warnings .admin-table small{color:var(--roster-muted);margin-top:4px;font-size:12px;display:block}.attendance-alert.portal-results{color:#c8efd9;background:#0f2419;border-color:#3f7d5c}.portal-training h4{font:700 11px var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--roster-accent);margin:14px 0 6px}.portal-trainings{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.portal-trainings li{border:1px solid var(--roster-line);align-items:center;gap:10px;padding:8px 10px;display:flex}.portal-trainings li>span:first-child{flex:1;font-size:13px}.portal-trainings small{color:var(--roster-muted);font-size:11px}.portal-photo-change{align-items:center;gap:10px;display:inline-flex}:root{--roster-canvas:#080e19;--roster-panel:#101b2b;--roster-raised:#152439;--roster-line:#2b3d55;--roster-ink:#ecf2fa;--roster-muted:#9dacbf;--roster-accent:#7aabd9;--roster-hover:#1b3553;--roster-chrome:#050b14;--roster-inset:#0b1524;--roster-banner:#14273e;--roster-strong:#2e567e;--roster-edge:#45698d;--roster-primary:#28557f;--roster-primary-hover:#356999;--site-header-height:calc(57px + 3vw);--site-nav-size:min(calc(.12vw + 24px),26.4px);--paper:var(--roster-canvas);--olive:var(--roster-strong);--ink:var(--roster-ink);--line:var(--roster-line);--muted:var(--roster-muted)}body,.orbat-page{background:var(--roster-canvas);color:var(--roster-ink)}.site-header,.mobile-nav,.site-footer{background:var(--roster-chrome);color:var(--roster-ink);border-color:var(--roster-line)}.desktop-nav [aria-current=page]{border-color:var(--roster-accent)}.site-footer{color:var(--roster-muted)}.orbat-page .orbat-roster{background:var(--roster-panel);border-color:var(--roster-line)}.orbat-page .classification{background:var(--roster-inset);color:#bec5d0}.orbat-page .roster-banner{background:var(--roster-banner);color:var(--roster-ink);border-color:var(--roster-strong)}.orbat-page .roster-banner p,.orbat-page .roster-banner small,.orbat-page .connection{color:var(--roster-muted)}.orbat-page .roster-banner button{border-color:var(--roster-edge)}.orbat-page .connection:before{background:#8ed2ad}.orbat-page .connection.error:before{background:#ff7287}.orbat-page .roster-view-switch{background:var(--roster-inset);border-color:var(--roster-line)}.orbat-page .roster-view-switch a{color:var(--roster-muted)}.orbat-page .roster-view-switch a[aria-current=page]{background:var(--roster-hover);color:var(--roster-ink);border-color:var(--roster-accent)}.orbat-page .roster-view-switch a:hover{color:#fff;background:var(--roster-banner)}.orbat-page .roster-filters label,.orbat-page .record-count{color:#c7ced9}.orbat-page .roster-filters input,.orbat-page .roster-filters select{background:var(--roster-inset);color:var(--roster-ink);border-color:var(--roster-line)}.orbat-page .roster-filters input::placeholder{color:#7f8999;opacity:1}.orbat-page .outline-button,.orbat-page .roster-foot button{border-color:var(--roster-line);color:var(--roster-ink)}.orbat-page .roster-banner button:hover,.orbat-page .outline-button:hover,.orbat-page .roster-foot button:enabled:hover{background:var(--roster-hover);border-color:var(--roster-accent)}.orbat-page .table-scroll{border-color:var(--roster-line)}.orbat-page .personnel-table th{background:var(--roster-inset);color:#d8dee8}.orbat-page .personnel-table th button span{color:#848e9e}.orbat-page .personnel-table td{border-color:var(--roster-line)}.orbat-page .personnel-table tbody tr:nth-child(odd){background:var(--roster-panel)}.orbat-page .personnel-table tbody tr:nth-child(2n){background:var(--roster-raised)}.orbat-page .personnel-table tbody tr:hover,.orbat-page .personnel-table tbody tr:focus-within{background:var(--roster-hover)}.orbat-page .table-photo,.orbat-page .avatar-initials{background:var(--roster-raised);color:#dde3ec}.orbat-page .personnel-table .status-pill.active{color:#a4dfba;background:#152820;border-color:#38664e}.orbat-page .personnel-table .status-pill.reserve{color:#ead092;background:#2b2417;border-color:#776039}.orbat-page .personnel-table .status-pill.leave{color:#aecdf5;background:#172538;border-color:#3e6086}.orbat-page .personnel-table .status-pill.departed{color:#c2c8d2;background:#23252b;border-color:#565d6a}.orbat-page .roster-foot,.orbat-page .empty-state>span,.orbat-page .empty-state p{color:var(--roster-muted)}.orbat-page .empty-state{border-color:var(--roster-line)}.orbat-page .empty-state a{border-color:var(--roster-accent);color:var(--roster-ink)}.orbat-page .battle-intro,.orbat-page .battle-rank,.orbat-page .battle-duty,.orbat-page .battle-empty,.orbat-page .battle-assignment-label>small{color:var(--roster-muted)}.orbat-page .battle-summary span{color:#c7ced9;border-color:var(--roster-line);background:var(--roster-inset)}.orbat-page .battle-unit{background:var(--roster-panel);border-color:var(--roster-line)}.orbat-page .battle-unit-header{background:var(--roster-banner);border-color:var(--roster-line)}.orbat-page .battle-unit-header>span,.orbat-page .battle-company{color:var(--roster-muted)}.orbat-page .battle-company{background:var(--roster-inset);border-color:var(--roster-line)}.orbat-page .battle-company small{color:var(--roster-muted)}.orbat-page .battle-assignment-label{background:var(--roster-raised);border-color:var(--roster-line)}.orbat-page .battle-assignment-label>span{color:var(--roster-accent)}.orbat-page .battle-person{color:var(--roster-ink);border-color:var(--roster-line)}.orbat-page .battle-person:hover,.orbat-page .battle-person:focus-visible{background:var(--roster-hover)}.orbat-page .battle-status{color:#ead092}.orbat-page .battle-empty{border-color:var(--roster-line)}.orbat-page .battle-members{box-shadow:inset 0 -1px 0 var(--roster-line)}.orbat-page .battle-subunit+.battle-subunit,.orbat-page .battle-assignment+.battle-subunit{border-color:var(--roster-line)}.orbat-page .comms-table th{background:var(--roster-inset);color:#d8dee8}.orbat-page .comms-table td{border-color:var(--roster-line);color:var(--roster-ink)}.orbat-page :is(button,a,input,select):focus-visible{outline-color:var(--roster-accent)}.record-dialog::backdrop{background:#050609eb}.record-close{background:var(--roster-inset);border-color:var(--roster-edge);color:var(--roster-ink)}.record-paper{--record-line:var(--roster-line);--record-muted:var(--roster-muted);background:var(--roster-panel);color:var(--roster-ink);border-color:var(--roster-edge)}.record-paper .record-top{border-color:var(--roster-line)}.record-paper .section-bar{background:var(--roster-banner);color:var(--roster-ink);border-top-color:var(--roster-strong);border-bottom-color:var(--roster-line)}.record-paper .record-cell{background:var(--roster-panel);border-color:var(--roster-line)}.record-paper .record-cell>span{color:#bac3d2}.record-paper .portrait-box{background:var(--roster-panel);border-color:var(--roster-line)}.record-paper .portrait-box>.record-photo-placeholder{background:var(--roster-raised);color:#acb9c9;filter:none;flex:auto;justify-content:center;align-items:center;width:100%;min-height:0;padding:18px 10px;display:flex}.record-photo-placeholder-copy{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.record-photo-placeholder-copy>b{font:700 28px/1 var(--sans);letter-spacing:-.02em}.record-photo-placeholder-copy>span{font:400 7px/1.5 var(--mono);letter-spacing:.16em;color:var(--roster-muted)}@media (max-width:767px){.record-paper .portrait-box>.record-photo-placeholder{flex:none;width:100px;height:135px;padding:12px 8px}}.record-paper .portrait-unit,.record-medals{border-color:var(--roster-line)}.record-paper .medal-rack,.record-paper .record-badge{background:var(--roster-raised);border-color:var(--roster-line)}.record-paper .record-badge{width:142px;height:82px;padding:7px}.record-paper .record-badge img{object-fit:contain;width:128px;height:64px}.record-award-columns>section+section,.record-history-columns>section+section{border-color:var(--roster-line)}.record-paper .record-bottom,.record-paper .record-bottom button{border-color:var(--roster-edge)}.record-paper .record-bottom button:enabled:hover{background:var(--roster-hover);border-color:var(--roster-accent)}.login-card,.editor-panel,.summary-cards>div{background:var(--roster-panel);border-color:var(--roster-line)}.admin-table th{background:var(--roster-banner);color:var(--roster-ink)}.admin-table td{background:var(--roster-panel)}.admin-table tr:nth-child(2n) td{background:var(--roster-raised)}.admin-table td button,.secondary-button,.upload-box{border-color:var(--roster-edge)}.form-grid input,.form-grid select,.form-grid textarea,.confirm-dialog textarea{background:var(--roster-inset);color:var(--roster-ink);border-color:var(--roster-line)}input::placeholder,textarea::placeholder{color:#7f8999;opacity:1}input[type=checkbox]{accent-color:var(--roster-accent)}.primary-button{background:var(--roster-primary);color:#fff;border-color:var(--roster-edge)}.primary-button:hover{background:var(--roster-primary-hover);border-color:var(--roster-accent)}.secondary-button:hover,.admin-table td button:hover,.grant-row button:hover{background:var(--roster-hover);border-color:var(--roster-accent)}.catalog-tabs [aria-pressed=true],.person-tabs [aria-pressed=true]{background:var(--roster-hover);color:var(--roster-ink);border-color:var(--roster-accent)}.grant-row{background:var(--roster-inset)}.grant-row button{border-color:var(--roster-edge)}.confirm-dialog{background:var(--roster-raised);border-color:var(--roster-strong)}.confirm-dialog::backdrop{background:#050609d9}.alert{background:var(--roster-hover);border-color:var(--roster-edge);color:var(--roster-ink)}.error-alert{color:#ffc1ce;background:#351a24;border-color:#843549}.toast{background:var(--roster-strong);color:#fff}:is(button,a,input,select,textarea):focus-visible{outline-color:var(--roster-accent)}.certificate-groups{gap:14px;margin:12px 0 24px;display:grid}.certificate-group{border:1px solid var(--roster-line);background:var(--roster-panel)}.certificate-group h5{background:var(--roster-banner);color:var(--roster-ink);letter-spacing:.04em;margin:0;padding:9px 12px;font-size:13px}.certificate-group ul{margin:0;padding:0;list-style:none}.certificate-group li{border-top:1px solid var(--roster-line);flex-wrap:wrap;justify-content:space-between;gap:6px 14px;padding:9px 12px;display:flex}.certificate-group strong{font-size:13px;font-weight:500}.certificate-group small{color:var(--roster-muted);font-size:11px}.certificate-group .empty-inline{margin:0;padding:12px}.award-picker-fields{border:0;min-width:0;margin:0;padding:0}.award-picker-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}.award-picker-toolbar input[type=search]{background:var(--roster-inset);border:1px solid var(--roster-line);min-width:180px;color:var(--roster-ink);flex:1;padding:9px 12px}.award-picker-toolbar>span{font:11px var(--mono);color:var(--roster-muted)}.picker-text-button{color:var(--roster-ink);background:0 0;border:0;padding:5px 0;font-size:12px;text-decoration:underline}.award-selection-groups{gap:14px;display:grid}.award-selection-group{border:1px solid var(--roster-line);background:var(--roster-inset)}.award-selection-group>header{background:var(--roster-banner);justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;display:flex}.award-selection-group h4{margin:0;font-size:14px}.award-selection-group h4 small{font:10px var(--mono);color:var(--roster-muted);margin-left:8px}.award-selection-group>header button{border:1px solid var(--roster-edge);color:var(--roster-ink);white-space:nowrap;background:0 0;padding:4px 8px;font-size:11px}.award-option-grid{background:var(--roster-line);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;display:grid}.award-picker-training .award-option-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.award-option{background:var(--roster-panel);cursor:pointer;align-items:center;gap:9px;min-height:46px;padding:10px 12px;font-size:13px;line-height:1.35;display:flex}.award-option.selected{background:var(--roster-hover);box-shadow:inset 3px 0 var(--roster-accent)}.award-option.unavailable{cursor:default;color:var(--roster-muted)}.award-option input{flex:none;width:15px;height:15px;margin:0}.award-option img{object-fit:contain;flex:none;width:42px;height:38px}.award-option>span{overflow-wrap:anywhere}.award-option>small{color:var(--roster-muted);font:9px var(--mono);white-space:nowrap;margin-left:auto}.award-batch-settings{flex-wrap:wrap;gap:16px;margin-top:18px;display:flex}.award-batch-settings label{gap:6px;min-width:180px;font-size:12px;display:grid}.award-batch-settings .award-reason{flex:1}.award-batch-settings input{border:1px solid var(--roster-line);background:var(--roster-inset);width:100%;color:var(--roster-ink);padding:9px 12px}.award-batch-scope{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:16px 0;display:flex}.award-everyone,.award-repeat{cursor:pointer;align-items:center;gap:10px;font-size:12px;display:flex}.award-everyone input,.award-repeat input{flex:none;width:16px;height:16px}.award-everyone span{gap:3px;display:grid}.award-everyone small{color:var(--roster-muted);font-size:11px}.award-batch-submit{border-top:1px solid var(--roster-line);justify-content:space-between;align-items:center;gap:14px;padding-top:16px;display:flex}.award-batch-submit>span{color:var(--roster-muted);font-size:12px}.award-result{border:1px solid var(--roster-edge);background:var(--roster-hover);margin-top:18px;padding:12px 14px;font-size:13px}.award-existing{border-top:1px solid var(--roster-line);margin-top:24px;padding-top:16px}.award-existing>summary{cursor:pointer;font-size:13px;font-weight:600}.award-existing>summary span{color:var(--roster-muted);margin-left:10px;font-size:11px;font-weight:400}.award-existing .grant-list{max-height:340px;overflow:auto}.award-existing .grant-row{padding:10px 0}.award-existing .grant-row img{object-fit:contain;width:42px;height:38px}.award-review{width:calc(100% - 30px);max-width:600px}.award-review ul{columns:2;max-height:260px;margin:14px 0;padding-left:20px;font-size:12px;line-height:1.7;overflow:auto}.award-review li{break-inside:avoid}@media (max-width:600px){.award-option-grid,.award-picker-training .award-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.award-option{flex-wrap:wrap;gap:7px;padding:10px 8px;font-size:12px}.award-option img{width:32px;height:30px}.award-option>span{flex:1;min-width:60px}.award-option>small{width:100%;padding-left:22px}.award-batch-settings label{width:100%}.award-batch-submit{flex-direction:column;align-items:stretch}.award-batch-submit button{width:100%}.award-picker-toolbar{gap:10px}.award-review ul{columns:1}}.site-header{height:var(--site-header-height);color:#fff;z-index:40;background:#000;border:0;gap:0;padding:1.5vw 4vw}.site-header .brand{isolation:isolate;flex-shrink:0;width:154px;height:57px;display:inline-flex}.site-header .brand-emblem{object-fit:contain;width:70px;height:auto;display:block}.site-header .brand-name{pointer-events:none;letter-spacing:normal;font-size:32px}.site-header .desktop-nav{white-space:nowrap;font:400 var(--site-nav-size)/1.8 "fairweather",sans-serif;letter-spacing:.06em;align-items:center;gap:1.4vw;display:flex}.site-header .desktop-nav a{background-repeat:no-repeat;border:0;padding:0;transition:color .2s}.site-header .desktop-nav a:hover,.site-header .desktop-nav a[aria-current=page]{background-image:linear-gradient(currentColor,currentColor);background-position:0 calc(100% - .1em);background-size:100% 1px}.site-header .menu-toggle{z-index:60;background:0 0;border:0;width:37px;height:37px;padding:0;display:none;position:relative}.menu-toggle span{background:#fff;width:35px;height:2px;transition:transform .22s,top .22s;display:block;position:absolute;right:0}.menu-toggle span:first-child{top:11px}.menu-toggle span:last-child{top:22px}.menu-toggle[aria-expanded=true] span:first-child{top:17px;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{top:17px;transform:rotate(-45deg)}.mobile-nav{z-index:35;background:var(--roster-chrome);padding:calc(var(--site-header-height) + 20px) 24px 45px;letter-spacing:.06em;flex-direction:column;justify-content:center;align-items:center;gap:16px;font:400 36px/1.25 fairweather,sans-serif;display:flex;inset:0;overflow-y:auto}.mobile-nav[hidden]{display:none}.mobile-nav a[aria-current=page]{color:var(--roster-accent)}.community-footer{background:var(--roster-chrome);color:var(--roster-ink)}.community-socials a:hover{color:var(--roster-accent)}.community-footer hr{border-color:var(--roster-line)}.record-paper .ribbon-rack b{background:var(--roster-inset)}@media (max-width:991px){:root{--site-nav-size:min(calc(.12vw + 16px),17.6px)}}@media (max-width:799px){.site-header .desktop-nav{display:none}.site-header .menu-toggle{display:block}}@media (max-width:767px){:root{--site-header-height:calc(37px + 12vw)}.site-header{padding:6vw}.site-header .brand{width:126px;height:37px}.site-header .brand-emblem{width:56px;height:37px}.site-header .brand-name{font-size:28px}}@media (max-width:575px){.mobile-nav{font-size:32px}}.management-filters{flex-wrap:wrap;align-items:end;gap:12px;margin:0 0 12px;display:flex}.management-filters label{min-width:0;color:var(--roster-muted);flex:150px;gap:6px;font-size:12px;display:grid}.management-filters input,.management-filters select{background:var(--roster-inset);width:100%;min-width:0;color:var(--roster-ink);border:1px solid var(--roster-line);font:13px var(--sans);padding:9px 11px}.management-filters>button{padding:8px 11px;font-size:12px}.admin-table tr.personnel-selected td{background:var(--roster-hover)}.review-recipients{border:1px solid var(--roster-line);background:var(--roster-inset);max-height:180px;padding:10px 24px;overflow-y:auto}.review-recipients small{color:var(--roster-muted);font-size:11px}.award-review h4{margin-top:14px}.award-review{max-height:calc(100dvh - 40px);overflow-y:auto}.management-filters input:focus-visible,.management-filters select:focus-visible{outline:2px solid var(--roster-accent);outline-offset:2px}.template-source{flex-wrap:wrap;align-items:end;gap:12px;margin:16px 0 20px;display:flex}.template-source>label{flex:240px;gap:6px;font-size:13px;font-weight:600;display:grid}.template-source select{background:var(--roster-inset);width:100%;min-width:0;color:var(--roster-ink);border:1px solid var(--roster-line);font:14px var(--sans);padding:10px 12px}.template-source>button{padding:10px 12px;font-size:12px}.template-preview{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px 0;display:grid}.template-preview dt{font:10px var(--mono);color:var(--roster-muted);margin-bottom:6px}.template-preview dd{overflow-wrap:anywhere;margin:0;font-size:13px}.template-active{align-items:center;gap:9px;margin:22px 0;font-size:13px;display:flex}.template-active input{width:16px;height:16px;accent-color:var(--roster-primary-hover)}.template-warning{color:#ffbc88;margin:10px 0;font-size:12px}.admin-table small.template-warning{color:#ffbc88;display:block}@media (max-width:767px){.template-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.template-source{gap:10px}.template-source>label{flex-basis:100%}.management-filters{gap:10px}.management-filters label{flex-basis:calc(50% - 10px)}}.plain-fields,.login-form fieldset{border:0;min-width:0;margin:0;padding:0}.login-form{margin:24px 0 14px}.login-form fieldset{gap:18px;display:grid}.login-form label,.password-field>label{gap:6px;font-size:13px;font-weight:600;display:grid}.login-form input,.password-field input{border:1px solid var(--roster-line);background:var(--roster-inset);width:100%;min-width:0;color:var(--roster-ink);font:14px var(--sans);border-radius:0;padding:10px 12px}.password-field{gap:7px;min-width:0;display:grid}.password-input{align-items:stretch;gap:8px;min-width:0;display:flex}.password-input>input{flex:1;min-width:0}.password-input>button{flex:none;padding:8px 10px;font-size:11px}.password-tools{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.password-tools .secondary-button{padding:7px 11px;font-size:12px}.password-field>small,.account-security label>small{color:var(--roster-muted);font-size:11px;font-weight:400}.login-transfer{border-top:1px solid var(--roster-line);margin-top:26px;padding-top:16px}.login-transfer summary{cursor:pointer;color:var(--roster-muted);font-size:12px}.login-transfer p{font-size:13px}.login-transfer a{display:inline-block}.permission-choices{border:1px solid var(--roster-line);min-width:0;margin:24px 0 0;padding:14px}.permission-choices legend{padding:0 6px;font-size:14px;font-weight:600}.permission-choices p{color:var(--roster-muted);margin-bottom:14px;font-size:12px;line-height:1.6}.permission-choices label{align-items:start;gap:10px;padding:7px 0;font-size:13px;line-height:1.5;display:flex}.permission-choices input{flex-shrink:0;width:16px;height:16px;margin:2px 0 0}.recovery-notice{border:1px solid var(--roster-edge);background:var(--roster-hover);margin:22px 0;padding:16px 18px}.recovery-notice h4{font-size:15px}.recovery-notice p{color:var(--roster-muted);margin:8px 0 12px;font-size:12px;line-height:1.7}.recovery-notice code{overflow-wrap:anywhere;font:12px/1.8 var(--mono);background:var(--roster-inset);-webkit-user-select:all;user-select:all;margin-bottom:12px;padding:10px;display:block}@media (max-width:767px){.account-security .form-grid{grid-template-columns:1fr}.account-security .full{grid-column:auto}.permission-choices{padding:10px}.password-tools{gap:10px}.recovery-notice{padding:14px 12px}}.orbat-page .orbat-roster{--roster-gutter:max(16px,calc((100% - 1360px)/2));background:0 0;border:0;width:100%;max-width:none;margin:0 0 auto}.orbat-page .orbat-roster>.classification{background:var(--roster-strong);color:#fff;padding:7px 10px}.orbat-page .roster-banner,.orbat-page .roster-view-switch,.orbat-page .roster-content{padding-inline:var(--roster-gutter)}.orbat-page .table-scroll{border:0;border-radius:0}.orbat-page .personnel-table thead th{border-bottom:1px solid var(--roster-strong)}.orbat-page .personnel-table tbody tr.roster-divider{background:var(--roster-inset);cursor:default}.orbat-page .personnel-table tr.roster-divider td{border-top:1px solid var(--roster-strong);width:auto;height:auto;font:700 11px var(--sans);letter-spacing:.2em;color:var(--roster-ink);padding:10px 8px}.orbat-page .personnel-table tr.roster-subdivider td{border-top:1px solid var(--roster-line);font:700 10px var(--sans);letter-spacing:.2em;color:var(--roster-muted);padding:7px 8px 7px 22px}.orbat-page .personnel-table tr.roster-divider small,.orbat-page .roster-divider-count{font:400 10px var(--sans);letter-spacing:.12em;color:var(--roster-muted)}.orbat-page .roster-divider-count{float:right}.orbat-page .personnel-table tbody tr.inactive-row td{opacity:.6}*{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{display:none}.table-scroll{overscroll-behavior:contain;border-radius:8px;max-width:100%;max-height:65dvh;overflow:auto}.admin-table th,.personnel-table th{z-index:3;background:var(--roster-raised);position:sticky;top:0}.admin-table td:first-child,.personnel-table td:nth-child(3){z-index:1;box-shadow:1px 0 var(--roster-line);position:sticky;left:0}.admin-table th:first-child,.personnel-table th:nth-child(3){z-index:4;left:0}.admin-table td{padding:14px 16px;font-size:13px;line-height:1.6}.admin-table td small{font-size:11px;display:block}.admin-table td button,.primary-button,.secondary-button{border-radius:6px;min-height:38px;transition:background .15s,border-color .15s}.admin-table tr:hover td{background:var(--roster-hover)}.admin-table button:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--roster-accent);outline-offset:3px}.summary-cards{gap:16px;margin-bottom:24px}.summary-cards>div{background:var(--roster-panel);border-radius:10px;padding:18px 20px}.summary-cards b{color:var(--roster-ink);font-size:30px}.summary-cards span{font-size:9px;line-height:1.5}.editor-panel{background:var(--roster-panel);border-radius:10px;padding:26px}.editor-panel h3{font-size:22px}.form-grid{gap:20px}.form-grid label{color:var(--roster-ink);font-size:13px;line-height:1.5}.form-grid input,.form-grid select,.form-grid textarea,.management-filters input,.management-filters select{border-radius:6px;min-height:42px}.form-grid textarea{min-height:110px}.form-grid label>small{color:var(--roster-muted);font-size:11px;font-weight:400}.specialty-held{justify-content:space-between;gap:8px;display:flex}.specialty-held button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.sticky-form-actions{z-index:5;background:var(--roster-raised);border:1px solid var(--roster-line);border-radius:8px;gap:10px;padding:14px 16px;position:sticky;bottom:0;box-shadow:0 -6px 20px #050b1420}.form-save-state{color:var(--roster-muted);margin-right:auto;font-size:11px}.sticky-form-actions .primary-button{margin-left:auto}.sticky-form-actions a{margin-left:0}.field-error{color:#ffb1ba;margin-top:5px;font-size:12px;font-weight:400;line-height:1.5;display:block}.field-error-empty{display:none}[aria-invalid=true]{border-color:#e57889!important;outline-color:#e57889!important}.loading-panel{border:1px solid var(--roster-line);background:var(--roster-panel);min-height:170px;color:var(--roster-muted);border-radius:10px;align-content:center;gap:18px;padding:26px;font-size:13px;display:grid}.loading-skeleton{background:linear-gradient(90deg,var(--roster-inset),var(--roster-raised));width:45%;height:16px;box-shadow:0 30px var(--roster-inset);border-radius:4px}.search-select{width:100%;min-width:0;font-weight:400;position:relative}.search-select>button{border:1px solid var(--roster-line);background:var(--roster-inset);width:100%;min-height:42px;color:var(--roster-ink);text-align:left;font:13px var(--sans);border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.search-select>button>span{color:var(--roster-muted)}.search-select-popover{z-index:15;border:1px solid var(--roster-edge);background:var(--roster-raised);border-radius:8px;min-width:220px;padding:8px;position:absolute;top:calc(100% + 5px);left:0;right:0;box-shadow:0 12px 30px #0007}.search-select-popover>input{border:1px solid var(--roster-line);background:var(--roster-inset);width:100%;min-height:38px;color:var(--roster-ink);border-radius:5px;padding:8px 10px;font-size:13px}.search-select-options{max-height:240px;margin-top:7px;overflow:auto}.search-select-options>button{text-align:left;width:100%;color:var(--roster-ink);background:0 0;border:0;border-radius:4px;padding:9px 10px;font-size:13px;line-height:1.5;display:block}.search-select-options>button.highlighted,.search-select-options>button[aria-selected=true]{background:var(--roster-hover)}.search-select-options small{color:var(--roster-muted);font-size:10px;display:block}.search-select-options p{color:var(--roster-muted);padding:10px;font-size:12px}.template-source>.search-select,.template-source>label{min-width:0}.template-preview{background:var(--roster-inset);border:1px solid var(--roster-line);border-radius:7px;padding:16px}.permission-choices,.recovery-notice,.confirm-dialog{border-radius:8px}.management-status{font:10px var(--mono);border:1px solid var(--roster-line);border-radius:4px;align-items:center;gap:6px;padding:4px 8px;display:inline-flex}.management-status.active{color:#a4ddbc;background:#163225}.management-status.archived{color:var(--roster-muted);background:var(--roster-inset)}.alert{border-radius:7px;font-size:13px;line-height:1.6}.alert button{min-height:32px;margin-left:12px}.toast{border-radius:8px;max-width:calc(100vw - 32px);box-shadow:0 8px 30px #0006}@media (max-width:767px){.summary-cards>div{padding:13px}.summary-cards span{font-size:8px}.summary-cards b{font-size:26px}.editor-panel{padding:18px 14px}.form-grid{gap:16px}.sticky-form-actions{gap:8px;padding:12px;bottom:0}.form-save-state{flex-basis:100%}.sticky-form-actions .primary-button{margin-left:0}.table-scroll{max-height:65dvh}.search-select-popover{min-width:0}.primary-button,.secondary-button{min-height:42px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.portal-ui{--p-bg:#0b0f15;--p-panel:#11161e;--p-raised:#171e28;--p-line:#222b37;--p-line-soft:#19212b;--p-active:#1d2735;--p-pop:#1a222e;--p-pop-line:#2c3746;--p-text:#e8edf4;--p-muted:#8e9aab;--p-faint:#6b7788;--p-accent:#7cb0ee;--p-primary:#2f6fb8;--p-primary-h:#3a7cc7;--p-ok:#72d4a2;--p-warn:#efc16b;--p-bad:#ef8f8f;--p-ease:cubic-bezier(.2,.7,.2,1);--p-sans:var(--portal-sans,"Geist"),system-ui,sans-serif;--p-mono:var(--portal-mono,"Geist Mono"),ui-monospace,monospace;--roster-canvas:var(--p-bg);--roster-panel:var(--p-panel);--roster-raised:var(--p-raised);--roster-line:var(--p-line);--roster-ink:var(--p-text);--roster-muted:var(--p-muted);--roster-accent:var(--p-accent);--roster-hover:var(--p-active);--roster-chrome:var(--p-panel);--roster-inset:var(--p-bg);--roster-banner:var(--p-panel);--roster-strong:var(--p-pop-line);--roster-edge:var(--p-pop-line);--roster-primary:var(--p-primary);--roster-primary-hover:var(--p-primary-h);--paper:var(--p-bg);--ink:var(--p-text);--line:var(--p-line);--muted:var(--p-muted);--olive:var(--p-primary);--sans:var(--p-sans);--mono:var(--p-mono);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--p-bg);color:var(--p-text);font:14px/1.45 var(--p-sans)}.portal-ui .record-paper{--sans:"Archivo Narrow","Arial Narrow",sans-serif;--mono:"Roboto Mono",monospace}.portal-ui .record-paper a{color:inherit}.portal-ui a{color:var(--p-accent)}.portal-ui a:hover{color:#a9cbf3}.portal-ui :is(button,a,summary,input,select,textarea):focus-visible{outline:2px solid var(--p-accent);outline-offset:2px}.portal-ui ::placeholder{color:var(--p-faint);opacity:1}.portal-shell{grid-template-columns:256px minmax(0,1fr);min-height:100dvh;display:grid}.portal-side{background:var(--p-panel);border-right:1px solid var(--p-line);flex-direction:column;height:100dvh;display:flex;position:sticky;top:0;overflow:hidden}.portal-brand{align-items:center;gap:10px;padding:18px 16px 14px 20px;display:flex}.portal-brand>div,.portal-user>div,.portal-topbar>div{flex:1;min-width:0;display:grid}.portal-brand b,.portal-topbar b{letter-spacing:.02em;font-size:14px;font-weight:600}.portal-brand small,.portal-topbar small{color:var(--p-muted);font-size:11.5px}.portal-mark{background:var(--p-primary);width:28px;height:28px;font:600 12px var(--p-mono);color:#fff;border-radius:7px;flex:none;place-items:center;display:grid}.portal-close{display:none}.portal-user{border:1px solid var(--p-line);background:var(--p-bg);border-radius:10px;align-items:center;gap:10px;margin:0 12px;padding:10px;display:flex}.portal-user b{overflow-wrap:anywhere;font-size:13.5px;font-weight:500}.portal-user small{color:var(--p-muted);font-size:12px}.portal-avatar{width:32px;height:32px;color:var(--p-text);background:#26354a;border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:500;display:grid}.portal-scope{background:var(--p-bg);border:1px solid var(--p-line);border-radius:9px;grid-template-columns:1fr 1fr;gap:3px;margin:14px 12px 4px;padding:3px;display:grid}.portal-scope button{height:32px;color:var(--p-muted);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:500;transition:background .2s,color .2s;display:flex}.portal-scope button:hover:enabled{color:var(--p-text)}.portal-scope button[aria-pressed=true]{background:var(--p-active);color:var(--p-text);box-shadow:0 1px 2px #0000004d}.portal-scope b{min-width:18px;height:18px;color:var(--p-accent);font:600 11px/18px var(--p-mono);text-align:center;background:#7cb0ee33;border-radius:9px;padding:0 5px}.portal-scope button[aria-pressed=true] b{background:var(--p-accent);color:var(--p-bg)}.portal-side nav{flex-direction:column;flex:1;gap:12px;min-height:0;padding:6px 12px 12px;display:flex;overflow:auto}.portal-nav-group{flex-direction:column;gap:1px;display:flex}.portal-nav-group h2{letter-spacing:.06em;color:var(--p-faint);margin:0;padding:8px 10px 6px;font-size:11px;font-weight:500}.portal-nav-group button{color:#a3aebd;text-align:left;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:34px;padding:0 10px;font-size:13.5px;transition:background .15s,color .15s;display:flex}.portal-nav-group button:hover:enabled{background:var(--p-raised);color:var(--p-text)}.portal-nav-group button[aria-current=page]{background:var(--p-active);color:var(--p-text);font-weight:500}.portal-ui .nav-count{min-width:20px;height:20px;color:var(--p-accent);font:500 11.5px/20px var(--p-mono);text-align:center;background:#7cb0ee29;border-radius:10px;padding:0 6px}.portal-side-footer{border-top:1px solid var(--p-line);flex-direction:column;gap:1px;padding:10px 12px 12px;font-size:13px;display:flex}.portal-side-footer a,.portal-logout{color:var(--p-muted);text-align:left;background:0 0;border:0;border-radius:6px;padding:7px 10px;font-size:13px;display:block}.portal-side-footer a:hover{background:var(--p-raised);color:var(--p-text)}.portal-logout{color:#e58f8f}.portal-logout:hover:enabled{color:#f2a9a9;background:#e58f8f14}.portal-overlay,.portal-topbar{display:none}.portal-body{flex-direction:column;min-width:0;display:flex}.portal-main{box-sizing:border-box;flex:1;width:100%;min-width:0;max-width:1240px;margin:0 auto;padding:28px 36px 40px}.portal-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:20px;display:flex}.portal-head>div:first-child{flex-direction:column;gap:4px;min-width:0;display:flex}.portal-head-title{flex-wrap:wrap;align-items:baseline;gap:14px;display:flex}.portal-back{width:fit-content;color:var(--p-muted);background:0 0;border:0;padding:0;font-size:13px}.portal-back:hover:enabled{color:var(--p-text)}.portal-sub{color:var(--p-muted);font-size:13px}.portal-head h1{letter-spacing:-.01em;margin:0;font-size:24px;font-weight:600;line-height:1.2}.portal-head-actions{flex-wrap:wrap;gap:8px;display:flex}.portal-head-slot{display:contents}.portal-refreshing{color:var(--p-muted);align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.portal-refreshing:before{content:"";background:var(--p-accent);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #7cb0ee2e}.portal-ui :is(.primary-button,.secondary-button,.danger-button){min-height:38px;font:500 13.5px/1.2 var(--p-sans);letter-spacing:0;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.portal-ui .primary-button{border:1px solid var(--p-primary);background:var(--p-primary);color:#fff;padding:0 16px}.portal-ui .primary-button:hover:enabled{border-color:var(--p-primary-h);background:var(--p-primary-h)}.portal-ui .secondary-button{border:1px solid var(--p-line);background:var(--p-panel);color:var(--p-text)}.portal-ui .secondary-button:hover:enabled{border-color:var(--p-line);background:var(--p-raised)}.portal-ui .danger-button{color:#fff;background:#b8474a;border:1px solid #b8474a}.portal-ui .danger-button:hover:enabled{background:#c75356;border-color:#c75356}.portal-ui :is(.primary-button,.secondary-button,.danger-button):disabled{opacity:.5}.portal-ui .picker-text-button{color:var(--p-accent);background:0 0;border:0;padding:4px 0;font-size:13px;text-decoration:none}.portal-ui .picker-text-button:hover:enabled{text-decoration:underline}.portal-ui :is(input:not([type=checkbox],[type=radio],[type=file],[type=range]),select,textarea){box-sizing:border-box;border:1px solid var(--p-line);background-color:var(--p-bg);color:var(--p-text);font:14px/1.45 var(--p-sans);letter-spacing:0;border-radius:8px;outline:none;transition:border-color .15s,box-shadow .15s}.portal-ui :is(input:not([type=checkbox],[type=radio],[type=file],[type=range]),select){min-height:40px;padding:0 12px}.portal-ui textarea{min-height:96px;padding:10px 12px}.portal-ui select:not([multiple]){appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%238e9aab' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:10px 6px;padding-right:32px}.portal-ui :is(input:not([type=checkbox],[type=radio],[type=file],[type=range]),select,textarea):focus{border-color:var(--p-accent);box-shadow:0 0 0 3px #7cb0ee26}.portal-ui :is(input:not([type=checkbox],[type=radio],[type=file],[type=range]),select,textarea):focus-visible{outline:none}.portal-ui :is(input,select,textarea):disabled{opacity:.6}.portal-ui :is(input[type=checkbox],input[type=radio]){width:15px;height:15px;accent-color:var(--p-accent);margin:0}.portal-ui [aria-invalid=true]{box-shadow:0 0 0 3px #ef8f8f1a;border-color:#ef8f8f99!important}.portal-ui .field-error{color:var(--p-bad);font-size:12px;font-weight:400}.portal-ui :is(.form-grid label,.login-form label,.password-field>label,.management-filters label,.template-source>label,.confirm-dialog>label,.award-batch-settings label){font:500 12.5px/1.4 var(--p-sans);letter-spacing:0;color:var(--p-muted);flex-direction:column;gap:6px;display:flex}.portal-ui :is(.form-grid,.login-form,.account-security) label>small,.portal-ui .password-field>small{color:var(--p-faint);font-size:12px;font-weight:400}.portal-ui .form-grid{gap:16px}.portal-ui .form-actions{gap:8px;margin-top:20px}.portal-ui input[type=file]{color:var(--p-muted);font-size:13px}.portal-ui input[type=file]::file-selector-button{border:1px solid var(--p-line);background:var(--p-raised);height:36px;color:var(--p-text);font:500 13px var(--p-sans);cursor:pointer;border-radius:8px;margin-right:12px;padding:0 14px}.portal-ui .upload-box{border:1px dashed var(--p-line);background:var(--p-bg);border-radius:10px;gap:14px;padding:14px}.portal-ui .upload-box label{font:500 12.5px var(--p-sans);color:var(--p-muted);gap:8px;display:grid}.portal-ui .upload-box img{border-radius:6px}.portal-ui .upload-box button{color:var(--p-muted);font-size:13px}.portal-ui .search-select>button{border:1px solid var(--p-line);background:var(--p-bg);min-height:40px;color:var(--p-text);font:14px var(--p-sans);border-radius:8px;padding:0 12px}.portal-ui .search-select-popover{border:1px solid var(--p-pop-line);background:var(--p-pop);border-radius:10px;padding:6px;box-shadow:0 18px 40px #0000008c}.portal-ui .search-select-options>button{border-radius:7px;font-size:13px}.portal-ui .search-select-options>button:is(.highlighted,[aria-selected=true]){background:#243041}.portal-ui :is(.editor-panel,.loading-panel){border:1px solid var(--p-line);background:var(--p-panel);box-shadow:none;border-radius:12px;margin:0 0 16px;padding:20px}.portal-ui .editor-panel h3{letter-spacing:-.005em;margin:0 0 14px;font-size:16px;font-weight:600}.portal-main h3{margin:24px 0 10px;font-size:14.5px;font-weight:600}.portal-main h3:first-child{margin-top:0}.portal-main h3:has(+.table-scroll){border:1px solid var(--p-line);background:var(--p-panel);border-bottom:0;border-radius:12px 12px 0 0;margin-bottom:0;padding:14px 16px}.portal-main h3+.table-scroll{border-radius:0 0 12px 12px}.portal-ui .help-text{color:var(--p-muted);margin:0 0 12px;font-size:13px;line-height:1.55}.portal-ui .sticky-form-actions{border:1px solid var(--p-pop-line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#171e28eb;border-radius:12px;margin-top:20px;padding:10px 10px 10px 16px;bottom:16px;box-shadow:0 18px 40px #00000073}.portal-ui .form-save-state{color:var(--p-muted);align-items:center;gap:8px;font-size:13px;display:flex}.portal-ui .form-save-state:before{content:"";background:var(--p-accent);border-radius:50%;width:7px;height:7px}.portal-ui .loading-panel{min-height:160px;color:var(--p-muted)}.portal-ui .loading-skeleton{background:var(--p-raised);box-shadow:0 30px #141a22}.portal-ui .summary-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px}.portal-ui .summary-cards>div{border:1px solid var(--p-line);background:var(--p-panel);border-radius:12px;padding:16px 18px}.portal-ui .summary-cards span{font:12.5px/1.3 var(--p-sans);letter-spacing:0;color:var(--p-muted)}.portal-ui .summary-cards b{font:500 28px/1.2 var(--p-sans);font-variant-numeric:tabular-nums;color:var(--p-text);margin-top:6px}.portal-ui :is(.catalog-tabs,.person-tabs){border:1px solid var(--p-line);background:var(--p-bg);border-radius:9px;flex-wrap:wrap;gap:3px;width:fit-content;max-width:100%;margin:0 0 16px;padding:3px;display:flex}.portal-ui :is(.catalog-tabs,.person-tabs) button{min-height:32px;color:var(--p-muted);font:500 13px var(--p-sans);background:0 0;border:0;border-radius:6px;padding:0 12px;transition:background .15s,color .15s}.portal-ui :is(.catalog-tabs,.person-tabs) button:hover:enabled{color:var(--p-text)}.portal-ui :is(.catalog-tabs,.person-tabs) [aria-pressed=true]{background:var(--p-active);color:var(--p-text);border:0}.portal-ui .table-scroll{border:1px solid var(--p-line);background:var(--p-panel);border-radius:12px}.portal-ui .admin-table{border-collapse:separate;border-spacing:0;font:14px/1.45 var(--p-sans)}.portal-ui .admin-table th{border-bottom:1px solid var(--p-line);background:var(--p-panel);height:40px;color:var(--p-faint);font:500 11.5px var(--p-sans);letter-spacing:.05em;text-align:left;white-space:nowrap;padding:0 16px}.portal-ui .admin-table td,.portal-ui .admin-table tr:nth-child(2n) td{border-bottom:1px solid var(--p-line-soft);background:var(--p-panel);vertical-align:middle;padding:12px 16px;font-size:13.5px;line-height:1.45}.portal-ui .admin-table tbody tr:last-child td{border-bottom:0}.portal-ui .admin-table tbody tr:hover td{background:var(--p-raised)}.portal-ui .admin-table tr.personnel-selected td{background:#16202b}.portal-ui .admin-table td b{color:var(--p-text);font-weight:500}.portal-ui .admin-table td small{font:12px var(--p-mono);color:var(--p-muted);margin-top:2px;display:block}.portal-ui .admin-table td button:not([class]){min-height:32px;color:var(--p-accent);font:500 13px var(--p-sans);white-space:nowrap;background:0 0;border:0;padding:0}.portal-ui .admin-table td button:not([class]):hover:enabled{color:#a9cbf3;background:0 0}.portal-ui .admin-table td :is(.primary-button,.secondary-button,.danger-button){border-radius:7px;min-height:32px;padding:0 12px;font-size:13px}.portal-ui .pl-filters{border-bottom:1px solid var(--p-line);flex-wrap:wrap;align-items:center;gap:10px;padding:14px 16px;display:flex}.portal-ui .pl-search{flex:260px;position:relative}.portal-ui .pl-search:before{content:"";box-sizing:border-box;border:1.5px solid var(--p-faint);pointer-events:none;border-radius:50%;width:11px;height:11px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.portal-ui .pl-search input{width:100%;height:38px;min-height:38px;padding-left:32px}.portal-ui .pl-filters>select{flex:130px;max-width:180px;height:38px;min-height:38px;font-size:13.5px}.portal-ui .pl-filters>select:first-of-type{flex-basis:150px;max-width:220px}.portal-ui .pl-options{flex-wrap:wrap;flex-basis:100%;align-items:center;gap:8px 20px;display:flex}.portal-ui .pl-clear{min-height:28px;margin-left:auto}.portal-ui .pl-selection{border-bottom:1px solid var(--p-line);background:#7cb0ee14;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:10px 16px;font-size:13px;display:flex}.portal-ui .pl-selection b{color:var(--p-accent);font-weight:500}.portal-ui .pl-selection small{color:var(--p-muted)}.portal-ui .pl-text{color:var(--p-text);background:0 0;border:0;padding:0;font-size:13px}.portal-ui .pl-text.muted{color:var(--p-muted)}.portal-ui .pl-text:hover:enabled{text-decoration:underline}.portal-ui .pl-selection .primary-button{border-radius:7px;min-height:32px;margin-left:auto;padding:0 12px;font-size:13px}.portal-ui .pl-limit{flex-basis:100%}.portal-ui .pl-row{border-bottom:1px solid var(--p-line-soft);grid-template-columns:44px minmax(0,2.2fr) minmax(0,1.5fr) 120px 140px 140px;align-items:center;min-height:56px;padding:0 16px;transition:background .15s;display:grid}.portal-ui .pl-nosel .pl-row{grid-template-columns:minmax(0,2.2fr) minmax(0,1.5fr) 120px 140px 140px}.portal-ui .pl-row:not(.pl-head):hover{background:var(--p-raised)}.portal-ui .pl-row.selected{background:#7cb0ee0f}.portal-ui .pl-head{border-bottom-color:var(--p-line);letter-spacing:.05em;min-height:40px;color:var(--p-faint);font-size:11.5px;font-weight:500}.portal-ui :is(.pl-person,.pl-rank){flex-direction:column;min-width:0;display:flex}.portal-ui .pl-person>div{align-items:center;gap:8px;min-width:0;display:flex}.portal-ui .pl-name{overflow-wrap:anywhere;font-size:14px;font-weight:500}.portal-ui .pl-archived{color:#9aa4b2;white-space:nowrap;background:#9aa4b21f;border-radius:10px;height:20px;padding:0 8px;font-size:11.5px;line-height:20px}.portal-ui .pl-meta{font:12px var(--p-mono);color:var(--p-muted);margin-top:2px}.portal-ui .pl-r{font:500 13px var(--p-mono)}.portal-ui .pl-u{color:var(--p-muted);margin-top:2px;font-size:12.5px}.portal-ui .pl-act{text-align:right}.portal-ui .pl-foot{color:var(--p-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;font-size:13px;display:flex}.portal-ui .pl-foot>div{gap:6px;display:flex}.portal-ui .pl-foot button{border:1px solid var(--p-line);background:var(--p-raised);height:34px;color:var(--p-text);border-radius:7px;padding:0 12px;font-size:13px}.portal-ui .pl-foot button:disabled{color:#5a6573;opacity:1;background:0 0}@media (max-width:999px),(min-width:1100px) and (max-width:1255px){.portal-ui .pl-head{display:none}.portal-ui .pl-row{grid-template-columns:32px auto auto minmax(0,1fr);grid-template-areas:"sel person person rank""sel st pub act";align-items:start;gap:6px 8px;padding:14px 16px 12px 12px}.portal-ui .pl-nosel .pl-row{grid-template-columns:auto auto minmax(0,1fr);grid-template-areas:"person person rank""st pub act";padding-left:16px}.portal-ui .pl-sel{grid-area:sel;justify-content:center;padding-top:2px;display:flex}.portal-ui .pl-sel input{width:18px;height:18px}.portal-ui .pl-person{grid-area:person}.portal-ui .pl-rank{text-align:right;grid-area:rank;align-items:flex-end}.portal-ui .pl-st{grid-area:st;margin-top:6px}.portal-ui .pl-pub{grid-area:pub;margin-top:6px}.portal-ui .pl-act{grid-area:act;justify-self:end;margin-top:2px}.portal-ui .pl-act .p-link{min-height:36px}}@media (max-width:759px){.portal-ui .pl-filters>select,.portal-ui .pl-filters>select:first-of-type{max-width:none}}.portal-ui :is(.rq-pending,.rq-done){table-layout:fixed}.portal-ui :is(.rq-pending,.rq-done) th:first-child{width:92px}.portal-ui .rq-pending th:nth-child(3){width:130px}.portal-ui .rq-pending th:nth-child(6){width:176px}.portal-ui .rq-done th:nth-child(3){width:120px}.portal-ui .rq-done th:nth-child(6){width:112px}.portal-ui :is(.rq-pending,.rq-done) td{padding-top:12px;padding-bottom:12px}.portal-ui .rq-change{font-weight:500}.portal-ui .rq-detail{color:var(--p-muted);white-space:pre-wrap;margin-top:3px;font-size:12.5px;font-weight:400;display:block}.portal-ui .rq-actions{justify-content:flex-end;gap:6px;display:flex}.portal-ui .rq-actions .primary-button{border-radius:7px;min-height:32px;padding:0 12px;font-size:13px}@media (max-width:999px),(min-width:1100px) and (max-width:1255px){.portal-ui .rq-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:4px;display:grid}.portal-ui .rq-actions :is(.primary-button,.p-btn-reject){border-radius:8px;min-height:44px;font-size:14px}}.portal-ui .management-status{height:24px;font:500 12.5px/1 var(--p-sans);letter-spacing:0;text-transform:none;white-space:nowrap;border:1px solid #0000;border-radius:12px;align-items:center;padding:0 10px;display:inline-flex}.portal-ui .management-status.active{color:#72d4a2;background:#72d4a21f}.portal-ui .management-status.reserve{color:#a9b8ff;background:#a9b8ff1f}.portal-ui .management-status:is(.leave,.pending){color:#efc16b;background:#efc16b1f}.portal-ui .management-status:is(.departed,.archived){color:#9aa4b2;background:#9aa4b21f}.portal-ui .management-status.rejected{color:#ef8f8f;background:#ef8f8f1f}.portal-ui .management-status.published{color:#cfe2f8;background:#7cb0ee1f;border-color:#7cb0ee40}.portal-ui .management-status.draft{color:#8e9aab;background:0 0;border-color:#2c3644}.portal-ui .warning-level{height:24px;font:500 12.5px/1 var(--p-sans);letter-spacing:0;text-transform:none;border:0;border-radius:12px;align-items:center;padding:0 10px;display:inline-flex}.portal-ui .warning-level.verbal{color:#efc16b;background:#efc16b1f}.portal-ui .warning-level.written{color:#f3a86b;background:#f3a86b1f}.portal-ui .warning-level.final{color:#fff;background:#b8474a}.portal-ui .portal-new{color:var(--p-accent);font:600 10px var(--p-mono);letter-spacing:.06em;background:#7cb0ee29;border-radius:10px;padding:2px 7px}.portal-ui .alert{color:#cfe2f8;background:#7cb0ee14;border:1px solid #7cb0ee40;border-radius:9px;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 16px;padding:11px 12px;font-size:13px;line-height:1.5;display:flex}.portal-ui .alert:before{content:"i";width:18px;height:18px;color:var(--p-accent);background:#7cb0ee2e;border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:600;display:grid}.portal-ui .error-alert{color:#f4c2c2;background:#ef8f8f14;border-color:#ef8f8f47}.portal-ui .error-alert:before{content:"!";color:var(--p-bad);background:#ef8f8f2e}.portal-ui .alert button{min-height:30px;color:inherit;background:0 0;border:1px solid;border-radius:7px;margin-left:auto;padding:0 10px;font-size:12.5px;text-decoration:none}.portal-ui .attendance-alert{border-width:1px;border-radius:9px;gap:4px;padding:11px 14px}.portal-ui .attendance-alert b{font:600 13px var(--p-sans);letter-spacing:0;text-transform:none}.portal-ui .attendance-alert.short{color:#f4c2c2;background:#ef8f8f14;border-color:#ef8f8f47}.portal-ui .attendance-alert.risk{color:#f6dfa8;background:#efc16b14;border-color:#efc16b47}.portal-ui .attendance-alert.portal-results{color:#c5efd9;background:#72d4a214;border-color:#72d4a247}.portal-ui .toast{z-index:120;max-width:min(440px,100vw - 24px);color:var(--p-text);animation:portal-toast .3s var(--p-ease);background:#1c2633;border:1px solid #2c3a4c;border-radius:10px;align-items:center;gap:10px;padding:12px 16px;font-size:13.5px;display:flex;position:fixed;bottom:20px;right:24px;box-shadow:0 16px 40px #00000080}.portal-ui .toast:before{content:"✓";width:18px;height:18px;color:var(--p-ok);background:#72d4a229;border-radius:50%;flex:none;place-items:center;font-size:11px;display:grid}@keyframes portal-toast{0%{opacity:0;transform:translateY(8px)}}.portal-ui .confirm-dialog{box-sizing:border-box;border:1px solid var(--p-line);background:var(--p-panel);width:calc(100vw - 32px);max-width:440px;color:var(--p-text);border-radius:14px;padding:22px;box-shadow:0 30px 80px #0009}.portal-ui .confirm-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#05080ca8}.portal-ui .confirm-dialog h3{margin:0 0 4px;font-size:17px;font-weight:600}.portal-ui .confirm-dialog p{color:var(--p-muted);margin:4px 0 0;font-size:13.5px;line-height:1.5}.portal-ui .confirm-note,.portal-ui .confirm-dialog .confirm-note{border:1px solid var(--p-line-soft);background:var(--p-bg);color:var(--p-muted);border-radius:9px;gap:10px;margin:16px 0 0;padding:10px 12px;font-size:13px;display:flex}.portal-ui .confirm-note:before{content:"i";color:var(--p-accent);font-weight:600}.portal-ui .confirm-dialog>label{margin-top:16px}.portal-ui .confirm-dialog textarea{margin-top:0}.portal-ui .confirm-dialog .form-actions{flex-direction:row-reverse;justify-content:flex-start;margin-top:18px}.portal-ui .attendance .attendance-scroll{border:1px solid var(--p-line);background:var(--p-panel);border-radius:12px}.portal-ui .attendance-table thead th{border-bottom:1px solid var(--p-line);background:var(--p-panel);color:var(--p-faint);font:500 11.5px var(--p-sans);letter-spacing:.05em}.portal-ui .attendance-table tbody td{border-bottom:1px solid var(--p-line-soft);background:var(--p-panel)}.portal-ui .attendance-table tbody tr:hover td{background:var(--p-raised)}.portal-ui .attendance-table tbody .attendance-person{letter-spacing:0;text-transform:none}.portal-ui .attendance-cell{border:1px solid var(--p-line);min-width:88px;height:30px;color:var(--p-faint);font:600 11px var(--p-mono);letter-spacing:.06em;background:0 0;border-radius:7px;justify-content:center;align-items:center;padding:0 8px;transition:filter .15s;display:inline-flex}.portal-ui .attendance-cell.present{color:#72d4a2;background:#72d4a21f;border-color:#0000}.portal-ui .attendance-cell.absent{color:#ef8f8f;background:#ef8f8f1f;border-color:#0000}.portal-ui .attendance-cell.loa{color:#efc16b;background:#efc16b1f;border-color:#0000}.portal-ui .attendance-cell.earlier{color:#72d4a2;opacity:.75;background:0 0;border:1px dashed #72d4a266}.portal-ui .attendance-cell.manual:after{background:var(--p-warn);width:8px;height:8px;box-shadow:0 0 0 2px var(--p-panel);top:-3px;right:-3px}.portal-ui button.attendance-cell:hover:enabled{filter:brightness(1.18)}.portal-ui .attendance-meter{background:var(--p-raised);border-radius:3px;height:6px}.portal-ui .attendance-rate.met .attendance-meter i{background:var(--p-ok)}.portal-ui .attendance-rate.short .attendance-meter i{background:var(--p-bad)}.portal-ui .attendance-rate.risk .attendance-meter i{background:var(--p-warn)}.portal-ui .portal-trainings li{background:var(--p-bg);border-radius:10px}.portal-ui .grant-row{border:1px solid var(--p-line-soft);background:var(--p-bg);border-radius:8px;padding:10px 12px}.portal-ui .grant-row button{border:1px solid var(--p-line);min-height:30px;color:var(--p-muted);background:0 0;border-radius:7px;padding:0 10px;font-size:12.5px}.portal-ui .grant-row button:hover:enabled{border-color:var(--p-line);background:var(--p-raised);color:var(--p-text)}.portal-ui :is(.certificate-group,.award-selection-group,.template-preview,.permission-choices,.recovery-notice,.review-recipients,.award-result){border-radius:10px}.portal-ui :is(.certificate-group,.award-selection-group){overflow:hidden}.portal-ui :is(.certificate-group h5,.award-selection-group>header){background:var(--p-raised)}.portal-ui .award-option.selected{box-shadow:inset 2px 0 var(--p-accent)}.portal-ui .p-stack{flex-direction:column;gap:16px;min-width:0;display:flex}.portal-ui .p-card{border:1px solid var(--p-line);background:var(--p-panel);border-radius:12px;min-width:0;overflow:hidden}.portal-ui .p-card.p-open{overflow:visible}.portal-ui .p-card-head{border-bottom:1px solid var(--p-line);flex-wrap:wrap;align-items:center;gap:10px;padding:14px 16px;display:flex}.portal-ui .p-card-head :is(h2,h3){letter-spacing:0;background:0 0;border:0;margin:0;padding:0;font-size:14.5px;font-weight:600}.portal-ui .p-head-tools{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.portal-ui .p-count{font:500 12px var(--p-mono);color:var(--p-muted)}.portal-ui .p-count.warn{box-sizing:border-box;min-width:22px;height:22px;color:var(--p-warn);text-align:center;background:#efc16b24;border-radius:11px;padding:0 7px;line-height:22px}.portal-ui .p-card-body{padding:18px}.portal-ui .p-table{border-collapse:separate;border-spacing:0;width:100%;font:13.5px/1.45 var(--p-sans)}.portal-ui .p-table th{border-bottom:1px solid var(--p-line);height:40px;color:var(--p-faint);font:500 11.5px var(--p-sans);letter-spacing:.05em;text-align:left;white-space:nowrap;background:0 0;padding:0 16px}.portal-ui .p-table td{box-sizing:border-box;border-bottom:1px solid var(--p-line-soft);vertical-align:middle;overflow-wrap:anywhere;background:0 0;height:48px;padding:10px 16px;transition:background .15s}.portal-ui .p-table tbody tr:last-child td{border-bottom:0}.portal-ui .p-table tbody tr:hover td{background:var(--p-raised)}.portal-ui .p-table .p-right{text-align:right}.portal-ui .p-strong{color:var(--p-text);font-size:14px;font-weight:500}.portal-ui .p-text{color:var(--p-text);font-size:13.5px}.portal-ui .p-muted{color:var(--p-muted);font-size:13px}.portal-ui .p-mono{font:12.5px var(--p-mono);color:var(--p-muted)}.portal-ui .p-monoS{font:500 13px var(--p-mono);color:var(--p-text)}.portal-ui .p-sub{font:12px var(--p-mono);color:var(--p-muted);margin-top:2px;display:block}.portal-ui .management-status.info{color:#cfe2f8;background:#7cb0ee1f}.portal-ui .management-status.admin{color:#b4bfcd;background:#9aa4b21a}.portal-ui .p-link{min-height:32px;color:var(--p-accent);font:500 13px var(--p-sans);white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;padding:0;text-decoration:none;display:inline-flex}.portal-ui .p-link:hover:enabled,.portal-ui a.p-link:hover{color:#a9cbf3}.portal-ui .p-btn-ghost{border:1px solid var(--p-line);min-height:38px;color:var(--p-text);font:500 13.5px var(--p-sans);white-space:nowrap;background:0 0;border-radius:8px;justify-content:center;align-items:center;padding:0 16px;display:inline-flex}.portal-ui .p-btn-ghost:hover:enabled{background:var(--p-raised)}.portal-ui .p-btn-reject{min-height:32px;color:var(--p-bad);font:500 13px var(--p-sans);white-space:nowrap;background:0 0;border:1px solid #ef8f8f4d;border-radius:7px;justify-content:center;align-items:center;padding:0 12px;display:inline-flex}.portal-ui .p-btn-reject:hover:enabled{background:#ef8f8f14}.portal-ui .p-empty{text-align:center;flex-direction:column;align-items:center;gap:6px;padding:40px 20px;display:flex}.portal-ui .p-empty:before{content:"";border:1px dashed var(--p-line);border-radius:10px;width:40px;height:40px;margin-bottom:8px}.portal-ui .p-empty b{color:var(--p-text);font-weight:500}.portal-ui .p-empty span{color:var(--p-muted);font-size:13px}.portal-ui .p-empty button{margin-top:10px}.portal-ui .p-note{color:var(--p-muted);text-wrap:pretty;gap:10px;padding:14px 16px;font-size:13.5px;line-height:1.55;display:flex}.portal-ui .p-note:before{content:"i";width:18px;height:18px;color:var(--p-accent);background:#7cb0ee24;border-radius:50%;flex:none;place-items:center;margin-top:1px;font-size:11px;font-weight:600;display:grid}.portal-ui .p-stats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));display:grid}.portal-ui .p-stat{border-right:1px solid var(--p-line-soft);border-bottom:1px solid var(--p-line-soft);flex-direction:column;margin:0 -1px -1px 0;padding:16px 18px;display:flex}.portal-ui .p-stat>span{color:var(--p-muted);font-size:12.5px}.portal-ui .p-stat>b{font-variant-numeric:tabular-nums;margin-top:6px;font-size:26px;font-weight:500;line-height:1.25}.portal-ui .p-stat>small{color:var(--p-muted);margin-top:2px;font-size:12.5px}.portal-ui .p-kv{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.portal-ui .p-kv>div{border-bottom:1px solid var(--p-line-soft);flex-direction:column;gap:3px;min-width:0;padding:13px 18px;display:flex}.portal-ui .p-kv>div>span{color:var(--p-muted);font-size:12px}.portal-ui .p-kv>div>b{overflow-wrap:anywhere;font-size:14px;font-weight:500}.portal-ui .p-form{grid-template-columns:1fr 1fr;gap:16px;padding:18px;display:grid}.portal-ui .p-form .p-full,.portal-ui .p-form>.alert{grid-column:1/-1}.portal-ui .p-form>.alert{margin:0}.portal-ui .p-form-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.portal-ui .p-field{min-width:0;font:500 12.5px/1.4 var(--p-sans);color:var(--p-muted);flex-direction:column;gap:6px;display:flex}.portal-ui .p-field>small{color:var(--p-faint);font-size:12px;font-weight:400}.portal-ui .p-check{min-height:28px;color:var(--p-muted);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.portal-ui .p-docs{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;padding:16px;display:grid}.portal-ui .p-docs>a{border:1px solid var(--p-line-soft);background:var(--p-bg);color:var(--p-text);border-radius:10px;flex-direction:column;gap:10px;padding:16px;transition:border-color .15s,background .15s;display:flex}.portal-ui .p-docs>a:hover{color:var(--p-text);background:#0e131b;border-color:#33465f}.portal-ui .p-docs>a>span{color:var(--p-muted);font-size:12px}.portal-ui .p-docs>a>b{text-wrap:pretty;font-size:14.5px;font-weight:500;line-height:1.35}.portal-ui .p-docs>a>em{color:var(--p-accent);margin-top:auto;font-size:13px;font-style:normal;font-weight:500}.portal-ui .p-modal{box-sizing:border-box;border:1px solid var(--p-line);background:var(--p-panel);width:calc(100vw - 32px);max-width:480px;max-height:calc(100dvh - 32px);color:var(--p-text);border-radius:14px;padding:22px;overflow:auto;box-shadow:0 30px 80px #0009}.portal-ui .p-modal::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#05080ca8}.portal-ui .p-modal>h3{margin:0 0 16px;font-size:17px;font-weight:600}.portal-ui .p-modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.portal-ui .p-modal .form-grid{grid-template-columns:1fr}.portal-ui .p-modal .form-grid .full{grid-column:auto}.portal-ui .p-card-head input[type=search]{width:200px;height:34px;min-height:34px;font-size:13px}.portal-ui .p-tree{align-items:center;gap:10px;display:inline-flex}.portal-ui .p-thumb{object-fit:contain;flex:none;width:28px;height:28px}.portal-ui .p-clamp{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@media (max-width:999px),(min-width:1100px) and (max-width:1255px){.portal-ui .p-table thead{display:none}.portal-ui .p-table,.portal-ui .p-table tbody{display:block}.portal-ui .p-table tr{border-bottom:1px solid var(--p-line-soft);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 16px;padding:14px 16px;display:grid}.portal-ui .p-table tbody tr:last-child{border-bottom:0}.portal-ui .p-table td{text-align:left;border:0;height:auto;padding:0}.portal-ui .p-table tbody tr:hover td{background:0 0}.portal-ui .p-table td:first-child,.portal-ui .p-table td.p-wide{grid-column:1/-1}.portal-ui .p-table td[data-label]:before{content:attr(data-label);letter-spacing:.04em;color:var(--p-faint);margin-bottom:3px;font-size:11px;font-weight:500;display:block}.portal-ui .p-table .p-right{text-align:left}}@media (max-width:759px){.portal-ui .p-form{grid-template-columns:1fr}}.portal-login{box-sizing:border-box;background:radial-gradient(900px 520px at 50% -12%,#2f6fb829,#0000 62%);flex-direction:column;justify-content:center;align-items:center;gap:22px;min-height:100dvh;padding:40px 16px;display:flex}.portal-login>.loading-panel{width:100%;max-width:400px}.portal-login-brand{text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex}.portal-login-brand .portal-mark{border-radius:11px;width:44px;height:44px;margin-bottom:6px;font-size:17px;box-shadow:0 10px 30px #2f6fb859}.portal-login-brand b{letter-spacing:.03em;font-size:18px;font-weight:600}.portal-login-brand small{color:var(--p-muted);font-size:13px}.portal-ui .login-card{box-sizing:border-box;border:1px solid var(--p-line);background:var(--p-panel);border-radius:14px;width:100%;max-width:400px;margin:0;padding:20px;box-shadow:0 24px 60px #00000059}.portal-ui .login-card h1{font:600 17px/1.3 var(--p-sans);margin:0 0 6px}.portal-ui .login-scope+p{margin-top:14px}.portal-ui .login-card>p{color:var(--p-muted);margin:0;font-size:13px;line-height:1.55}.portal-ui .login-card>.alert{margin:14px 0 0}.portal-ui .login-card>small{color:var(--p-muted);margin-top:18px;font-size:12.5px;display:block}.portal-ui .login-scope{margin:0}.portal-ui .login-scope button{height:34px;font-size:13.5px}.portal-ui .login-form{margin:16px 0 0}.portal-ui .login-form fieldset{gap:16px}.portal-ui .login-card .login-form small{margin:0}.portal-ui .login-form .primary-button{border-radius:9px;width:100%;min-height:42px;font-size:14px}.portal-ui .password-input>button{min-height:40px;padding:0 12px;font-size:12.5px}.portal-ui .login-links{gap:16px;margin:14px 0 0}.portal-ui .login-transfer{border-color:var(--p-line);margin-top:18px}@media (max-width:1099px){.portal-shell{display:block}.portal-side{z-index:70;visibility:hidden;width:min(300px,86vw);height:100dvh;transition:transform .3s var(--p-ease),visibility 0s linear .3s;position:fixed;top:0;bottom:0;left:0;transform:translate(-104%)}.portal-side[data-open]{visibility:visible;transition:transform .3s var(--p-ease);transform:none;box-shadow:0 0 60px #0009}.portal-overlay{z-index:65;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#05080c99;display:block;position:fixed;inset:0}.portal-close{border:1px solid var(--p-line);width:36px;height:36px;color:var(--p-muted);background:0 0;border-radius:8px;flex:none;place-items:center;font-size:14px;display:grid}.portal-nav-group button{min-height:44px}.portal-topbar{z-index:20;border-bottom:1px solid var(--p-line);background:var(--p-panel);align-items:center;gap:12px;height:56px;padding:0 12px;display:flex;position:sticky;top:0}.portal-burger{border:1px solid var(--p-line);background:var(--p-bg);border-radius:9px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:4px;width:44px;height:44px;display:flex;position:relative}.portal-burger i{background:var(--p-text);border-radius:1px;width:16px;height:1.5px}.portal-burger span{background:var(--p-accent);width:7px;height:7px;box-shadow:0 0 0 2px var(--p-bg);border-radius:50%;position:absolute;top:8px;right:8px}.portal-main{padding:22px 20px 32px}}@media (max-width:759px){.portal-main{padding:18px 14px 28px}.portal-head h1{font-size:22px}.portal-ui .summary-cards{gap:8px}.portal-ui .summary-cards>div{padding:12px}.portal-ui .summary-cards b{font-size:22px}.portal-ui .editor-panel{padding:16px 14px}.portal-ui .toast{max-width:none;left:12px;right:12px}.portal-ui .sticky-form-actions{padding:10px 12px}}@media (prefers-reduced-motion:reduce){.portal-side,.portal-ui .toast{transition:none;animation:none}}.portal-ui .pe-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:16px;display:grid}.portal-ui .pe .person-tabs{margin:0}.portal-ui .pe-fields>*+*{margin-top:16px}.portal-ui .pe .p-card-head{padding:14px 18px}.portal-ui .pe .p-card-body>:last-child{margin-bottom:0}.portal-ui .pe .p-head-tools .primary-button{border-radius:7px;min-height:34px;padding:0 12px;font-size:13px}.portal-ui .pe>.alert{margin:16px 0 0}.portal-ui .pe-profile{border:1px solid var(--p-line);background:var(--p-panel);border-radius:12px;flex-direction:column;gap:14px;min-width:0;padding:16px;display:flex;position:sticky;top:16px}.portal-ui .pe-photo{aspect-ratio:4/5;border:1px solid var(--p-line);background:repeating-linear-gradient(135deg,#151b24 0 10px,#121821 10px 20px);border-radius:10px;place-items:center;display:grid;position:relative;overflow:hidden}.portal-ui .pe-photo>span{font:12px var(--p-mono);color:var(--p-faint)}.portal-ui .pe-photo>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.portal-ui .pe-profile .upload-box{background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:0;display:grid}.portal-ui .pe-profile .upload-box>img{display:none}.portal-ui .pe-profile .upload-box>label{box-sizing:border-box;border:1px solid var(--p-line);background:var(--p-raised);height:36px;color:var(--p-text);font:500 13px var(--p-sans);white-space:nowrap;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0 10px;transition:background .15s;display:flex;position:relative}.portal-ui .pe-profile .upload-box:not(:has(>button))>label{grid-column:1/-1}.portal-ui .pe-profile .upload-box>label:not(:has(input:disabled)):hover{background:#1d2633}.portal-ui .pe-profile .upload-box>label:has(input:focus-visible){outline:2px solid var(--p-accent);outline-offset:2px}.portal-ui .pe-profile .upload-box>label:has(input:disabled){opacity:.5;cursor:default}.portal-ui .pe-profile .upload-box input{opacity:0;clip-path:inset(50%);width:1px;height:1px;margin:0;padding:0;position:absolute;overflow:hidden}.portal-ui .pe-profile .upload-box>button{border:1px solid var(--p-line);height:36px;color:var(--p-muted);font:13px var(--p-sans);white-space:nowrap;background:0 0;border-radius:8px;padding:0 10px;text-decoration:none;transition:color .15s}.portal-ui .pe-profile .upload-box>button:hover:enabled{color:var(--p-text)}.portal-ui .pe-profile .upload-box>button:disabled{opacity:.5}.portal-ui .pe-profile .upload-box>:is(small,span){color:var(--p-muted);grid-column:1/-1;font-size:12.5px}.portal-ui .pe-profile .upload-box>span{color:var(--p-bad)}.portal-ui .pe-who{border-top:1px solid var(--p-line-soft);flex-direction:column;gap:6px;min-width:0;padding-top:14px;display:flex}.portal-ui .pe-who>b{overflow-wrap:anywhere;font-size:16px;font-weight:600;line-height:1.3}.portal-ui .pe-who>span{font:12.5px var(--p-mono);color:var(--p-muted);overflow-wrap:anywhere}.portal-ui .pe-chips{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.portal-ui .pe-who>.p-link{width:fit-content;margin-top:2px}.portal-ui .pe .form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.portal-ui .pe .form-grid .full{grid-column:1/-1}.portal-ui .pe :is(input[name=callsign],input[name=serial],input[name=discordId]){font-family:var(--p-mono)}.portal-ui .pe .specialty-held{box-sizing:border-box;border:1px solid var(--p-line-soft);background:var(--p-bg);min-height:40px;color:var(--p-text);border-radius:8px;align-items:center;gap:10px;padding:0 6px 0 12px;font-size:13.5px;display:flex}.portal-ui .pe .specialty-held:before{content:"";background:var(--p-accent);border-radius:50%;flex:none;width:6px;height:6px}.portal-ui .pe .specialty-held>span{overflow-wrap:anywhere;flex:1;min-width:0}.portal-ui .pe .specialty-held>button{width:30px;height:30px;color:var(--p-faint);font:12px var(--p-sans);background:0 0;border:0;border-radius:6px;flex:none;padding:0;text-decoration:none;transition:background .15s,color .15s}.portal-ui .pe .specialty-held>button:hover:enabled{color:var(--p-bad);background:#ef8f8f1a}.portal-ui .pe .pe-checks{flex-wrap:wrap;align-items:center;gap:8px 24px;display:flex}.portal-ui .pe .pe-checks>label{min-height:28px;font:13.5px/1.4 var(--p-sans);color:var(--p-text);cursor:pointer;flex-direction:row;align-items:center;gap:8px}.portal-ui .pe .pe-checks>label:has(input:disabled){color:var(--p-muted);cursor:default}.portal-ui .pe .pe-checks input{align-self:center}.portal-ui .pe .pe-checks>small{color:var(--p-faint);flex-basis:100%;font-size:12px}.portal-ui .pe-bar{gap:10px 12px;margin-top:16px}.portal-ui .pe-bar:not(:has(.form-save-state)){justify-content:flex-end}.portal-ui .pe-bar .form-save-state{color:var(--p-muted);flex:auto;margin:0}.portal-ui .pe-bar .form-save-state:before{background:#4a5462;flex:none}.portal-ui .pe-bar .form-save-state.dirty{color:var(--p-warn)}.portal-ui .pe-bar .form-save-state.dirty:before{background:var(--p-warn)}.portal-ui .pe-bar .primary-button{margin-left:0;padding:0 20px}.portal-ui :is(.pe,.award-picker) .grant-list{flex-direction:column;gap:6px;margin:0;display:flex}.portal-ui :is(.pe,.award-picker) .grant-row{box-sizing:border-box;border:1px solid var(--p-line-soft);background:var(--p-bg);border-radius:8px;gap:10px;min-height:40px;padding:6px 6px 6px 12px}.portal-ui :is(.pe,.award-picker) .grant-row:not(:has(>img)):before{content:"";background:var(--p-warn);border-radius:50%;flex:none;width:6px;height:6px}.portal-ui :is(.pe-records,.award-picker-training) .grant-row:not(:has(>img)):before{background:var(--p-accent)}.portal-ui :is(.pe,.award-picker) .grant-row>div{flex:1;min-width:0}.portal-ui :is(.pe,.award-picker) .grant-row strong{color:var(--p-text);font-size:13.5px;font-weight:500}.portal-ui :is(.pe,.award-picker) .grant-row small{color:var(--p-muted);margin-top:1px;font-size:12px}.portal-ui :is(.pe,.award-picker) .grant-row img{object-fit:contain;flex:none;width:34px;height:34px}.portal-ui :is(.pe,.award-picker) .grant-row button{min-height:30px;color:var(--p-muted);font:500 12.5px var(--p-sans);background:0 0;border:0;border-radius:6px;flex:none;padding:0 10px;transition:background .15s,color .15s}.portal-ui :is(.pe,.award-picker) .grant-row button:hover:enabled{background:var(--p-raised);color:var(--p-text)}.portal-ui :is(.pe,.award-picker) .grant-row button:last-child:hover:enabled{color:var(--p-bad);background:#ef8f8f1a}.portal-ui :is(.pe,.award-picker) .grant-list>.help-text{border:1px dashed var(--p-line);color:var(--p-faint);border-radius:8px;margin:0;padding:10px 12px;font-size:13px}.portal-ui .award-existing{border:0;border-bottom:1px solid var(--p-line-soft);margin:0 0 18px;padding:0 0 18px}.portal-ui .award-existing>summary{font:500 12.5px var(--p-sans);color:var(--p-muted);cursor:pointer}.portal-ui .award-existing>summary:hover{color:var(--p-text)}.portal-ui .award-existing[open]>summary{margin-bottom:10px}.portal-ui .award-existing>summary span{font:500 12px var(--p-mono);color:var(--p-faint);margin-left:6px}.portal-ui .award-picker-toolbar{gap:10px 14px}.portal-ui .award-picker-toolbar>span{font:500 12px var(--p-mono);color:var(--p-muted)}.portal-ui .award-selection-groups{gap:12px}.portal-ui .award-selection-group{border-color:var(--p-line-soft);background:var(--p-bg)}.portal-ui .award-selection-group>header{border-bottom:1px solid var(--p-line-soft);padding:10px 12px}.portal-ui .award-selection-group h4{font-size:13.5px;font-weight:600}.portal-ui .award-selection-group h4 small{font:500 11.5px var(--p-mono);color:var(--p-muted);margin-left:6px}.portal-ui .award-selection-group>header button{border:1px solid var(--p-line);min-height:28px;color:var(--p-muted);font:500 12.5px var(--p-sans);background:0 0;border-radius:7px;padding:0 10px}.portal-ui .award-selection-group>header button:hover:enabled{background:var(--p-raised);color:var(--p-text)}.portal-ui .award-option-grid{background:var(--p-line-soft)}.portal-ui .award-option{background:var(--p-panel);gap:10px;font-size:13px;transition:background .15s}.portal-ui .award-option:not(.unavailable):hover{background:var(--p-raised)}.portal-ui .award-option.selected{background:#7cb0ee14}.portal-ui .award-option.unavailable{color:var(--p-faint)}.portal-ui .award-option>small{font:500 11px var(--p-mono);color:var(--p-muted)}.portal-ui .award-batch-scope{gap:10px 20px}.portal-ui :is(.award-everyone,.award-repeat){color:var(--p-text);font-size:13.5px}.portal-ui .award-everyone strong{font-weight:500}.portal-ui .award-everyone small{color:var(--p-muted);font-size:12px}.portal-ui .award-batch-submit{border-top-color:var(--p-line-soft)}.portal-ui .award-batch-submit>span{color:var(--p-muted);font-size:13px}.portal-ui .award-picker>.alert{margin:16px 0 0}.portal-ui .award-result{color:#c5efd9;background:#72d4a214;border:1px solid #72d4a247;margin:16px 0 0;padding:11px 12px;font-size:13px}.portal-ui .pe-template .template-source{gap:12px;margin:0}.portal-ui .pe-template .template-preview{border:1px solid var(--p-line-soft);background:var(--p-bg);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:0;margin:16px 0 0;padding:0;display:grid;overflow:hidden}.portal-ui .pe-template .template-preview>div{border-right:1px solid var(--p-line-soft);border-bottom:1px solid var(--p-line-soft);flex-direction:column;gap:3px;min-width:0;margin:0 -1px -1px 0;padding:12px 14px;display:flex}.portal-ui .pe-template .template-preview dt{font:12px var(--p-sans);color:var(--p-muted);margin:0}.portal-ui .pe-template .template-preview dd{overflow-wrap:anywhere;margin:0;font-size:14px;font-weight:500}.portal-ui .pe-template .help-text{margin:14px 0 0}.portal-ui .pe-template .template-warning{color:var(--p-warn);margin:10px 0 0;font-size:12.5px}.portal-ui .pe-access .p-card-body>p{margin:0 0 12px;font-size:13.5px;line-height:1.55}.portal-ui .pe-access .p-card-body>.help-text{color:var(--p-muted);font-size:13px}.portal-ui .pe-access .alert{margin:0 0 12px}.portal-ui .pe-access .recovery-notice{background:#7cb0ee0f;border:1px solid #7cb0ee40;margin:0 0 12px;padding:14px 16px}.portal-ui .pe-access .recovery-notice h4{font-size:14px;font-weight:600}.portal-ui .pe-access .recovery-notice p{color:var(--p-muted);margin:6px 0 10px;font-size:13px;line-height:1.55}.portal-ui .pe-access .recovery-notice code{background:var(--p-bg);font:500 14px/1.8 var(--p-mono);color:var(--p-text);border-radius:8px}.portal-ui .pe-access .portal-actions{gap:8px;margin:0}.portal-ui .pe-danger{border-color:#ef8f8f38}.portal-ui .pe-danger .p-card-body{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;padding:14px 18px;display:flex}.portal-ui .pe-danger .help-text{flex:260px;margin:0}@media (max-width:1099px){.portal-ui .pe-profile{top:72px}}@media (max-width:979px){.portal-ui .pe-layout{grid-template-columns:minmax(0,1fr)}.portal-ui .pe-profile{position:static}.portal-ui .pe-photo{max-height:220px}.portal-ui .pe-photo>img{object-fit:contain}}@media (max-width:759px){.portal-ui .pe .form-grid{grid-template-columns:minmax(0,1fr)}.portal-ui .pe-bar .form-save-state{flex-basis:100%}.portal-ui .pe-bar>button{flex:1}}.portal-ui .at-page>.alert{margin:0}.portal-ui .at-page :is(.p-card-head,.at-filters) select{width:auto;max-width:240px;height:34px;min-height:34px;font-size:13px}.portal-ui .at-btn{border:1px solid var(--p-line);height:34px;color:var(--p-text);font:12.5px var(--p-sans);white-space:nowrap;background:0 0;border-radius:8px;justify-content:center;align-items:center;padding:0 10px;transition:background .15s;display:inline-flex}.portal-ui .at-btn:hover:enabled{background:var(--p-raised)}.portal-ui .at-btn:disabled{opacity:1;color:#5a6573}.portal-ui .at-arrow{width:34px;padding:0;font-size:17px;line-height:1}.portal-ui .at-ok{color:var(--p-ok)}.portal-ui .at-warn{color:var(--p-warn)}.portal-ui .at-faint{color:var(--p-faint)}.portal-ui .at-none{color:var(--p-muted);text-align:center;margin:0;padding:28px 16px;font-size:13px}.portal-ui .at-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.portal-ui .at-bar .catalog-tabs{margin:0}.portal-ui .at-period{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.portal-ui .at-period>b{border:1px solid var(--p-line);background:var(--p-bg);min-width:140px;height:34px;font:600 13px var(--p-mono);letter-spacing:.08em;white-space:nowrap;border-radius:8px;place-items:center;padding:0 12px;display:grid}.portal-ui .at-period input{width:auto;height:34px;min-height:34px;font-size:13px}.portal-ui .at-ops{table-layout:fixed}.portal-ui .at-ops :is(th,td){padding-left:8px;padding-right:8px}.portal-ui .at-ops :is(th,td):first-child{padding-left:16px}.portal-ui .at-ops :is(th,td):last-child{padding-right:16px}.portal-ui .at-ops th:first-child{width:160px}.portal-ui .at-ops th:nth-child(3){width:16%}.portal-ui .at-ops th:nth-child(4){width:120px}.portal-ui .at-ops th:nth-child(5){width:84px}.portal-ui .at-ops th:nth-child(6){width:166px}.portal-ui .at-ops th:nth-child(7){width:124px}.portal-ui .at-ops th:nth-child(8){width:104px}.portal-ui .at-match{align-items:center;gap:10px;display:flex}.portal-ui .at-match>span{background:var(--p-raised);border-radius:3px;flex:1;height:5px;overflow:hidden}.portal-ui .at-ops tr:hover .at-match>span{background:var(--p-active)}.portal-ui .at-match i{background:var(--p-ok);border-radius:3px;height:100%;display:block}.portal-ui .at-match b{min-width:44px;font:400 12.5px var(--p-mono);color:var(--p-muted);text-align:right;white-space:nowrap}.portal-ui .at-match.warn i{background:var(--p-warn)}.portal-ui .at-match.warn b{color:var(--p-warn)}.portal-ui .at-op-row{border:0;border-bottom:1px solid var(--p-line-soft);width:100%;color:var(--p-text);font:14px/1.45 var(--p-sans);text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:12px 16px;transition:background .15s;display:grid}.portal-ui .at-op-row:last-child{border-bottom:0}.portal-ui .at-op-row:hover{background:var(--p-raised)}.portal-ui .at-op-row>.p-muted{font-size:12.5px}.portal-ui .at-op-row>.p-mono.at-warn{color:var(--p-warn)}.portal-ui .at-go{color:var(--p-accent);text-align:right;font-size:13px}.portal-ui .at-op-state{color:var(--p-faint);grid-column:1/-1;align-items:center;gap:8px;margin-top:4px;font-size:12px;display:flex}.portal-ui .at-op-state .management-status{height:22px;padding:0 9px;font-size:12px}.portal-ui .at-step{gap:4px;display:flex}.portal-ui .at-filters{border-bottom:1px solid var(--p-line);flex-wrap:wrap;align-items:center;gap:10px 14px;padding:12px 16px;display:flex}.portal-ui .at-filters input[type=search]{flex:220px;min-width:0;height:34px;min-height:34px;font-size:13px}.portal-ui .at-filters .p-btn-ghost{min-height:34px;margin-left:auto;padding:0 12px;font-size:13px}.portal-ui .at-sheet>.attendance-alert{margin:12px 16px 2px}.portal-ui .at-matrix{table-layout:fixed;border-collapse:separate;border-spacing:0;width:100%;font:13.5px/1.4 var(--p-sans)}.portal-ui .at-matrix th{border-bottom:1px solid var(--p-line);color:var(--p-faint);font:500 11.5px var(--p-sans);letter-spacing:.05em;text-align:left;vertical-align:bottom;padding:10px 5px}.portal-ui .at-matrix td{border-bottom:1px solid var(--p-line-soft);vertical-align:middle;padding:8px 5px;transition:background .15s}.portal-ui .at-matrix :is(th,td):first-child{padding-left:16px}.portal-ui .at-matrix :is(th,td):last-child{padding-right:16px}.portal-ui .at-matrix .at-op{text-align:center;width:134px}.portal-ui .at-matrix .at-total{text-align:right;width:168px}.portal-ui .at-op>:is(span,small){letter-spacing:0;white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.portal-ui .at-op>span{color:var(--p-muted);font-size:12px}.portal-ui .at-op>small{font:11px var(--p-mono);color:var(--p-faint);margin-top:2px}.portal-ui .at-matrix tbody tr:not(.at-group):hover td{background:var(--p-raised)}.portal-ui .at-matrix tr.short>td:first-child{box-shadow:inset 3px 0 var(--p-bad)}.portal-ui .at-matrix tr.risk>td:first-child{box-shadow:inset 3px 0 var(--p-warn)}.portal-ui .at-matrix tr.at-group>td{font:500 12px var(--p-sans);letter-spacing:.06em;color:var(--p-faint);text-transform:uppercase;padding-top:14px;padding-bottom:6px}.portal-ui .at-matrix tr.at-group b{font:500 12px var(--p-mono);letter-spacing:0;color:var(--p-muted);margin-left:8px}.portal-ui .at-person>:is(b,small){white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.portal-ui .at-person>b{font-size:13.5px;font-weight:500}.portal-ui .at-person>small{font:11.5px var(--p-mono);color:var(--p-muted)}.portal-ui .at-cell{position:relative}.portal-ui .at-matrix .attendance-cell{border:1px solid var(--p-line);width:100%;min-width:0;height:32px;color:var(--p-faint);background:0 0;border-radius:7px;padding:0 4px;display:flex;position:relative}.portal-ui .at-matrix .attendance-cell.present{color:#72d4a2;background:#72d4a21f;border-color:#72d4a254}.portal-ui .at-matrix .attendance-cell.absent{color:#ef8f8f;background:#ef8f8f1f;border-color:#ef8f8f54}.portal-ui .at-matrix .attendance-cell.loa{color:#efc16b;background:#efc16b1f;border-color:#efc16b54}.portal-ui .at-matrix .attendance-cell[aria-expanded=true]{box-shadow:0 0 0 2px #7cb0ee73}.portal-ui .at-shade{z-index:15;position:fixed;inset:0}.portal-ui .at-menu{z-index:20;border:1px solid var(--p-pop-line);background:var(--p-pop);border-radius:10px;flex-direction:column;gap:1px;min-width:180px;padding:5px;display:flex;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 18px 40px #0000008c}.portal-ui .at-menu>button{height:34px;color:var(--p-text);font:13px var(--p-sans);text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:7px;align-items:center;gap:9px;padding:0 10px;display:flex}.portal-ui .at-menu>button[aria-checked=true]{background:#202a38}.portal-ui .at-menu>button:hover{background:#243041}.portal-ui .at-menu i{background:#5a6573;border-radius:50%;flex:none;width:8px;height:8px}.portal-ui .at-menu i.present{background:var(--p-ok)}.portal-ui .at-menu i.absent{background:var(--p-bad)}.portal-ui .at-menu i.loa{background:var(--p-warn)}.portal-ui .at-menu span{flex:1}.portal-ui .at-menu em{color:var(--p-muted);font-style:normal}.portal-ui .at-menu small{color:var(--p-accent);font-size:11px}.portal-ui .at-matrix td.at-total b{font:500 14px var(--p-mono);color:var(--p-text)}.portal-ui .at-matrix td.at-total b.none{color:var(--p-faint)}.portal-ui .at-matrix :is(td.at-total b,tfoot td) small{font:inherit;color:var(--p-faint);font-size:12px}.portal-ui .at-rate{font:12px var(--p-mono);color:var(--p-muted);margin-left:8px}.portal-ui .at-matrix tr.met .at-rate{color:var(--p-ok)}.portal-ui .at-matrix tr.short :is(.at-rate,em){color:var(--p-bad)}.portal-ui .at-matrix tr.risk :is(.at-rate,em){color:var(--p-warn)}.portal-ui .at-extra{font:11px var(--p-mono);color:var(--p-muted);white-space:nowrap;margin-top:2px;display:block}.portal-ui .at-extra em{font-style:normal}.portal-ui .at-matrix tfoot td{font:500 12.5px var(--p-mono);color:var(--p-text);text-align:center;padding-top:10px;padding-bottom:10px}.portal-ui .at-matrix tfoot td:first-child{font:500 11.5px var(--p-sans);letter-spacing:.05em;color:var(--p-faint);text-align:left}.portal-ui .at-matrix tfoot td.at-total{text-align:right}.portal-ui .at-foot{color:var(--p-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;font-size:12.5px;display:flex}.portal-ui .at-foot>span{align-items:center;gap:8px;display:flex}.portal-ui .at-foot>span:before{content:"";background:var(--p-warn);border-radius:50%;flex:none;width:8px;height:8px}.portal-ui .at-foot>div{gap:6px;display:flex}.portal-ui .at-foot .at-btn{border-radius:7px;height:32px;padding:0 12px;font-size:13px}.portal-ui .at-foot>p{color:var(--p-faint);flex-basis:100%;margin:0;font-size:12px;line-height:1.55}@media (max-width:999px),(min-width:1100px) and (max-width:1255px){.portal-ui .at-matrix .at-op{width:90px}.portal-ui .at-matrix .at-total{width:66px}.portal-ui .at-rate{margin:2px 0 0;display:block}.portal-ui .at-extra{display:none}.portal-ui .at-filters .p-btn-ghost{margin-left:0}}.portal-ui .at-pair{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (min-width:1100px){.portal-ui .at-pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.portal-ui .at-um{border-bottom:1px solid var(--p-line-soft);grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:10px 14px;padding:12px 16px;display:grid}.portal-ui .at-um>div:first-child{min-width:0}.portal-ui .at-um b{font:500 13.5px var(--p-mono);overflow-wrap:anywhere;display:block}.portal-ui .at-um small{color:var(--p-muted);font-size:12.5px;display:block}.portal-ui .at-um small+small{font:11.5px var(--p-mono);color:var(--p-faint)}.portal-ui .at-um-pick{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.portal-ui .at-um-pick>.search-select{flex:1;width:auto}.portal-ui .at-um-pick>.search-select>button{min-height:36px;font-size:13px}.portal-ui .at-um-pick>button{border-radius:8px;min-height:36px;padding:0 12px;font-size:13px}.portal-ui .at-um-pick>small{color:var(--p-faint);flex-basis:100%;font-size:12px}.portal-ui .at-table{table-layout:fixed;border-collapse:separate;border-spacing:0;width:100%;font:13.5px/1.45 var(--p-sans)}.portal-ui .at-table th{border-bottom:1px solid var(--p-line);height:40px;color:var(--p-faint);font:500 11.5px var(--p-sans);letter-spacing:.05em;text-align:left;white-space:nowrap;padding:0 7px}.portal-ui .at-table td{border-bottom:1px solid var(--p-line-soft);vertical-align:middle;overflow-wrap:anywhere;padding:10px 7px}.portal-ui .at-table :is(th,td):first-child{padding-left:16px}.portal-ui .at-table :is(th,td):last-child{padding-right:16px}.portal-ui .at-table tbody tr:last-child td{border-bottom:0}.portal-ui .at-table .p-right{text-align:right}.portal-ui .at-loa th:nth-child(2){width:156px}.portal-ui .at-loa th:nth-child(4){width:104px}.portal-ui .at-loa th:nth-child(5){width:76px}.portal-ui .at-range{font:12.5px var(--p-mono);white-space:nowrap}.portal-ui .at-range .p-sub{font-family:var(--p-sans);color:var(--p-ok)}.portal-ui .at-past{border-top:1px solid var(--p-line)}.portal-ui .at-past>summary{color:var(--p-muted);cursor:pointer;padding:12px 16px;font-size:13px}.portal-ui .at-past>summary:hover{color:var(--p-text)}.portal-ui .at-past>.p-note{padding-top:0}@media (max-width:759px),(min-width:1100px) and (max-width:1383px){.portal-ui .at-um{grid-template-columns:minmax(0,1fr)}.portal-ui .at-loa thead{display:none}.portal-ui .at-loa,.portal-ui .at-loa tbody{display:block}.portal-ui .at-loa tr{border-bottom:1px solid var(--p-line-soft);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:3px 12px;padding:12px 16px;display:grid}.portal-ui .at-loa tbody tr:last-child{border-bottom:0}.portal-ui .at-table.at-loa td{border:0;padding:0}.portal-ui .at-loa td:nth-child(2){text-align:right;grid-area:1/2}.portal-ui .at-loa td:is(:nth-child(3),:nth-child(4)){grid-column:1;font-size:13px}.portal-ui .at-loa td:nth-child(4):before{content:"Ekleyen: "}.portal-ui .at-loa td:nth-child(5){grid-area:2/2/4;align-self:end}}.portal-ui .at-fold>summary{cursor:pointer;list-style:none;transition:background .15s}.portal-ui .at-fold>summary::-webkit-details-marker{display:none}.portal-ui .at-fold>summary:hover{background:var(--p-raised)}.portal-ui .at-fold:not([open])>summary{border-bottom:0}.portal-ui .at-fold>summary>.p-head-tools{color:var(--p-muted);font-size:12px;transition:transform .2s}.portal-ui .at-fold[open]>summary>.p-head-tools{transform:rotate(180deg)}.portal-ui .at-crumb{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.portal-ui .p-kv>div>b.at-mono{font-family:var(--p-mono)}.portal-ui .p-kv>div>b.at-state{color:var(--p-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;font-weight:400;display:flex}.portal-ui .at-players{table-layout:fixed}.portal-ui .at-players th:nth-child(4){width:130px}.portal-ui .at-players th:nth-child(5){width:140px}.portal-ui .at-page .p-card .table-scroll{background:0 0;border:0;border-radius:0}.portal-ui .at-buds>.p-note{border-bottom:1px solid var(--p-line-soft)}.portal-ui .attendance-dialog{max-width:480px;max-height:calc(100dvh - 32px);overflow:auto}.portal-ui .attendance-dialog .attendance-choices{border:1px solid var(--p-line);background:var(--p-bg);border-radius:10px;gap:2px;margin:16px 0 0;padding:4px;display:grid}.portal-ui .attendance-dialog .attendance-choices>legend{float:left;width:100%;font:500 12px var(--p-sans);letter-spacing:.04em;color:var(--p-faint);padding:6px 8px 4px}.portal-ui .attendance-dialog .attendance-choices>label{min-height:38px;color:var(--p-text);cursor:pointer;border-radius:7px;align-items:center;gap:10px;padding:0 10px;font-size:13.5px;transition:background .15s;display:flex}.portal-ui .attendance-dialog .attendance-choices>label:hover{background:var(--p-raised)}.portal-ui .attendance-dialog .attendance-choices>label:has(input:checked){background:var(--p-active)}.portal-ui .attendance-dialog .plain-fields>label{font:500 12.5px/1.4 var(--p-sans);color:var(--p-muted);flex-direction:column;gap:6px;margin-top:16px;display:flex}.portal-ui .attendance-dialog label :is(input,select,textarea){margin-top:0}.portal-ui .attendance-dialog .help-text{margin:12px 0 0}.portal-ui .attendance-dialog .form-grid{margin-top:16px}.portal-ui .portal-me .p-stack>:is(.alert,.attendance-alert){margin:0}.portal-ui .me-note{border-bottom:1px solid var(--p-line-soft)}.portal-ui .me-loading{color:var(--p-muted);margin:0;padding:16px 18px;font-size:13px}.portal-ui .me-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.portal-ui .me-profile{flex-wrap:wrap;align-items:center;gap:18px;padding:20px;display:flex}.portal-ui .me-photo{box-sizing:border-box;border:1px solid var(--p-line);background:repeating-linear-gradient(135deg,#151b24 0 8px,#121821 8px 16px);border-radius:10px;flex:none;width:88px;height:110px;overflow:hidden}.portal-ui .me-photo>img{object-fit:cover;width:100%;height:100%;display:block}.portal-ui .me-photo>.record-photo-placeholder{place-items:center;width:100%;height:100%;display:grid}.portal-ui .me-photo .record-photo-placeholder-copy>b{display:none}.portal-ui .me-photo .record-photo-placeholder-copy>span{font:10.5px var(--p-mono);letter-spacing:0;text-transform:lowercase;color:var(--p-faint)}.portal-ui .me-id{flex-direction:column;flex:1;gap:4px;min-width:200px;display:flex}.portal-ui .me-rank{font:500 13px var(--p-mono);color:var(--p-accent)}.portal-ui .me-name{font:600 22px/1.25 var(--p-sans);letter-spacing:-.01em;overflow-wrap:anywhere;margin:0}.portal-ui .me-serial{font:12.5px var(--p-mono);color:var(--p-muted)}.portal-ui .me-chips{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.portal-ui .me-details{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-ui .me-details>div{padding:14px 18px}.portal-ui .me-awards{margin:0;padding:0;list-style:none}.portal-ui .me-awards>li{border-bottom:1px solid var(--p-line-soft);align-items:center;gap:12px;padding:12px 18px;display:flex}.portal-ui .me-awards>li:last-child{border-bottom:0}.portal-ui .me-icon{box-sizing:border-box;background:#efc16b1a;border:1px solid #efc16b40;border-radius:8px;flex:none;place-items:center;width:30px;height:30px;display:grid}.portal-ui .me-icon.cert{background:#7cb0ee1a;border-color:#7cb0ee40}.portal-ui .me-icon>i{background:var(--p-warn);border-radius:50%;width:8px;height:8px}.portal-ui .me-icon.cert>i{background:var(--p-accent)}.portal-ui .me-icon>img{object-fit:contain;width:24px;height:24px}.portal-ui .me-award{flex-direction:column;flex:1;min-width:0;display:flex}.portal-ui .me-award>b{overflow-wrap:anywhere;font-size:14px;font-weight:500}.portal-ui .me-award>span{color:var(--p-muted);font-size:12.5px}.portal-ui .me-awards time{font:12.5px var(--p-mono);color:var(--p-muted);white-space:nowrap}.portal-ui .me-att-now{border-bottom:1px solid var(--p-line);flex-direction:column;gap:14px;padding:18px 20px;display:flex}.portal-ui .me-att-now>.alert{margin:0}.portal-ui .me-att-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.portal-ui .me-att-head>h2{margin:0;font-size:14.5px;font-weight:600}.portal-ui .me-att-head>span{color:var(--p-muted);font-size:12.5px}.portal-ui .me-att-big{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.portal-ui .me-att-big>b{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:44px;font-weight:500;line-height:1}.portal-ui .me-att-big>span{color:var(--p-muted);font-size:13.5px}.portal-ui .me-meter{padding-top:18px;position:relative}.portal-ui .me-meter>small{font:11px var(--p-mono);color:var(--p-muted);position:absolute;top:0;transform:translate(-50%)}.portal-ui .me-meter>em{background:var(--p-text);opacity:.7;border-radius:1px;width:2px;margin-left:-1px;position:absolute;top:15px;bottom:-4px}.portal-ui .me-bar{background:var(--p-raised);border-radius:5px;height:10px;display:block;position:relative}.portal-ui .me-bar>i{border-radius:inherit;height:100%;display:block}.portal-ui .me-bar.met>i{background:var(--p-ok)}.portal-ui .me-bar.short>i{background:var(--p-bad)}.portal-ui .me-bar.risk>i{background:var(--p-warn)}.portal-ui .me-rule{background:var(--p-raised);color:var(--p-muted);border-radius:9px;align-items:center;gap:10px;margin:0;padding:10px 12px;font-size:13px;display:flex}.portal-ui .me-rule:before{content:"";background:var(--p-faint);border-radius:50%;flex:none;width:7px;height:7px}.portal-ui .me-rule.met{color:#a9e6c6;background:#72d4a214}.portal-ui .me-rule.met:before{background:var(--p-ok)}.portal-ui .me-rule.short{color:#f4c2c2;background:#ef8f8f14}.portal-ui .me-rule.short:before{background:var(--p-bad)}.portal-ui .me-rule.risk{color:#f6dfa8;background:#efc16b14}.portal-ui .me-rule.risk:before{background:var(--p-warn)}.portal-ui .me-att-past{padding:8px 0}.portal-ui .me-att-month{grid-template-columns:96px minmax(0,1fr) 44px;align-items:center;gap:12px;padding:9px 20px;display:grid}.portal-ui .me-att-month>span:first-child{color:var(--p-muted);font-size:13px}.portal-ui .me-att-month .me-bar{border-radius:3px;height:6px}.portal-ui .me-att-month .me-bar>em{background:var(--p-muted);opacity:.6;width:1px;position:absolute;top:-3px;bottom:-3px}.portal-ui .me-att-month>b{font:400 12.5px var(--p-mono);text-align:right;color:var(--p-muted)}.portal-ui .me-att-month>b.short{color:var(--p-bad)}.portal-ui .me-att-past>p{color:var(--p-faint);margin:0;padding:6px 20px 12px;font-size:12px}.portal-ui .me-fold>summary{cursor:pointer;border-bottom:0;list-style:none;transition:background .15s}.portal-ui .me-fold>summary::-webkit-details-marker{display:none}.portal-ui .me-fold>summary:hover{background:var(--p-raised)}.portal-ui .me-fold>summary:after{content:"";border-right:1.5px solid var(--p-muted);border-bottom:1.5px solid var(--p-muted);width:7px;height:7px;margin:0 4px 0 auto;transition:transform .2s;transform:translateY(-2px)rotate(45deg)}.portal-ui .me-fold[open]>summary{border-bottom:1px solid var(--p-line)}.portal-ui .me-fold[open]>summary:after{transform:translateY(2px)rotate(-135deg)}.portal-ui .me-fold .record-paper{margin-top:0}.portal-ui .me-period{gap:6px}.portal-ui .me-period>button{width:34px;min-height:34px;padding:0;font-size:16px;line-height:1}.portal-ui .me-period>b{text-align:center;min-width:112px;font-size:13.5px;font-weight:500}.portal-ui .portal-me .p-stat :is(.met,.present){color:var(--p-ok)}.portal-ui .portal-me .p-stat :is(.short,.absent){color:var(--p-bad)}.portal-ui .portal-me .p-stat :is(.risk,.loa){color:var(--p-warn)}.portal-ui .portal-training .training-month{margin-top:0}.portal-ui .me-table{table-layout:fixed}.portal-ui .me-table .me-c-date{width:110px}.portal-ui .me-table .me-c-time{width:160px}.portal-ui .me-table .me-c-kind{width:150px}.portal-ui .me-table .me-c-range{width:210px}.portal-ui .me-table .me-c-dur{width:90px}.portal-ui .me-table .me-c-state{width:150px}.portal-ui .me-table .me-c-act{width:120px}.portal-ui .p-docs>a>p{color:var(--p-muted);text-wrap:pretty;margin:0;font-size:13px;line-height:1.5}.portal-ui .p-field>input.me-mono{font-family:var(--p-mono)}.portal-ui .p-kv>div>b.me-warn{color:var(--p-warn)}@media (max-width:999px){.portal-ui .me-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:999px),(min-width:1100px) and (max-width:1255px){.portal-ui .me-table td:empty{display:none}}@media (max-width:759px){.portal-ui .me-details{grid-template-columns:repeat(2,minmax(0,1fr))}}.portal-ui .pa-status{color:var(--p-muted);margin:0;padding:16px 18px;font-size:13px}.portal-ui .pa-subtext{color:var(--p-muted);overflow-wrap:anywhere;margin-top:3px;font-size:12.5px;line-height:1.45;display:block}.portal-ui .pa-mono{font-family:var(--p-mono)}.portal-ui .pa-nowrap{white-space:nowrap}.portal-ui .pa-lead{border-bottom:1px solid var(--p-line-soft)}.portal-ui .pa-btn{border:1px solid var(--p-line);background:var(--p-raised);height:32px;color:var(--p-text);font:500 12.5px var(--p-sans);white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;padding:0 12px;transition:background .15s;display:inline-flex}.portal-ui .pa-btn:hover:enabled{background:#1d2633}.portal-ui .pa-btn:disabled{opacity:.5}.portal-ui .pa-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px 16px;display:inline-flex}.portal-ui .pa-table .warning-level{white-space:nowrap}.portal-ui .pa-table td .primary-button{border-radius:7px;min-height:32px;padding:0 12px;font-size:13px}.portal-ui .p-modal.pa-modal-wide{max-width:680px}@media (min-width:760px){.portal-ui .pa-modal-wide .form-grid{grid-template-columns:1fr 1fr}.portal-ui .pa-modal-wide .form-grid .full{grid-column:1/-1}}@media (max-width:999px),(min-width:1100px) and (max-width:1255px){.portal-ui .pa-table td:empty{display:none}.portal-ui .pa-table .pa-actions{justify-content:flex-start}}.portal-ui .ms-split{grid-template-columns:300px minmax(0,1fr);min-height:420px;display:grid}.portal-ui .ms-list{border-right:1px solid var(--p-line-soft);flex-direction:column;min-width:0;display:flex}.portal-ui .ms-thread{border:0;border-bottom:1px solid var(--p-line-soft);width:100%;color:var(--p-text);text-align:left;background:0 0;border-radius:0;flex-direction:column;gap:3px;padding:13px 16px;transition:background .15s;display:flex}.portal-ui .ms-thread:hover{background:var(--p-raised)}.portal-ui .ms-thread[aria-current]{box-shadow:inset 2px 0 0 var(--p-accent);background:#1a2230}.portal-ui .ms-thread-head{align-items:center;gap:8px;width:100%;min-width:0;display:flex}.portal-ui .ms-dot{background:0 0;border-radius:50%;flex:none;width:7px;height:7px}.portal-ui .ms-thread.unread .ms-dot{background:var(--p-accent)}.portal-ui .ms-from{min-width:0;color:var(--p-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12.5px;overflow:hidden}.portal-ui .ms-thread time{font:11.5px var(--p-mono);color:var(--p-faint);flex:none}.portal-ui .ms-thread>b{overflow-wrap:anywhere;padding-left:15px;font-size:14px;font-weight:500}.portal-ui .ms-thread.unread>b{font-weight:600}.portal-ui .ms-thread>small{color:var(--p-faint);white-space:nowrap;text-overflow:ellipsis;padding-left:15px;font-size:12.5px;overflow:hidden}.portal-ui .ms-pane{flex-direction:column;gap:14px;min-width:0;padding:22px 24px;display:flex}.portal-ui .ms-pane>.p-empty{margin:auto 0}.portal-ui .ms-pane>.pa-status{padding:0}.portal-ui .ms-pane-head{border-bottom:1px solid var(--p-line-soft);padding-bottom:14px}.portal-ui .ms-pane-head h3{letter-spacing:-.01em;overflow-wrap:anywhere;margin:0;font-size:18px;font-weight:600}.portal-ui .ms-pane-head p{color:var(--p-muted);margin:4px 0 0;font-size:12.5px}.portal-ui :is(.ms-pane-head,.ms-meta) time{font-family:var(--p-mono)}.portal-ui .ms-messages{flex-direction:column;gap:18px;margin:0;padding:0;list-style:none;display:flex}.portal-ui .ms-message{flex-direction:column;gap:6px;display:flex}.portal-ui .ms-message+.ms-message{border-top:1px solid var(--p-line-soft);padding-top:18px}.portal-ui .ms-meta{color:var(--p-muted);font-size:12.5px}.portal-ui .ms-meta b{color:var(--p-text);font-weight:500}.portal-ui .ms-message.mine .ms-meta b{color:var(--p-accent)}.portal-ui .ms-message p{color:#d3dbe6;white-space:pre-wrap;overflow-wrap:anywhere;text-wrap:pretty;max-width:64ch;margin:0;font-size:14.5px;line-height:1.65}.portal-ui .ms-reply{border-top:1px solid var(--p-line-soft);flex-direction:column;gap:12px;margin-top:auto;padding-top:16px;display:flex}.portal-ui .ms-reply textarea{resize:vertical;width:100%;min-height:90px}.portal-ui .ms-tools{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.portal-ui .ms-recipients{flex-wrap:wrap;align-items:center;gap:6px;min-height:28px;display:flex}.portal-ui .ms-recipients>span{border:1px solid var(--p-line);background:var(--p-raised);height:26px;color:var(--p-text);border-radius:13px;align-items:center;gap:4px;padding:0 4px 0 10px;font-size:12.5px;display:inline-flex}.portal-ui .ms-recipients button{width:20px;height:20px;color:var(--p-muted);background:0 0;border:0;border-radius:50%;padding:0;font-size:14px;line-height:1}.portal-ui .ms-recipients button:hover{color:var(--p-text);background:#243041}.portal-ui .ms-recipients>small{color:var(--p-faint);font-size:12.5px}@media (max-width:759px){.portal-ui .ms-split{grid-template-columns:1fr;min-height:0}.portal-ui .ms-list{border-right:0;border-bottom:1px solid var(--p-line)}.portal-ui .ms-pane{padding:18px 16px}}.portal-ui .wr-reason{white-space:pre-wrap}.portal-ui .pa-account>.recovery-notice{background:var(--p-panel);border:1px solid #efc16b47;border-radius:12px;margin:0;padding:16px 18px}.portal-ui .ad-created .recovery-notice{background:0 0;border:0;border-radius:0;margin:0;padding:16px 18px}.portal-ui :is(.pa-account,.ad-created) .recovery-notice h4{margin:0;font-size:14.5px;font-weight:600}.portal-ui :is(.pa-account,.ad-created) .recovery-notice p{color:var(--p-muted);margin:6px 0 12px;font-size:13px;line-height:1.55}.portal-ui :is(.pa-account,.ad-created) .recovery-notice code{border:1px solid var(--p-line-soft);background:var(--p-bg);font:500 13px/1.7 var(--p-mono);color:var(--p-text);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;border-radius:8px;margin-bottom:12px;padding:10px 12px;display:block}.portal-ui .ad-modal .permission-choices{border:1px solid var(--p-line-soft);background:var(--p-bg);border-radius:10px;min-width:0;margin:16px 0 0;padding:12px 14px 8px}.portal-ui .ad-modal .permission-choices legend{color:var(--p-text);padding:0 6px;font-size:13px;font-weight:600}.portal-ui .ad-modal .permission-choices p{color:var(--p-muted);margin:0 0 6px;font-size:12.5px;line-height:1.5}.portal-ui .ad-perms{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 16px;display:grid}.portal-ui .ad-modal .permission-choices label{color:var(--p-text);cursor:pointer;align-items:flex-start;gap:10px;padding:6px 0;font-size:13px;line-height:1.45;display:flex}.portal-ui .ad-modal .permission-choices input{flex:none;margin-top:2px}.portal-ui .au-filters{border-bottom:1px solid var(--p-line);margin:0;padding:14px 16px}.portal-ui .au-filters>button{min-height:40px}.portal-ui .au-card>.alert{margin:14px 16px 0}.portal-ui .au-table{table-layout:fixed}.portal-ui .au-table th:first-child{width:180px}.portal-ui .au-table th:nth-child(2){width:15%}.portal-ui .au-table th:last-child{width:140px}.portal-ui .au-table tr.au-open td{border-bottom-color:#0000}.portal-ui .au-table tr.au-detail td{height:auto;padding:0 16px 16px}.portal-ui .au-table tbody tr.au-detail:hover td{background:0 0}.portal-ui .au-json{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.portal-ui .au-json h4{letter-spacing:.05em;color:var(--p-faint);margin:0 0 6px;font-size:11.5px;font-weight:500}.portal-ui .au-json pre{border:1px solid var(--p-line-soft);background:var(--p-bg);max-height:360px;font:12px/1.55 var(--p-mono);color:#c9d3df;white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;margin:0;padding:12px;overflow:auto}.portal-ui .au-foot{border-top:1px solid var(--p-line-soft);color:var(--p-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:12px 16px;font-size:13px;display:flex}@media (max-width:999px),(min-width:1100px) and (max-width:1255px){.portal-ui .au-table tr.au-open{border-bottom-color:#0000}.portal-ui .au-table tr.au-detail{padding-top:0}.portal-ui .au-table tr.au-detail td{padding:0}}.portal-ui .sv .p-stat>b{overflow-wrap:anywhere}.portal-ui .sv .p-stat>b.present{color:var(--p-ok)}.portal-ui .sv .p-stat>b.loa{color:var(--p-warn)}.portal-ui .sv .p-stat>b.absent{color:var(--p-bad)}.portal-ui .sv-players{columns:3 180px;column-gap:24px;margin:0;padding:14px 18px 14px 36px;font-size:13.5px}.portal-ui .sv-players li{break-inside:avoid;padding:3px 0}.portal-ui .sv-actions{flex-wrap:wrap;gap:8px;padding:16px 18px;display:flex}.portal-ui .sv-command{border-top:1px solid var(--p-line-soft)}.portal-ui .pt-issue{color:var(--p-warn)}.portal-ui .pt-modal .template-source{margin:16px 0}.portal-ui .pt-modal .template-active{margin:16px 0 0}.portal-ui .pt-modal .template-warning{color:var(--p-warn);margin:8px 0 0;font-size:12.5px}.portal-ui .pt-modal h4{margin:18px 0 8px;font-size:13px;font-weight:600}.portal-ui .pt-modal .template-preview{border:1px solid var(--p-line-soft);background:var(--p-bg);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:0;margin:0 0 14px;padding:0;overflow:hidden}.portal-ui .pt-modal .template-preview>div{border-bottom:1px solid var(--p-line-soft);min-width:0;padding:10px 14px}.portal-ui .pt-modal .template-preview dt{font:12px var(--p-sans);color:var(--p-muted);margin:0 0 3px}.portal-ui .pt-modal .template-preview dd{font-size:13.5px;font-weight:500}.portal-ui .pd-file{flex-direction:column;gap:8px;min-width:0;display:flex}.portal-ui .pd-file>p{margin:0}
