/* Ucademy Campus v2 — additions on top of Claude Design campus files (uc-lms/uc-s3/uc-cv/uc-cv2) */
.uc :where(a){color:var(--uc-red-700)}.uc :where(a):hover{color:var(--uc-navy)}
.uc-lms{min-height:100vh;display:flex;flex-direction:column}
#main{flex:1}
/* header extras */
.ucc-out{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 10px;border-radius:var(--uc-r-sm);font-size:var(--uc-fs-sm);color:var(--uc-text-2)!important;text-decoration:none}
.ucc-out:hover{background:var(--uc-bg);color:var(--uc-navy)!important}.ucc-out svg{width:16px;height:16px}
.uc-lms-av,.uc-lms-login{text-decoration:none}
.uc-lms-av,.uc-lms-av:hover{color:var(--uc-navy)}
.cv-auth{background:#fff}
.uc-lms-login{color:#fff!important}
.ucc-menu{background:#fff;border-bottom:1px solid var(--uc-line);position:sticky;top:60px;z-index:59}
.ucc-menu .uc-wrap{display:grid;padding-top:8px;padding-bottom:12px}
.ucc-menu a{display:flex;align-items:center;min-height:48px;border-bottom:1px solid var(--uc-line);color:var(--uc-navy);font-weight:600;text-decoration:none}
.ucc-menu a:last-child{border-bottom:0}
@media(max-width:900px){.ucc-out{display:none}}
@media(min-width:901px){.ucc-menu{display:none!important}}
/* lesson */
.ucc-video{position:relative;aspect-ratio:16/9;background:var(--uc-navy-900);border-radius:var(--uc-r-md);overflow:hidden}
.ucc-video iframe,.ucc-video video{position:absolute;inset:0;width:100%;height:100%;border:0}
.cvl-a__bar .uc-btn.is-done{background:var(--uc-green);border-color:var(--uc-green);opacity:1}
.cvl-list a{color:var(--uc-text)}
.ucc-prose{font-size:1.0625rem;line-height:1.7;color:var(--uc-text)}
.ucc-prose>*+*{margin-top:14px}
.ucc-prose h2,.ucc-prose h3,.ucc-prose h4{font-family:var(--uc-f-head);color:var(--uc-navy);line-height:1.3;margin:28px 0 8px}
.ucc-prose h2{font-size:1.5rem}.ucc-prose h3{font-size:1.25rem}.ucc-prose h4{font-size:1.0625rem}
.ucc-prose ul,.ucc-prose ol{padding-left:22px;margin:0}.ucc-prose li+li{margin-top:6px}
.ucc-prose a{text-decoration:underline;text-underline-offset:2px}
.ucc-prose img{max-width:100%;height:auto;border-radius:var(--uc-r)}
.ucc-prose code{font:500 .875em ui-monospace,Menlo,monospace;background:var(--uc-bg);padding:2px 6px;border-radius:4px;color:var(--uc-navy)}
.ucc-prose pre{background:var(--uc-navy-900);color:#E6ECF7;border-radius:var(--uc-r);padding:16px 18px;font:500 .875rem/1.6 ui-monospace,Menlo,monospace;overflow:auto}
.ucc-prose pre code{background:none;padding:0;color:inherit}
.ucc-prose table{width:100%;border-collapse:collapse;font-size:var(--uc-fs-sm)}.ucc-prose th,.ucc-prose td{border:1px solid var(--uc-line);padding:10px 12px;text-align:left}.ucc-prose th{background:var(--uc-bg);color:var(--uc-navy)}
.ucc-prose .uc-lead{font-size:1.125rem;color:var(--uc-text)}
.ucc-prose .uc-obj{list-style:none;padding:0;display:grid;gap:10px}
.ucc-prose .uc-obj li{position:relative;padding-left:32px;margin:0}
.ucc-prose .uc-obj li::before{content:"";position:absolute;left:0;top:4px;width:20px;height:20px;border-radius:50%;background:var(--uc-green-50) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232E7D5B' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E") center/12px no-repeat}
.ucc-prose .uc-ph{justify-items:start;aspect-ratio:auto;min-height:0;text-align:left;font:400 1rem/1.5 var(--uc-f-body);text-transform:none;letter-spacing:normal;color:var(--uc-text);display:grid;grid-template-columns:44px 1fr;gap:4px 14px;align-items:center;padding:18px 20px;border:1.5px dashed var(--uc-line-2);border-radius:var(--uc-r-md);background:var(--uc-bg)}
.ucc-prose .uc-ph .i{grid-row:span 2;width:44px;height:44px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:1.25rem}
.ucc-prose .uc-ph .h{font-family:var(--uc-f-head);font-weight:600;color:var(--uc-navy)}
.ucc-prose .uc-ph .s{font:400 var(--uc-fs-sm)/1.5 var(--uc-f-body);text-transform:none;letter-spacing:normal;color:var(--uc-text-2)}
.ucc-prose .uc-ph .h{text-transform:none;letter-spacing:normal}
/* course list */
.uc-cvc-li b a{color:var(--uc-navy);text-decoration:none}.uc-cvc-li b a:hover{color:var(--uc-red-700);text-decoration:underline}
.uc-cvc-li li.is-done i{color:var(--uc-green)}.uc-cvc-li li.is-done i svg{width:18px;height:18px}
.uc-cvc-li li.is-cur{background:var(--uc-red-50);margin:0 -12px;padding-left:12px;padding-right:12px;border-radius:var(--uc-r-sm)}
.uc-cvc-li code:empty{visibility:hidden}
.uc-cvc-card__b .uc-lms-next{margin:0}
.uc-cvc-card__b .uc-lms-next svg{width:18px;height:18px;color:var(--uc-red);flex:none}
/* quiz */
.ucc-last{margin-bottom:20px}
.ucc-result:not([hidden]){display:block;margin-bottom:24px}
.uc-qmap a.is-a{background:var(--uc-navy);border-color:var(--uc-navy);color:#fff}
.uc-opt{text-align:left}
.ucc-qform .uc-test__foot .uc-btns{flex-wrap:nowrap}
/* misc */
.ucc-narrow{max-width:820px}
.ucc-resend{margin:0}
.ucc-code{font:600 1.5rem/1 ui-monospace,Menlo,monospace;letter-spacing:.4em;text-align:center}
.uc-cve-c:hover{border-color:var(--uc-line-2);box-shadow:var(--uc-sh-2)}
.uc-cve-box .uc-cve-date svg{width:22px;height:22px;color:var(--uc-gold)}
.uc-lms-badges .uc-lms-bdg i svg{width:22px;height:22px}
.cv-auth{min-height:calc(100vh - 160px)}
.cv-login .uc-btn--outline svg,.uc-lms-guest .uc-btn svg{width:18px;height:18px}
/* certificate */
.ucc-sample::after{content:"SAMPLE";position:absolute;inset:0;display:grid;place-items:center;font:800 12cqw/1 var(--uc-f-head);color:rgba(213,43,30,.07);transform:rotate(-18deg);pointer-events:none;letter-spacing:.1em}
@media print{
  @page{size:landscape;margin:10mm}
  body.uc-lms>*:not(#main){display:none!important}
  #main .uc-cv-crumb,#main .cvz-a__h,#main .cvz-a__h~p{display:none!important}
  #main .uc-cv{padding:0}#main .cvz-doc{box-shadow:none;max-width:none;width:100%}
}
.ucc-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.ucc-free{display:inline-block;margin-left:8px;font:600 .6875rem/1.4 var(--uc-f-body);padding:3px 8px;border-radius:99px;background:var(--uc-green-50);color:var(--uc-green)!important;vertical-align:2px;text-decoration:none}
a.ucc-free:hover{text-decoration:underline}
.ucc-prevnote{margin:0;align-self:center}
/* ── community & support (edu-campus-community.php, 06.10.2026) ── */
.ucc-nb{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;border-radius:99px;background:var(--uc-red);color:#fff;font:600 .6875rem/1 var(--uc-f-body);vertical-align:1px}
.uccm-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.uccm-head .uc-h2{margin:4px 0 6px}
.uccm-tabs{margin:0 0 16px}
.uccm-st{display:inline-block;font:600 .75rem/1.4 var(--uc-f-body);padding:3px 10px;border-radius:99px;white-space:nowrap}
.uccm-st--rev{background:var(--uc-red-50);color:var(--uc-red-700)}.uccm-st--ok{background:var(--uc-green-50);color:var(--uc-green)}.uccm-st--muted{background:var(--uc-bg);color:var(--uc-text-2)}
.uccm-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.uccm-list a{display:grid;grid-template-columns:40px 1fr auto;gap:14px;align-items:center;padding:14px 16px;background:#fff;border:1px solid var(--uc-line);border-radius:var(--uc-r-md);text-decoration:none;color:var(--uc-text)}
.uccm-list a:hover{border-color:var(--uc-line-2);box-shadow:var(--uc-sh-1)}
.uccm-list li.is-new a{border-left:3px solid var(--uc-red)}
.uccm-list li.is-new b::after{content:"";display:inline-block;width:8px;height:8px;margin-left:8px;border-radius:50%;background:var(--uc-red);vertical-align:2px}
.uccm-ic{width:40px;height:40px;border-radius:50%;background:var(--uc-bg);display:grid;place-items:center;color:var(--uc-navy)}.uccm-ic svg{width:20px;height:20px}
.uccm-t{display:grid;gap:2px;min-width:0}.uccm-t b{color:var(--uc-navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uccm-t small,.uccm-r small{color:var(--uc-text-2);font-size:var(--uc-fs-xs,.8125rem)}
.uccm-r{display:grid;justify-items:end;gap:4px}
.uccm-empty{text-align:center;display:grid;justify-items:center;gap:8px;padding:32px 20px}.uccm-empty>svg{width:32px;height:32px;color:var(--uc-text-2)}
.uccm-cats{border:0;margin:0;padding:0;display:grid;gap:10px}
.uccm-cat{display:block;cursor:pointer}.uccm-cat input{position:absolute;opacity:0}
.uccm-cat span{display:grid;grid-template-columns:24px 1fr;gap:2px 12px;padding:12px 14px;border:1.5px solid var(--uc-line);border-radius:var(--uc-r-md);background:#fff}
.uccm-cat span svg{grid-row:span 2;width:22px;height:22px;color:var(--uc-navy);margin-top:2px}.uccm-cat b{color:var(--uc-navy)}.uccm-cat small{color:var(--uc-text-2)}
.uccm-cat input:checked+span{border-color:var(--uc-navy);box-shadow:0 0 0 3px rgba(27,42,74,.08)}.uccm-cat input:focus-visible+span{outline:2px solid var(--uc-navy);outline-offset:2px}
.uccm-msgs{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:12px}
.uccm-m{padding:14px 16px;border:1px solid var(--uc-line);border-radius:var(--uc-r-md);background:#fff;max-width:88%}
.uccm-m.is-staff{background:var(--uc-bg);border-color:transparent;justify-self:start}.uccm-m:not(.is-staff){justify-self:end}
.uccm-m__h{display:flex;gap:10px;align-items:baseline;justify-content:space-between;margin-bottom:6px}.uccm-m__h b{color:var(--uc-navy);font-size:var(--uc-fs-sm)}.uccm-m__h small{color:var(--uc-text-2);font-size:.75rem}
.uccm-m__b{line-height:1.6;overflow-wrap:anywhere}
.uccm-file{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-size:var(--uc-fs-sm)}.uccm-file svg{width:16px;height:16px}
.uccm-form{margin-top:4px}
@media(max-width:600px){.uccm-list a{grid-template-columns:1fr auto}.uccm-ic{display:none}.uccm-m{max-width:100%}}
/* learning tools (edu-campus-learning.php) */
.uccm-sec{margin-top:40px}.uccm-sec__h{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.uccm-compose{margin-bottom:14px}.uccm-compose summary{cursor:pointer;display:flex;align-items:center;gap:8px;font-weight:600;color:var(--uc-navy)}.uccm-compose summary svg{width:18px;height:18px}.uccm-compose form{margin-top:14px}
.uccm-upd{background:#fff;border:1px solid var(--uc-line);border-radius:var(--uc-r-md);padding:16px 18px;margin-bottom:12px}
.uccm-upd__h{display:flex;gap:12px;align-items:center}.uccm-upd__h b{display:block;color:var(--uc-navy)}.uccm-upd__h small{color:var(--uc-text-2);font-size:.8125rem}
.uccm-upd__b{margin:10px 0 0;line-height:1.6}.uccm-upd__f{display:flex;gap:8px;align-items:center;margin-top:8px}.uccm-upd__f form{margin:0}
.uccm-upds .uccm-upd{margin-bottom:10px}
.uccm-recent{list-style:none;margin:0;padding:0;display:grid;gap:8px}.uccm-recent a{display:grid;gap:2px;padding:10px 14px;border:1px solid var(--uc-line);border-radius:var(--uc-r);text-decoration:none;background:#fff}.uccm-recent b{color:var(--uc-navy);font-weight:500}.uccm-recent small{color:var(--uc-text-2)}
.uccm-tools{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:flex-start;justify-content:space-between;margin-top:28px;padding-top:20px;border-top:1px solid var(--uc-line)}
.uccm-dl b{display:flex;align-items:center;gap:6px;color:var(--uc-navy)}.uccm-dl b svg,.uccm-tools .uc-btn svg{width:16px;height:16px}.uccm-dl ul{margin:6px 0 0;padding-left:22px}
.uccm-disc{margin-top:32px;padding-top:24px;border-top:1px solid var(--uc-line)}.uccm-disc>.uc-h3{margin-bottom:12px}
.uccm-dform{display:grid;gap:8px;margin-bottom:18px}.uccm-dform .uc-btn{justify-self:start}
.uccm-dl,.uccm-dl2{list-style:none;margin:0;padding:0;display:grid;gap:12px}.uccm-dl2{margin:10px 0 0 22px;padding-left:14px;border-left:2px solid var(--uc-line)}
.uccm-d{background:#fff}.uccm-d__h{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.uccm-d__h i{width:30px;height:30px;border-radius:50%;background:var(--uc-navy);color:#fff;display:grid;place-items:center;font:600 .75rem/1 var(--uc-f-body);font-style:normal}
.uccm-d.is-staff .uccm-d__h i{background:var(--uc-red)}.uccm-d__h b{color:var(--uc-navy);font-size:var(--uc-fs-sm)}.uccm-d__h small{color:var(--uc-text-2);font-size:.75rem}.uccm-hide{margin:0 0 0 auto}
.uccm-d__b{margin:6px 0 0 38px;line-height:1.6;overflow-wrap:anywhere}.uccm-d.is-hidden>.uccm-d__b{opacity:.55}
.uccm-reply{margin:6px 0 0 38px}.uccm-reply summary{cursor:pointer;font-size:var(--uc-fs-sm);color:var(--uc-red-700);font-weight:600}.uccm-reply form{margin-top:8px}
.uccm-pbar{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:flex-start;margin:10px 0 18px}
.uccm-speed{display:inline-flex;align-items:center;gap:6px;font-size:var(--uc-fs-sm);color:var(--uc-text-2)}.uccm-speed svg,.uccm-pbar>span svg{width:15px;height:15px}.uccm-speed select{border:1px solid var(--uc-line);border-radius:var(--uc-r-sm);padding:4px 6px;background:#fff}
.uccm-chap{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px;flex-basis:100%}
.uccm-chap button{display:inline-flex;gap:8px;align-items:center;border:1px solid var(--uc-line);background:#fff;border-radius:99px;padding:5px 12px;font:500 .8125rem/1.3 var(--uc-f-body);color:var(--uc-navy);cursor:pointer}
.uccm-chap button code{font:600 .75rem ui-monospace,Menlo,monospace;color:var(--uc-red-700)}.uccm-chap button.is-cur,.uccm-chap button:hover{border-color:var(--uc-navy)}
@media print{
  .cvl-a__side,.cvl-a__bar,.uccm-tools,.uccm-disc,.ucc-video,.uccm-pbar,.ucc-hp{display:none!important}
  .cvl-a{display:block!important}.cvl-a__main,.cvl-a__in{padding:0!important;max-width:none!important}
  .cvl-copy{font-size:11pt;line-height:1.55}.cvl-copy a{color:inherit}
}
/* browser labs (edu-campus-labs.php) */
.uccm-locked{display:grid;grid-template-columns:40px 1fr auto;gap:14px;align-items:center;padding:14px 16px;background:var(--uc-bg);border:1px dashed var(--uc-line-2);border-radius:var(--uc-r-md)}
.uccm-locked .uccm-st svg{width:12px;height:12px;vertical-align:-1px}
.uccm-labp .uc-wrap{max-width:1320px}
.uccm-lab{display:grid;grid-template-columns:minmax(260px,360px) 1fr;gap:20px;align-items:start;margin-top:8px}
.uccm-lab__task{position:sticky;top:76px;max-height:calc(100vh - 96px);overflow:auto}.uccm-lab__task .uc-h3{margin:6px 0 10px}.uccm-lab__txt{font-size:.9375rem}
.uccm-checks{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:8px}.uccm-checks li{display:flex;gap:8px;align-items:flex-start;font-size:var(--uc-fs-sm);color:var(--uc-text-2)}
.uccm-checks svg{width:16px;height:16px;flex:none;margin-top:2px;color:var(--uc-line-2)}.uccm-checks li.is-ok{color:var(--uc-text)}.uccm-checks li.is-ok svg{color:var(--uc-green)}.uccm-checks li.is-no svg{color:var(--uc-red)}
.uccm-lab__res{margin-top:14px}
.uccm-lab__ed{display:grid;gap:10px;min-width:0}
.uccm-lab__bar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.uccm-lab__bar .uc-btns{margin:0}.uccm-lab__bar .uc-btn svg{width:16px;height:16px}
.uccm-lab__tabs{display:flex;gap:4px;background:var(--uc-bg);padding:4px;border-radius:var(--uc-r)}
.uccm-lab__tabs button{border:0;background:none;padding:6px 12px;border-radius:var(--uc-r-sm);font:600 .8125rem var(--uc-f-body);color:var(--uc-text-2);cursor:pointer}.uccm-lab__tabs button[aria-selected=true]{background:#fff;color:var(--uc-navy);box-shadow:var(--uc-sh-1)}
.uccm-code{width:100%;min-height:300px;resize:vertical;border:0;border-radius:var(--uc-r-md);padding:14px 16px;background:var(--uc-navy-900);color:#E6ECF7;font:500 .875rem/1.6 ui-monospace,Menlo,Consolas,monospace;tab-size:2;white-space:pre;overflow:auto}
.uccm-code:focus{outline:2px solid var(--uc-red);outline-offset:2px}
.uccm-lab__out{display:grid;gap:10px}
.uccm-lab__view{width:100%;height:280px;border:1px solid var(--uc-line);border-radius:var(--uc-r-md);background:#fff}
.uccm-lab__con{border:1px solid var(--uc-line);border-radius:var(--uc-r-md);background:#fff}.uccm-lab__con b{display:block;padding:8px 14px;border-bottom:1px solid var(--uc-line);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--uc-text-2)}
.uccm-lab__con pre{margin:0;padding:12px 14px;min-height:80px;max-height:260px;overflow:auto;font:500 .8125rem/1.55 ui-monospace,Menlo,monospace;white-space:pre-wrap;color:var(--uc-text)}
@media(max-width:900px){.uccm-lab{grid-template-columns:1fr}.uccm-lab__task{position:static;max-height:none}.uccm-locked{grid-template-columns:1fr auto}.uccm-locked .uccm-ic{display:none}}
/* header with Labs + Messages: keep it on one line between the burger breakpoint and wide screens */
@media(min-width:901px) and (max-width:1200px){.uc-lms-back,.uc-lms-av span,.ucc-out span{display:none!important}.ucc-out{padding:0 8px}}
