/* Benstar's shared visual system. Does not change account or examination policies. */
:root{--hub-forest:#143f38;--hub-accent:#087d68;--hub-paper:#f4f7f4;--hub-border:#dae5df}
body.app{--side:258px;--sideBg:#143f38;--sideBg2:#0b302d;--teal:#087d68;--line:#dae5df;background:var(--hub-paper)}
body.app #appSide{padding:20px 14px;background:linear-gradient(160deg,#18493f,#0c2c2b);border-right:1px solid #143b34}.side-logo{border-radius:12px;padding:12px;margin-bottom:14px}.side-role{letter-spacing:.19em;font-size:10px;margin-bottom:15px}.side-nav{gap:4px}.side-nav a{font-size:13px;padding:11px 12px;border-radius:8px;transition:background .15s,color .15s}.side-nav a.active{background:#ffffff1f;box-shadow:inset 3px 0 #a5dbbd}.side-nav a .i{font-size:16px}.side-me{padding-top:16px}.side-me .who{font-size:14px}.prog-switch{border-radius:9px;padding:4px;margin-bottom:18px}.prog-switch button{border-radius:6px;padding:7px 3px;font-size:11px}
body.app #appTop{background:#ffffffed;padding:14px 24px;min-height:72px;border-bottom:1px solid var(--hub-border)}#appTop .crumbs{font-size:12px}.top-tools{gap:8px}#shellSearch{font-size:12px;border-radius:8px;padding:10px 12px;width:min(260px,25vw)}#appTop .icon{border-radius:8px}.hub-command-button{font:inherit;font-size:12px;font-weight:600;border:1px solid var(--hub-border);color:#375e51;background:#f5f9f5;border-radius:8px;padding:10px 13px;white-space:nowrap;cursor:pointer}body.app main{padding:24px 28px 48px}.hub-workspace-label{display:flex;justify-content:space-between;gap:12px;color:#72877b;font-size:11px;margin:0 0 23px}.hub-workspace-label>span:first-child{letter-spacing:1px;text-transform:uppercase;color:#2f7861;font-weight:700}.page-title{padding:8px 0 18px;border-bottom:1px solid var(--hub-border);margin-bottom:24px}.page-title h1{font-size:clamp(25px,2.6vw,37px);letter-spacing:-1px;line-height:1.2}.page-title p{font-size:13px;margin-top:9px}.page-title .row{gap:8px}.stats{gap:14px;margin-bottom:24px}.stat{border:1px solid var(--hub-border)!important;border-radius:12px!important;padding:20px!important;box-shadow:0 3px 12px #153b2e04;background:#fff!important}.stat b{font-size:31px!important;line-height:1.2}.stat .ic{background:#edf5ef;border-radius:10px;padding:10px}.stat span:not(.ic){font-size:12px}.stat.warn{border-top:3px solid #dca64a!important}.stat.bad{border-top:3px solid #ba5a50!important}.stat.blue{border-top:3px solid #599b97!important}.panel{border:1px solid var(--hub-border)!important;border-radius:13px!important;box-shadow:0 3px 15px #153b2e04!important}.panel-head{gap:12px;padding-bottom:15px}.panel-head h2{font-size:16px;letter-spacing:-.3px}.panel-head>a{font-size:12px}.list-row{border-color:#e2eae4;border-radius:9px;padding:14px 15px}.list-row:hover{background:#fafcfa}.list-row .meta{font-size:12px;line-height:1.7}.list-row .when{font-size:13px}.empty{background:#f6f9f5;border:1px dashed #d4e0d5;border-radius:10px;padding:25px;text-align:center;font-size:13px;color:#728376}.pill{font-size:10px;letter-spacing:.2px;padding:5px 9px}.primary,.secondary,.ghost{border-radius:8px!important;font-size:12px!important;padding:10px 14px}.primary{background:#087d68!important;border-color:#087d68!important;color:white!important}.primary:hover{background:#075f51!important}.secondary{background:#fff;border-color:#cdded2;color:#23594a}.hub-shortcuts{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:22px}.hub-shortcuts b{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#7b8e80;margin-right:6px}.hub-shortcuts a{padding:8px 12px;border:1px solid #d8e5da;background:#fff;border-radius:7px;text-decoration:none;color:#38634f;font-size:11px}.hub-shortcuts[hidden]{display:none}.hub-density{display:block;color:#b6d7c6;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:6px;font-size:10px;padding:7px 9px;cursor:pointer;margin-bottom:12px}.hub-compact .list-row{padding:8px 12px}.hub-compact .stat{padding:12px!important}.hub-compact .side-nav a{padding:8px 12px}.hub-compact .panel{padding:14px}.hub-skip{position:fixed;left:14px;top:-100px;z-index:2000;background:#fff;color:#124534;padding:12px;border:2px solid #0e8064;border-radius:6px}.hub-skip:focus{top:14px}.hub-connection{margin-left:var(--side);padding:12px 28px;background:#fff0d3;color:#775322;font-size:12px}.hub-connection[hidden]{display:none}
.hub-palette{width:min(600px,calc(100vw - 24px));padding:0;border:1px solid #d3dfd5;border-radius:16px;box-shadow:0 30px 90px #0e302e55;max-height:80dvh}.hub-palette::backdrop{background:#0b282b88;backdrop-filter:blur(3px)}.hub-palette-top{display:flex;align-items:center;justify-content:space-between;padding:22px 24px 16px}.hub-palette-top small{font-size:9px;letter-spacing:1.5px;color:#549377}.hub-palette-top h2{font-size:20px;margin:7px 0 0}.hub-palette>input{display:block;width:calc(100% - 48px);margin:0 24px 14px;padding:13px;border:1px solid #c1d8c8;border-radius:8px;font:inherit;font-size:14px}.hub-palette-results{padding:0 12px 12px;max-height:48dvh;overflow:auto}.hub-command-row{display:flex;gap:8px;border-radius:8px}.hub-command-row.selected{background:#edf5ed}.hub-command-row>a{display:flex;gap:12px;align-items:center;flex:1;min-width:0;padding:12px;text-decoration:none;color:#234e40}.hub-command-row b{font-size:13px;flex:1}.hub-command-row small{font-size:9px;color:#6c917b}.hub-command-icon{width:22px;text-align:center}.hub-pin{background:transparent;border:0;color:#a57a22;font-size:21px;cursor:pointer;width:42px;border-radius:6px}.hub-palette footer{display:flex;justify-content:space-between;padding:14px 24px;background:#f5f8f3;border-top:1px solid #e1e8df;font-size:10px;color:#7b8e7d}.hub-no-results{padding:20px;text-align:center;font-size:13px;color:#718477}
.auth-page{background:#f1f6f1!important}.auth-wrap{display:grid!important;grid-template-columns:1fr 1fr;align-items:center;gap:50px;max-width:1100px!important;padding:55px 32px!important}.auth-brand{grid-column:1/-1;margin-bottom:0!important;justify-content:flex-start!important}.auth-brand>span{font-size:15px!important}.auth-brand img{height:65px!important}.hub-auth-story{align-self:start;padding-top:24px}.hub-auth-story .eyebrow{font-size:10px;letter-spacing:1.8px;color:#2b8464;font-weight:700}.hub-auth-story h1{font-size:clamp(35px,4vw,55px);line-height:1.1;letter-spacing:-1.8px;margin:18px 0 22px;color:#153f35}.hub-auth-story>p{font-size:15px;line-height:1.9;color:#6a8071;max-width:410px}.hub-auth-story ul{display:grid;gap:15px;list-style:none;padding:15px 0 0;color:#3f6750;font-size:13px}.hub-auth-story li{display:flex;gap:10px}.hub-auth-story li:before{content:'✓';display:grid;place-items:center;width:21px;height:21px;flex-shrink:0;background:#e1efe2;border-radius:50%;font-size:11px}.auth-card{margin:0!important;padding:30px!important;border-radius:16px!important;border:1px solid #d6e4d6!important;background:white!important;box-shadow:0 14px 40px #214e3410!important}.auth-card h1{font-size:27px!important;letter-spacing:-.8px}.auth-form{gap:16px}.auth-form label{font-size:12px;color:#466a51}.auth-form input{border-radius:8px!important;padding:12px!important;font-size:14px;border:1px solid #cfdece!important}.auth-form button.primary{padding:13px!important}.auth-foot{grid-column:2;font-size:11px!important;line-height:1.8;margin:0!important;color:#728575}.hub-password-wrap{position:relative}.hub-password-wrap>input{width:100%;padding-right:58px!important}.hub-show-password{position:absolute;right:7px;top:50%;transform:translateY(-50%);background:#f1f6ef;color:#47704d;border:0;border-radius:5px;padding:6px;font-size:10px;cursor:pointer}.hub-caps-lock{font-size:11px;color:#a26e20;margin:8px 0 0}.hub-auth-retry{display:block;margin-top:14px}.hub-auth-error{padding:14px;border-radius:8px;background:#fff4e4;font-size:13px}.ink-stage canvas{-webkit-touch-callout:none;user-select:none;-webkit-user-drag:none}.cr-editor.present .cr-canvas{min-height:0;height:auto}.cr-editor.present .ink-stage{min-height:0}.cr-editor.present .cr-head{position:relative;grid-row:1;padding:8px 12px;right:auto;bottom:auto}.cr-editor.present{grid-template-rows:auto minmax(0,1fr)!important}.cr-editor.present .cr-canvas{grid-row:2}.cr-editor.present .cr-head>.keep{display:inline-flex!important}.cr-editor.present .cr-head #crTitle{display:block!important;max-width:400px}.cr-editor.present .cr-save{margin-left:auto}.cr-editor.present .cr-pager{gap:8px}.cr-editor.present .cr-canvas .ink-bar{border-radius:9px;flex-shrink:0}.cr-editor.present .cr-canvas .ink-stage{border-radius:9px}.cr-editor.present dialog{z-index:400}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-width:1100px){.hub-command-button{font-size:0}.hub-command-button:before{content:'⌕';font-size:19px}#shellSearch{width:23vw}body.app main{padding:20px}.auth-wrap{gap:28px}}
@media(max-width:760px){body.app{--side:248px}body.app #appTop{padding:10px 12px;margin-left:0}.hub-workspace-label{font-size:9px;gap:8px;margin-bottom:17px}.hub-workspace-label>span:last-child{max-width:48%;text-align:right}.hub-connection{margin-left:0;padding:12px}.top-tools{gap:3px}.hub-command-button{padding:7px 9px}#shellSearch{width:26vw;font-size:11px;padding:8px}body.app main{margin-left:0;padding:17px 14px 35px}.page-title{gap:13px;padding-top:4px}.page-title h1{font-size:26px}.page-title .row{gap:6px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{padding:13px!important}.stat .ic{padding:6px;font-size:18px}.stat b{font-size:25px!important}.stat span:not(.ic){font-size:10px}.hub-shortcuts{gap:6px}.hub-shortcuts b{width:100%}.hub-shortcuts a{font-size:10px;padding:8px}.auth-wrap{display:flex!important;flex-direction:column;gap:24px;padding:25px 20px!important;max-width:520px!important}.auth-brand{align-self:flex-start}.auth-brand img{height:48px!important}.auth-brand>span{font-size:12px!important}.auth-brand small{font-size:8px}.hub-auth-story{padding-top:4px;align-self:stretch}.hub-auth-story h1{font-size:37px;margin:12px 0}.hub-auth-story>p{font-size:13px;line-height:1.7;margin-bottom:0}.hub-auth-story ul{display:none}.auth-card{align-self:stretch;padding:24px!important}.auth-foot{align-self:stretch}.hub-palette footer span{display:none}.cr-editor.present .cr-head{flex-wrap:wrap;padding:7px}.cr-editor.present .cr-head #crTitle{max-width:150px;font-size:12px}.cr-editor.present .cr-save{font-size:10px}.cr-editor.present .cr-head .cr-pager{gap:3px}}

.hub-data-warning{background:#fff2da;border:1px solid #ead4a9;color:#775724;border-radius:9px;padding:14px 16px;font-size:12px;line-height:1.7;margin-bottom:20px}.hub-data-warning a{font-weight:700;color:inherit}

.ink-bar [hidden]{display:none!important}
