.ex{--purple:#5146d8;--navy:#17253d;--mint:#d5f4e5;--border:#dce2ec;--muted:#59667b;color:var(--navy);max-width:1500px;margin:auto}.ex-top{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:21px 32px;border-bottom:1px solid var(--border);font-size:.76rem;letter-spacing:.025em}.ex-top a{font-weight:750}.ex-save{max-width:330px;text-align:right;letter-spacing:0}.ex-frame{display:grid;grid-template-columns:254px minmax(0,1fr)}.ex-sidebar{border-right:1px solid var(--border);padding:32px 23px;background:#f0f3f9}.ex-brand{display:flex;align-items:center;gap:12px;color:var(--navy);font-size:1.05rem;line-height:1.25;margin-bottom:30px}.ex-mark{display:grid;place-content:center;width:49px;height:49px;background:var(--purple);border-radius:13px;color:white;font-size:1.4rem;font-weight:800;position:relative}.ex-mark span{position:absolute;right:5px;top:2px;font-size:.8rem}.ex-sidebar nav{display:grid;gap:8px}.ex-sidebar nav a{display:flex;align-items:center;padding:11px 12px;color:#44516a;font-size:.87rem;border-radius:9px}.ex-sidebar nav a span{margin-left:auto;font-size:.7rem;background:#e0e4f0;padding:1px 7px;border-radius:4px}.ex-sidebar nav a[aria-current=page]{background:var(--purple);color:white}.ex-sidebar nav a[aria-current=page] span{background:#ffffff24;color:white}.ex-side-progress{margin:35px 0 20px;padding-top:20px;border-top:1px solid #d3dbe7}.ex progress{width:100%;height:8px;accent-color:var(--purple)}.ex small,.ex-local{font-size:.77rem;color:var(--muted);line-height:1.6}.ex-sidebar>a:last-child{font-size:.78rem}.ex-view{min-width:0;padding:40px;scroll-margin-top:85px}.ex-kicker{font-size:.71rem;letter-spacing:.14em;color:var(--purple);text-transform:uppercase;font-weight:850;margin:0 0 12px}.ex h1{font-size:clamp(2.25rem,4.6vw,4.5rem);letter-spacing:-.06em;line-height:1.03;margin:12px 0 24px}.ex h1 em{color:var(--purple);font-style:normal}.ex h2{font-size:1.7rem;line-height:1.2;letter-spacing:-.035em}.ex h3{line-height:1.3;font-size:1.15rem}.ex p{max-width:820px}.ex-lead{font-size:1.05rem;line-height:1.75;color:var(--muted)}.ex-hero{display:grid;grid-template-columns:1.3fr .8fr;gap:30px;align-items:center}.ex-orbit{background:var(--navy);color:white;border-radius:22px;padding:25px;transform:rotate(2deg);box-shadow:8px 9px 0 #deddf9}.ex-orbit small{color:#c4cde1}.ex-orbit b{display:block;font-size:1.65rem;line-height:1.4;letter-spacing:-.04em}.ex-orbit b:nth-child(3){color:#bcf2d9}.ex-orbit .ex-dots{display:flex;gap:9px;margin:24px 0}.ex-dots i{height:10px;width:10px;border-radius:50%;background:#bcb5ff}.ex-dots i:nth-child(even){background:#a7e9cd}.ex-stats{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--border);margin:38px 0 30px;padding:22px 0;gap:18px}.ex-stats strong{font-size:1.8rem;display:block;line-height:1.2}.ex-stats span{font-size:.78rem;color:var(--muted)}.ex-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.ex-card{padding:24px;border:1px solid var(--border);border-radius:14px;background:#fff;margin:18px 0}.ex-grid>.ex-card{margin:0}.ex-card p{color:#536077}.ex-card h3{margin:12px 0}.ex-tag{font-size:.67rem;letter-spacing:.06em;text-transform:uppercase;color:#4940ac;background:#eeecff;display:inline-block;padding:5px 9px;border-radius:5px;font-weight:750}.ex-card .ex-number{font-size:2.2rem;color:#c4c2ed;font-weight:800;float:right}.ex-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:20px 0}.ex button,.ex .ex-button{display:inline-flex;align-items:center;justify-content:center;padding:11px 15px!important;min-height:43px!important;border:1px solid #cdd2e5;background:#fff;color:#37316c;font:700 .88rem/1.35 system-ui,sans-serif!important;border-radius:8px!important;cursor:pointer;text-decoration:none!important}.ex button.primary,.ex .ex-button.primary{background:var(--purple);border-color:var(--purple);color:#fff}.ex button[aria-pressed=true]{background:#e7e3ff;border:2px solid #6d60d2}.ex button:disabled{opacity:.5;cursor:not-allowed}.ex a{color:#4940be}.ex label{display:block;font-weight:700;font-size:.88rem;margin:17px 0 7px}.ex input:not([type=checkbox]):not([type=range]),.ex select,.ex textarea{width:100%;height:auto;min-height:46px;padding:11px 12px;border:1px solid #b8c3d5;border-radius:8px;background:#fff;color:var(--navy);font:inherit;line-height:1.5}.ex textarea{min-height:125px;resize:vertical}.ex input[type=range]{width:100%;accent-color:var(--purple)}.ex-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin:25px 0}.ex-list{display:grid;gap:10px}.ex-lesson-row{display:flex;align-items:center;gap:15px;padding:18px;border:1px solid var(--border);background:white;border-radius:11px}.ex-lesson-row>span:first-child{font-size:.8rem;font-weight:800;color:#6960c0;min-width:25px}.ex-lesson-row>div{flex:1}.ex-lesson-row h3{margin:0 0 5px;font-size:1rem}.ex-lesson-row p{margin:0;font-size:.75rem;color:var(--muted)}.ex-lesson-row a{font-weight:700}.ex-result{background:#eef2f9;border-left:3px solid #7268d9;border-radius:0 8px 8px 0;padding:16px;margin:16px 0;white-space:pre-wrap;overflow-wrap:anywhere}.ex-result:empty{display:none}.ex-example{background:#edf7f1;border-left:3px solid #25805d;padding:18px 22px;border-radius:0 10px 10px 0;margin:22px 0}.ex-example p{margin:8px 0}.ex-choices{display:grid;gap:9px}.ex-choices button{text-align:left;justify-content:flex-start}.ex details{border-top:1px solid var(--border);padding:16px 0}.ex summary{cursor:pointer;font-weight:750}.ex pre{padding:20px;background:var(--navy);color:#edf2ff;white-space:pre-wrap;overflow-wrap:anywhere;font:.86rem/1.7 ui-monospace,monospace;border-radius:10px}.ex .ex-check{display:flex;align-items:flex-start;gap:10px;font-weight:500}.ex .ex-check input{margin-top:6px;accent-color:var(--purple)}.ex-meter{height:22px;border-radius:7px;display:flex;overflow:hidden;background:#e7eaf2;margin:15px 0}.ex-meter span{height:100%;background:#665be2}.ex-meter span:nth-child(2){background:#20826c}.ex-meter span:nth-child(3){background:#e79a40}.ex-meter span:nth-child(4){background:#ac84c9}.ex-foot{padding:25px 32px;border-top:1px solid var(--border);font-size:.8rem;color:var(--muted)}.ex-foot a{display:block;margin-top:8px}.ex-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.ex :focus-visible{outline:3px solid #7d72e7;outline-offset:4px}.ex ul,.ex ol{padding-left:23px}.ex li{margin:7px 0}.ex-muted{color:var(--muted)}.ex .ex-empty{padding:35px;background:#eeedf7;border-radius:12px}.ex .ex-subnav{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0}.ex-project-step{border-bottom:1px solid var(--border);padding-bottom:18px}.ex .ex-status{font-size:.82rem;min-height:1.5em;color:#4940ac}.ex .ex-note{font-size:.8rem}.ex .ex-due{color:#85451b;font-weight:700}
@media(min-width:1100px){.ex-sidebar nav{position:relative}.ex-sidebar{min-height:calc(100vh - 150px)}}@media(max-width:1050px){.ex-frame{grid-template-columns:215px minmax(0,1fr)}.ex-view{padding:28px}.ex-hero{grid-template-columns:1fr}.ex-orbit{transform:none}.ex-orbit b{display:inline-block;font-size:1.4rem;margin-right:9px}.ex-orbit .ex-dots{margin:15px 0}.ex-filters{grid-template-columns:1fr 1fr}.ex-filters>div:first-child{grid-column:1/-1}}
@media(max-width:750px){.ex-frame{grid-template-columns:1fr}.ex-sidebar{border-right:0;border-bottom:1px solid var(--border);padding:18px 20px}.ex-brand{margin-bottom:14px}.ex-sidebar nav{grid-template-columns:1fr 1fr;gap:5px}.ex-sidebar nav a{padding:9px;font-size:.78rem}.ex-side-progress{margin:16px 0 0;padding:0;border:0}.ex-side-progress p{margin:0 0 5px}.ex-side-progress small,.ex-local,.ex-sidebar>a:last-child{display:none}.ex-top{padding:15px 20px;gap:12px;flex-wrap:wrap}.ex-top>span:nth-child(2){display:none}.ex-save{max-width:none;text-align:left}.ex-view{padding:28px 20px}.ex-grid{grid-template-columns:1fr}.ex h1{font-size:2.8rem}.ex-stats{gap:10px}.ex-stats strong{font-size:1.6rem}.ex-stats span{font-size:.7rem}.ex-card{padding:21px}.ex-lesson-row{align-items:flex-start;padding:14px}.ex-heading-row{flex-wrap:wrap}.ex-foot{padding:22px 20px}.ex-filters{grid-template-columns:1fr}.ex-filters>div:first-child{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.ex *{scroll-behavior:auto!important;transition:none!important}}@media print{.site-header,.site-footer,.ex-sidebar,.ex-top,.ex-actions,.ex button,.ex-foot{display:none!important}.ex-frame,.ex-grid{display:block}.ex-view{padding:0}.ex-card{break-inside:avoid}.ex pre{background:#fff;color:#000}.ex h1{font-size:2rem}}
