.boot-msg{font-family:system-ui;text-align:center;margin:18vh 20px;color:#64748b}
#toast{position:fixed;bottom:22px;right:22px;z-index:50;background:#173e58;color:white;border-radius:11px;padding:14px 18px;max-width:min(440px,90vw);box-shadow:0 10px 40px #1113;display:none;font-size:14px;white-space:pre-line}#toast.show{display:block}
.setup{max-width:740px;margin:10vh auto;padding:28px}.setup h1{margin:12px 0}.setup p{margin-bottom:16px}.setup code{background:#e8eef4;border-radius:5px;padding:3px 5px;word-break:break-all}
.login-main .login-card{width:min(100%,460px)}.login-card label{margin-bottom:6px}.login-card .btn{margin-top:8px}.login-card .form-row{margin:0 0 16px}
.login-highlights{margin-top:24px}.stack-tight{display:flex;flex-direction:column;gap:8px}.hint{font-size:12px;color:#718195;line-height:1.5}
.content .help{font-size:12px;color:#728094}.ghost-link{background:none;border:0;padding:0;font-size:12px;color:#1a6996;cursor:pointer}
.table-wrap{overflow-x:auto}.bo-table{border-collapse:collapse;width:100%;min-width:750px;font-size:13px}.bo-table th{text-align:left;background:#f6f9fb;color:#61758a;font-size:11px;padding:12px}.bo-table td{padding:13px 12px;border-top:1px solid #e9eef3}.bo-table tbody tr{cursor:pointer}.bo-table tbody tr:hover{background:#f5fafd}
.event{border-left:2px solid #d6e5ef;padding:0 0 19px 17px;margin-left:4px;position:relative}.event:before{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:#4288aa;left:-5.5px;top:1px}.event:last-child{border-left:2px solid transparent;padding-bottom:0}.event p{margin-top:8px;white-space:pre-wrap;font-size:13px}.event small{display:block;margin-top:5px}.event .btn{margin-top:8px}
.field-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.detail-field span{font-size:11px;color:#718195;display:block;margin-bottom:4px}.detail-field strong{font-size:14px;overflow-wrap:anywhere}.detail-description{white-space:pre-wrap;font-size:13px;line-height:1.6}
.section-spacer{margin:24px 0}.mini-alert{padding:9px 11px;background:#fff4e3;border:1px solid #f8dfb3;color:#8c5a1f;border-radius:8px;font-size:12px}
.split-detail{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(290px,1fr);gap:20px}.action-bar{display:flex;gap:8px;flex-wrap:wrap}.alert-error{color:#9c2d3d;background:#fff0f1;border:1px solid #f6cbd0;border-radius:8px;padding:11px;font-size:13px;display:none;margin-bottom:15px}
.role-label{font-size:11px;color:#b7d2df}.status-time{font-size:12px;color:#7c8da1}.responsive-pad{padding:22px}.form-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.loading-bar{height:3px;background:#2f86a9;animation:load 1s ease-in-out infinite alternate}@keyframes load{from{opacity:.25}to{opacity:1}}
@media(max-width:970px){.split-detail{grid-template-columns:1fr}.field-list{grid-template-columns:1fr 1fr}.content{padding:23px 20px 70px}.topbar{padding:0 20px}}
@media(max-width:740px){.login-shell{grid-template-columns:1fr}.login-brand{min-height:190px;padding:26px}.login-brand h1{font-size:26px;max-width:none;margin-bottom:8px}.brand-foot,.login-highlights{display:none}.login-main{padding:30px 20px;align-items:start}.shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto;min-height:unset;padding:15px}.side-nav{flex-direction:row;flex-wrap:wrap}.side-nav button{width:auto}.side-logo{padding:0 7px 15px}.side-label,.side-footer{display:none}.topbar{height:auto;min-height:60px;padding:12px 16px}.topbar-right .field{display:none}.topbar-left .muted{display:none}.content{padding:17px 13px 50px}.page-head{flex-direction:column}.grid-3,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2{grid-template-columns:1fr}.field-list{grid-template-columns:1fr}.responsive-pad{padding:16px}}
