/* Learner UI refinement 2026-08-02 — hierarchy, density, controls */
:root{--color-bg:#f4f6f9;--color-panel:#fff;--color-text:#112338;--color-muted:#6b7b8d;--color-border:#dfe6ed;--color-navy:#0a2139;--color-gold:#bd9650;--radius-control:10px;--radius-card:14px;--shadow-card:0 12px 30px -28px rgba(17,35,56,.38);--polish-ink:var(--color-text);--polish-muted:var(--color-muted);--polish-line:var(--color-border);--polish-soft:#f4f7f9;--polish-navy:var(--color-navy);--polish-gold:var(--color-gold);--polish-radius:var(--radius-card);--polish-focus:rgba(49,95,134,.22)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(min-width:1024px){
  .home-carousel,.home-carousel-track{height:378px!important;min-height:378px!important;aspect-ratio:auto}.home-carousel .home-slide{height:100%!important;min-height:0!important}.home-carousel{margin-bottom:12px!important;border-radius:14px!important}.home-carousel .home-slide{padding:18px 31% 18px 28px!important;border-radius:14px!important}.home-carousel .home-slide h2{max-width:680px;margin:8px 0 4px;color:#fff;font:650 24px/1.16 system-ui,sans-serif;letter-spacing:-.4px}.home-carousel .home-slide p{max-width:620px;margin:5px 0 12px;font-size:11px;line-height:1.5}.home-carousel .hero-actions{margin-top:10px}.home-carousel .hero-actions .primary{min-height:40px;padding:9px 16px}.home-carousel .carousel-arrow{width:44px;height:44px}.home-carousel .carousel-toggle{top:12px;right:18px;min-width:44px;min-height:44px}.home-carousel .carousel-dots{right:20px;bottom:14px;min-height:44px;align-items:center}.home-carousel .carousel-dots button{height:6px;min-width:32px;min-height:32px;background:transparent;position:relative}.home-carousel .carousel-dots button::after{content:"";position:absolute;left:4px;right:4px;top:13px;height:5px;border-radius:5px;background:rgba(255,255,255,.3)}.home-carousel .carousel-dots button[aria-pressed="true"]::after{background:#d5b36f}
  .page{display:block}.desktop-topbar{height:72px;margin-bottom:18px;padding:0 22px;border-radius:14px;box-shadow:none;background:#fff}.topbar-title{display:flex;min-width:0;align-items:baseline;gap:16px}.topbar-title strong{flex:0 0 auto;color:var(--polish-ink);font-size:22px;line-height:1.2;letter-spacing:-.35px}.topbar-title span{min-width:0;color:var(--polish-muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-chip{min-width:112px;min-height:44px;padding:7px 12px;border-color:#dfcda8;background:#fffaf0}.member-chip span{font-size:11px}.member-chip small{font-size:9px}
  .courses-page .catalog-heading{display:none!important}.courses-page .course-toolbar{display:flex;min-height:58px;margin:0 auto 14px;padding:8px 10px 8px 16px;border:1px solid var(--polish-line);border-radius:12px;align-items:center;justify-content:space-between;gap:18px;background:#fff}.course-toolbar>div:first-child{display:flex;align-items:baseline;gap:10px;white-space:nowrap}.course-toolbar>div:first-child span{color:var(--polish-ink);font-size:14px;font-weight:750}.course-toolbar>div:first-child strong{color:var(--polish-muted);font-size:10px;font-weight:600}.courses-page .course-filter{display:flex;margin:0!important;padding:3px;border:1px solid #e4e9ee;border-radius:10px;gap:2px;background:#f5f7f9}.courses-page .course-filter button{min-height:38px;padding:8px 13px;border:0;border-radius:8px;background:transparent;color:#657588;font-size:11px;font-weight:700}.courses-page .course-filter button.active{background:#fff;color:var(--polish-ink);box-shadow:0 1px 5px rgba(20,43,67,.1)}.courses-page .course-list{gap:12px}.courses-page .course-card{border-radius:12px}.courses-page .course-card:hover{transform:translateY(-1px)}
  .recommendations-page .recommendations-hero,.tasks-page .task-hero,.profile-member-card,.security-overview,.device-summary{border-radius:14px}.recommendations-panel,.ticket-list-card,.ticket-detail,.security-box,.device-box{border-radius:12px}.section-head h2,.recommendations-panel h2{letter-spacing:-.25px}.recommendation-copy h3{margin:10px 0 6px;color:var(--polish-ink);font-size:18px;line-height:1.3}
  .profile-page .desktop-topbar{width:min(1200px,100%)!important;max-width:1200px!important;height:72px!important;min-height:72px!important;margin:0 auto 18px!important;padding:0 22px!important;border:1px solid var(--polish-line)!important;border-radius:14px!important;background:#fff!important;box-shadow:none!important}.profile-page .desktop-topbar .topbar-title strong{font-size:22px!important}.profile-page .desktop-topbar .topbar-title span{margin-top:0!important;font-size:12px!important}.profile-name-edit{min-width:72px!important;min-height:44px!important}
  .ticket-page-heading,.subpage-heading{padding-bottom:14px!important}.ticket-page-heading h1,.subpage-heading h1{font-size:24px!important}.ticket-page-heading p,.subpage-heading p{max-width:620px}.ticket-filter-pills button,.course-filter button{transition:background .16s,color .16s,box-shadow .16s}.ticket-list-row:hover{transform:none}.course-empty,.ticket-empty,.device-empty{color:var(--polish-muted)}
}
button,input,select,textarea{accent-color:#315f86}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--polish-focus);outline-offset:2px}.mini-btn,.link,.ticket-primary,.profile-name-edit,.subpage-back,.ticket-back{transition:background .16s,border-color .16s,color .16s,transform .16s}.mini-btn:active,.ticket-primary:active{transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.56}
@media(max-width:1023px){
  .home-carousel,.home-carousel-track{height:auto!important;min-height:0!important;aspect-ratio:19/10}.home-carousel .home-slide{height:100%!important;min-height:0!important}.home-carousel{margin-bottom:14px!important;border-radius:14px!important}.home-carousel .home-slide{padding:17px 16px 42px!important;border-radius:14px!important}.home-carousel .home-slide h2{max-width:88%;margin:7px 0 4px;color:#fff;font-size:21px;line-height:1.17}.home-carousel .home-slide p{margin:5px 0 9px;font-size:11px}.home-carousel .hero-actions{margin-top:8px}.home-carousel .hero-actions .primary{min-height:40px;padding:8px 14px}.home-carousel .carousel-toggle{top:8px;right:8px;min-width:44px;min-height:44px}.home-carousel .carousel-dots{left:12px;bottom:7px;min-height:44px;align-items:center}.home-carousel .carousel-dots button{position:relative;min-width:30px;min-height:36px;height:36px;background:transparent}.home-carousel .carousel-dots button::after{content:"";position:absolute;left:4px;right:4px;top:15px;height:5px;border-radius:5px;background:rgba(255,255,255,.3)}.home-carousel .carousel-dots button[aria-pressed="true"]::after{background:#d5b36f}
  .courses-page .catalog-heading{display:none!important}.courses-page .course-toolbar{display:grid;gap:10px;margin:4px 0 12px}.course-toolbar>div:first-child{display:flex;justify-content:space-between;align-items:center}.course-toolbar>div:first-child span{color:var(--polish-ink);font-size:16px;font-weight:750}.course-toolbar>div:first-child strong{color:var(--polish-muted);font-size:10px}.courses-page .course-filter{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:0!important;padding:4px;border:1px solid var(--polish-line);border-radius:11px;background:#f4f7f9}.courses-page .course-filter button{min-width:0;min-height:44px;padding:7px 4px;border:0;border-radius:8px;background:transparent;color:#647589;font-size:10px;font-weight:700}.courses-page .course-filter button.active{background:#fff;color:var(--polish-ink);box-shadow:0 1px 5px rgba(20,43,67,.09)}.courses-page .course-list{gap:10px}.courses-page .course-card{border-radius:12px}.mobile-subheader{min-height:52px}.ticket-page-heading h1{font-size:23px}.ticket-filter-pills{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.ticket-filter-pills button{min-height:44px;min-width:0;padding:8px 4px}.dialog-actions button,.task-submit,.device-unbind{min-height:44px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}.course-card,.recommendation-feature,.ticket-list-row,.mini-btn,.ticket-primary,.nav-btn{transition:none!important;transform:none!important}}
