@font-face{font-family:SCTerminal;src:url("/app/assets/ascii/DejaVuSansMono.woff") format("woff");font-display:block;font-weight:400;font-style:normal}
/* Text-only Terminal skin. Every application override is opt-in and scoped. */
button.style-tile[data-style=ascii] .style-scene{display:none}
.ascii-tile-preview{font:10px/1.3 SCTerminal,ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;white-space:pre;margin:0;padding:10px 4px;overflow:hidden;background:#030605;color:#55ff88;min-height:116px;display:grid;align-content:center}
[data-ascii]{color-scheme:dark!important;--app-bg:#030605!important;--surface:#09110d!important;--surface-secondary:#09110d!important;--surface-elevated:#09110d!important;--surface-rgb:9,17,13!important;--text-primary:var(--ascii-text,#e5f7ea)!important;--text-secondary:#77978a!important;--accent:var(--ascii-accent,#55ff88)!important;--accent-secondary:#63cfff!important;--border:#315542!important;--separator:#253e30!important;--radius:0px!important;--glass-blur:0px!important;--shadow:none!important;font-family:SCTerminal,ui-monospace,SFMono-Regular,Consolas,"Liberation Mono","DejaVu Sans Mono",monospace!important}
[data-ascii] body{background:#030605!important;color:var(--text-primary)!important;font-family:inherit!important;isolation:isolate}
[data-ascii] *,[data-ascii] *::before,[data-ascii] *::after{border-radius:0!important;box-shadow:none!important;text-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background-image:none!important;letter-spacing:0!important}
[data-ascii] .aurora,[data-ascii] img,[data-ascii] svg,[data-ascii] canvas,[data-ascii] video,[data-ascii] .ic-chart,[data-ascii] .ic-scribble,[data-ascii] .style-scene,[data-ascii] .option-sample,[data-ascii] .mini-nav,[data-ascii] .ic-empty-star{display:none!important}
[data-ascii] button,[data-ascii] a,[data-ascii] input,[data-ascii] select,[data-ascii] textarea{font-family:inherit!important;font-size:14px!important;line-height:1.5!important;letter-spacing:0!important}
[data-ascii] h1{font-size:clamp(23px,4vw,30px)!important;font-weight:650!important;line-height:1.25!important;color:var(--accent)!important}
[data-ascii] h2{font-size:20px!important;line-height:1.35!important;color:var(--accent)!important}
[data-ascii] h3{font-size:16px!important;line-height:1.4!important;color:inherit!important}
[data-ascii] p,[data-ascii] label{font-size:14px;line-height:1.6}
[data-ascii] .muted,[data-ascii] small,[data-ascii] .meta,[data-ascii] .eyebrow{color:#91ada0!important;line-height:1.6!important}
[data-ascii] button,[data-ascii] a{color:var(--text-primary)!important;background:transparent!important;border:0!important;min-height:44px;overflow-wrap:anywhere;position:relative;transform:none!important;transition:color .15s!important}
[data-ascii] button:not(.lesson-open):not(.ascii-mini-calendar):not(.style-tile)::before,[data-ascii] a:not(.partner-invest-card):not(.ic-news-card)::before{content:"[ ";color:var(--accent);white-space:pre;flex-shrink:0}
[data-ascii] button:not(.lesson-open):not(.ascii-mini-calendar):not(.style-tile)::after,[data-ascii] a:not(.partner-invest-card):not(.ic-news-card)::after{content:" ]";color:var(--accent);white-space:pre;flex-shrink:0}
[data-ascii] button:hover,[data-ascii] a:hover,[data-ascii] button.selected,[data-ascii] button[aria-pressed=true]{color:var(--accent)!important;background:#102218!important}
[data-ascii] button:hover::before{content:"[ > "!important}
[data-ascii] button:disabled{color:#77978a!important;opacity:.65}
[data-ascii] :focus-visible{outline:2px dashed var(--accent)!important;outline-offset:3px!important}
[data-ascii] .primary{color:var(--accent)!important;background:#0a2012!important;font-weight:650!important}
[data-ascii] .danger,[data-ascii] .form-error,[data-ascii] .conflict-warning{color:#ff8e94!important}
[data-ascii] .ascii-icon{font-size:14px;line-height:1;display:inline-block;color:var(--accent);font-style:normal;white-space:pre;flex-shrink:0}
[data-ascii] .ascii-art{font:12px/1.3 SCTerminal,ui-monospace,SFMono-Regular,Consolas,"Liberation Mono","DejaVu Sans Mono",monospace;white-space:pre;overflow:hidden;max-width:100%;margin:0;color:var(--accent);pointer-events:none;user-select:none;direction:ltr;text-align:left}
[data-ascii] .ascii-media{font-size:13px!important;line-height:1.3!important;padding:16px;display:block;white-space:pre;position:relative!important;width:auto!important;height:auto!important;min-height:120px}
[data-ascii] .ascii-measure{position:fixed;visibility:hidden;font:12px/16px SCTerminal,ui-monospace,SFMono-Regular,Consolas,"Liberation Mono","DejaVu Sans Mono",monospace;white-space:pre}
[data-ascii] .ascii-window{position:relative;border:0!important;background:#09110df5!important}
[data-ascii] .ascii-frame{position:absolute;inset:0;display:block;pointer-events:none!important;z-index:3;overflow:hidden;color:var(--accent);opacity:.75;font:12px/16px SCTerminal,ui-monospace,SFMono-Regular,Consolas,"Liberation Mono","DejaVu Sans Mono",monospace;user-select:none}
[data-ascii] .ascii-edge{position:absolute;white-space:pre;line-height:16px;font-size:12px;display:block;pointer-events:none}
[data-ascii] .ascii-edge-top{left:0;top:-2px}[data-ascii] .ascii-edge-bottom{left:0;bottom:-2px}[data-ascii] .ascii-edge-left{left:0;top:13px}[data-ascii] .ascii-edge-right{right:0;top:13px}
[data-ascii] .app{padding:12px 12px 100px;max-width:760px;min-height:75dvh;position:relative;z-index:1}
[data-ascii] .topbar{gap:8px;flex-wrap:wrap;padding:12px;min-height:86px;margin-bottom:24px;background:#030605!important}
[data-ascii] .brand{font-size:12px;font-weight:650;min-width:110px;line-height:1.4;text-transform:uppercase;color:var(--accent)}
[data-ascii] .brand small{font-size:11px!important}
[data-ascii] .topbar .icon-button{width:36px;height:36px;min-height:44px;padding:0;display:grid;place-items:center}
[data-ascii] .icon-button::before,[data-ascii] .icon-button::after{display:none}
[data-ascii] .ascii-header-status{font-size:10px;line-height:1.5;flex-basis:100%;color:#91ada0;text-align:center;white-space:normal}
[data-ascii] .bottom-nav{transform:none!important;translate:none!important;inset-inline-start:8px!important;position:fixed!important;inset:auto 8px max(8px,env(safe-area-inset-bottom))!important;width:calc(100% - 16px)!important;max-width:none!important;margin:0!important;padding:10px 8px!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;background:#030605!important;z-index:20;min-height:66px;isolation:isolate}
[data-ascii] .bottom-nav::before{content:none!important}
[data-ascii] .bottom-nav button{padding:3px!important;display:flex!important;flex-direction:column;justify-content:center;gap:6px;min-width:0}
[data-ascii] .bottom-nav button::before,[data-ascii] .bottom-nav button::after{display:none}
[data-ascii] .nav-label{font-size:10px!important;line-height:1.2}
[data-ascii] .bottom-nav button[aria-current=page] .nav-label::before{content:"> ";color:var(--accent)}
[data-ascii] main{position:relative;min-width:0}
[data-ascii] .section-head{margin:18px 0 16px}
[data-ascii] .section-head h1::before{content:"> ";font-size:.7em}
[data-ascii] .section-head h1::after{content:" _";animation:ascii-cursor 1.8s steps(1) infinite}
[data-ascii] .section-head .grow{min-width:0}
[data-ascii] .segments{gap:4px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:none!important}
[data-ascii] .segments button{padding:8px 4px;font-size:12px!important;flex:1}
[data-ascii] .date-strip{padding:12px 7px;gap:1px;margin:14px 0;max-width:none!important;background:#030605!important}
[data-ascii] .date-strip button{padding:7px 0;min-width:0;flex:1;gap:3px;font-size:14px!important;border-bottom:1px solid #315542!important}
[data-ascii] .date-strip button::before,[data-ascii] .date-strip button::after{display:none}
[data-ascii] .date-strip .selected{color:#030605!important;background:var(--accent)!important}
[data-ascii] .date-strip .selected small{color:#030605!important}
[data-ascii] .today-layout{display:grid!important;grid-template-columns:minmax(0,1fr);gap:22px}
[data-ascii] .hero{padding:20px;min-height:0;overflow:visible;background:#09110d!important;margin:12px 0 20px}
[data-ascii] .hero-story{min-width:0}
[data-ascii] .hero-instrument{padding:12px 0!important;background:transparent!important;color:var(--accent)!important;min-width:0}
[data-ascii] .hero-time{font-size:clamp(24px,5vw,34px)!important;line-height:1.3!important;letter-spacing:0!important}
[data-ascii] .hero h2{font-size:21px!important;line-height:1.4!important;margin:10px 0}
[data-ascii] .hero-metadata{gap:6px!important}
[data-ascii] .hero-lesson-open{font-size:12px!important;max-width:100%;text-align:left;padding-inline:8px}
[data-ascii] .badge{color:var(--accent)!important;background:none!important;border:0!important;font-size:11px;padding:2px 0;min-width:0}
[data-ascii] .badge[data-ascii-label]{font-size:0!important;display:block}
[data-ascii] .badge[data-ascii-label]>*{display:none!important}
[data-ascii] .badge::before{content:none;background:none!important;width:auto!important;height:auto!important}
[data-ascii] .badge[data-ascii-label]::before{content:attr(data-ascii-label);display:inline;font-size:12px;line-height:1.6;color:inherit}
[data-ascii] .summary-strip{padding:15px 8px!important;gap:4px;background:#030605!important;margin:18px 0}
[data-ascii] .summary-strip>div{padding:0 5px;border-color:#315542!important}
[data-ascii] .summary-strip strong{font-size:23px!important;color:var(--accent)}
[data-ascii] .summary-strip small{font-size:10px!important}
[data-ascii] .timeline{padding:0!important;margin:0!important;border:0!important;gap:14px}
[data-ascii] .timeline::before,[data-ascii] .lesson::before{content:none!important}
[data-ascii] .lesson{padding:18px 18px 36px!important;margin:0 0 12px!important;min-height:160px;overflow:visible;opacity:1!important;color:var(--accent)}
[data-ascii] .lesson:nth-of-type(4n+2){color:#63cfff}
[data-ascii] .lesson:nth-of-type(4n+3),[data-ascii] .lesson.elective{color:#d89aff}
[data-ascii] .lesson:nth-of-type(4n){color:#ffd36b}
[data-ascii] .lesson .ascii-frame{color:inherit;opacity:.8}
[data-ascii] .lesson .time{font-size:14px!important;color:inherit!important}
[data-ascii] .lesson h3{font-size:17px!important;margin:9px 0 12px!important;color:inherit!important;font-weight:600;overflow-wrap:anywhere}
[data-ascii] .lesson .meta{font-size:12px!important;gap:7px;line-height:1.6!important}
[data-ascii] .ascii-lesson-meta{display:flex;flex-wrap:wrap;gap:5px 14px;min-width:0}
[data-ascii] .lesson-open{position:absolute!important;inset:0!important;font-size:0!important;display:block!important;color:transparent!important;background:transparent!important;min-height:100%;width:100%;height:100%;z-index:4}
[data-ascii] .lesson-open:hover,[data-ascii] .lesson-open:focus-visible{background:transparent!important;color:transparent!important}
[data-ascii] .lesson-open::before{display:none!important}
[data-ascii] .lesson-open::after{content:"[ ОТКРЫТЬ > ]";position:absolute;right:14px;bottom:10px;font-size:11px;line-height:1.5;color:var(--accent)}
[data-ascii] .lesson:has(.lesson-open:hover){background:#102218!important;transform:none!important}
[data-ascii] .gap-card{padding:12px;color:#91ada0;background:none;border:0;font-size:12px}
[data-ascii] .gap-card::before{content:"[ ... ] "}
[data-ascii] .today-context{display:none}
[data-ascii] .week-grid{display:grid!important;grid-template-columns:minmax(0,1fr);gap:16px}
[data-ascii] .week-day{padding:14px!important;overflow:visible;background:#030605!important}
[data-ascii] .week-day summary{padding:7px 0!important;background:none!important;gap:8px;min-height:44px;color:var(--accent)}
[data-ascii] .week-day summary small{margin:0!important}
[data-ascii] .week-day summary::marker{content:"> "}
[data-ascii] .week-day summary::after{content:"[ + ]";background:none!important;color:var(--accent)!important;font-size:12px}
[data-ascii] .week-day[open] summary::after{content:"[ - ]"}
[data-ascii] .week-day .timeline{padding-top:12px!important}
[data-ascii] .week-day .lesson{padding:16px 13px 32px!important}
[data-ascii] .menu-row{border:0!important;padding:14px 10px!important;gap:9px;background:transparent!important;min-width:0;min-height:56px}
[data-ascii] .menu-row strong{font-size:14px!important;line-height:1.5!important}
[data-ascii] .menu-icon{background:transparent!important;min-width:24px;width:auto;padding:0}
[data-ascii] .menu-row .arrow{display:none}
[data-ascii] .menu-row small{font-size:11px!important;margin-top:4px}
[data-ascii] .settings-layout{display:grid!important;grid-template-columns:minmax(0,1fr);gap:20px}
[data-ascii] .settings-section{padding:20px 16px!important;margin:16px 0!important;background:#030605!important;overflow:visible}
[data-ascii] .style-feature{background:none;border:0;gap:16px;padding:16px 10px;font-size:15px!important}
[data-ascii] .style-mini{background:none!important;color:var(--accent)}
[data-ascii] .style-mini i,[data-ascii] .preview-rail i,[data-ascii] .glass-studio,[data-ascii] .settings-preview{display:none!important}
[data-ascii] .style-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
[data-ascii] .style-tile{padding:15px 10px!important;min-width:0;display:flex;flex-direction:column;gap:10px;background:#09110d!important;min-height:100px}
[data-ascii] .style-tile>strong{font-size:12px!important}
[data-ascii] .style-tile .ascii-frame{opacity:.35}
[data-ascii] .style-tile[aria-pressed=true] .ascii-frame{opacity:1}
[data-ascii] .ascii-tile-preview{display:block;font-size:8px;min-height:0;padding:4px 0}
[data-ascii] .style-description{font-size:11px!important}
[data-ascii] .visual-choices{gap:7px;flex-wrap:wrap}
[data-ascii] .visual-choices button{min-width:110px;padding:10px!important;font-size:12px!important;background:#09110d!important}
[data-ascii] .swatch{border:0!important;background:none!important;width:32px;height:44px;min-width:0}
[data-ascii] .swatch::before{content:"[ # ]"!important}
[data-ascii] .swatch::after{content:none!important}
[data-ascii] .ascii-palette-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}
[data-ascii] .ascii-palette-options button{font-size:12px!important;padding:10px 5px;min-width:0}
[data-ascii] input,[data-ascii] select,[data-ascii] textarea{color:var(--text-primary)!important;background:#030605!important;border:0!important;border-bottom:1px dashed #77978a!important;padding:13px 10px!important;caret-color:var(--accent)!important;line-height:1.7!important;font-size:16px!important}
[data-ascii] textarea{resize:vertical}
[data-ascii] label{gap:10px;color:var(--text-secondary)}
[data-ascii] label:has(input)::before,[data-ascii] label:has(textarea)::before,[data-ascii] label:has(select)::before{content:"[ INPUT ]";color:var(--accent);font-size:10px}
[data-ascii] dialog{position:fixed!important;background:#030605!important;border:0!important;padding:22px 18px max(24px,env(safe-area-inset-bottom))!important;color:var(--text-primary)!important;max-height:91dvh;width:calc(100% - 16px)!important;max-width:700px;overflow:auto;z-index:30}
[data-ascii] dialog:has(.note-editor){max-height:calc(var(--note-viewport-height,100dvh) - 16px)!important;margin-bottom:var(--note-keyboard-inset,0px)!important}
[data-ascii] dialog::backdrop{background:#030605dd!important;backdrop-filter:none!important}
[data-ascii] dialog .sheet-handle{display:none}
[data-ascii] .sheet-head{padding:0 0 14px!important;margin-bottom:16px!important;border-bottom:0!important;background:none!important;gap:14px}
[data-ascii] .sheet-head h2{font-size:20px!important;letter-spacing:0!important;color:var(--accent)!important}
[data-ascii] .class-detail{color:var(--text-primary);padding:6px 0 12px}
[data-ascii] .class-detail .hero-time{font-size:26px!important}
[data-ascii] .lesson-note{background:#09110d!important;padding:22px 16px!important;margin:16px 0!important;position:relative;min-width:0}
[data-ascii] .ascii-note-cat{font-size:10px;line-height:1.25;float:right;opacity:.6;margin:0 0 8px 16px}
[data-ascii] .note-editor .ascii-note-cat{display:none}
[data-ascii] .note-label{font-size:13px!important;clear:both}
[data-ascii] label.ascii-window{padding:18px 12px!important;display:flex;flex-direction:column;gap:10px}
[data-ascii] .note-label::before{content:none!important}
[data-ascii] .lesson-note .section-head::after{content:" >_";color:var(--accent);animation:ascii-cursor 1.8s steps(1) infinite}
[data-ascii] .note-label textarea{min-height:160px;max-height:40vh;font-size:15px!important}
[data-ascii] .note-counter{color:var(--accent)!important}
[data-ascii] .note-counter::before{content:"[ "}[data-ascii] .note-counter::after{content:" ]"}
[data-ascii] .note-editor-actions{padding:12px 0 0!important;background:#09110d!important;gap:10px;clear:both}
[data-ascii] .note-editor-actions button{font-size:12px!important;padding:10px 4px!important;min-width:0}
[data-ascii] .note-feedback{font-size:12px!important;color:var(--accent);clear:both}
[data-ascii] .note-feedback[data-ascii-status=saving]::before{content:"[ SAVING... ] ";color:#ffd36b}
[data-ascii] .note-feedback[data-ascii-status=saved]::before{content:"[ SAVED ] ";color:var(--accent)}
[data-ascii] .note-feedback[data-ascii-status=saved]{animation:ascii-saved 1.4s steps(3) 1}
[data-ascii] .note-feedback[data-ascii-status=deleted]::before{content:"[ DELETED ] "}
[data-ascii] .note-feedback[data-ascii-status=error]::before{content:"[ ERROR ] ";color:#ff6f76}
[data-ascii] .calendar-content{background:none!important;animation:none!important;min-width:0}
[data-ascii] .calendar-layout{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:20px;min-width:0}
[data-ascii] .calendar-grid{gap:3px;padding:14px 10px!important;background:#030605!important;margin:14px 0;grid-template-columns:repeat(7,minmax(0,1fr))}
[data-ascii] .calendar-grid button{min-height:40px;font-size:13px!important;min-width:0;padding:1px;display:flex;flex-direction:column;gap:1px;border-bottom:1px dashed #315542!important}
[data-ascii] .calendar-grid button::before,[data-ascii] .calendar-grid button::after{display:none}
[data-ascii] .calendar-grid small{font-size:10px!important}
[data-ascii] .calendar-grid .selected{background:var(--accent)!important;color:#030605!important;font-weight:700}
[data-ascii] .calendar-grid .today{outline:1px dashed var(--accent)}
[data-ascii] .calendar-key .dot,[data-ascii] .dots .dot{background:transparent!important;width:auto!important;height:auto!important}
[data-ascii] .dot::after{content:"*";display:block;font-size:12px;color:var(--accent);line-height:1}
[data-ascii] .dot.elective::after{color:#d89aff}[data-ascii] .dot.session::after{color:#ffd36b}
[data-ascii] .calendar-selected-panel{padding:18px 14px!important;max-height:none!important;border:0!important}
[data-ascii] .calendar-legend{font-size:11px!important}
[data-ascii] .calendar-selected-panel .lesson{padding:18px 12px 35px!important;background:#09110d!important}
[data-ascii] .english-wizard{gap:14px}
[data-ascii] .english-wizard button{justify-content:flex-start!important;text-align:left}
[data-ascii] .english-wizard>p::before{content:":: "}
[data-ascii] .english-wizard .card{padding:18px!important;background:#09110d!important;border:0!important}
[data-ascii] .onboarding-form{padding:22px 18px!important;background:#09110d!important}
[data-ascii] .onboarding-form .row{flex-wrap:wrap}
[data-ascii] .welcome{padding:12px!important;background:none!important}
[data-ascii] .empty{padding:24px 14px!important;gap:16px;min-height:190px;border:0!important;background:#09110d!important;color:#91ada0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}
[data-ascii] .empty .ascii-art{font-size:12px;color:var(--accent);margin:auto}
[data-ascii] .skeleton{background:none!important;animation:none!important;border:0!important;min-height:65px;height:auto;margin:16px 0;color:var(--accent);display:flex;align-items:center;padding:14px;overflow:hidden}
[data-ascii] .skeleton::before{content:"[ / ] ЗАГРУЗКА...";font:14px/1.5 SCTerminal,ui-monospace,monospace;animation:ascii-load 1.4s steps(1) infinite}
[data-ascii] #offline,[data-ascii] #toast{border:0!important;background:#09110d!important;color:var(--accent)!important;font:13px/1.5 SCTerminal,ui-monospace,monospace;padding:16px 22px}
[data-ascii] #offline::before,[data-ascii] #toast::before{content:"[ ! ] "}
[data-ascii] .ascii-sidebar{display:contents}
[data-ascii] .ascii-sidebar>.ascii-frame,[data-ascii] .ascii-sidebar-intro,[data-ascii] .ascii-sidebar-extra,[data-ascii] .ascii-week-stats{display:none}
[data-ascii] .ascii-screen-art{padding:18px 12px;margin:16px 0;display:flex;gap:18px;align-items:center;background:#030605!important}
[data-ascii] .ascii-screen-art .ascii-art{font-size:10px;line-height:1.3;flex-shrink:0}
[data-ascii] .ascii-art-label{font-size:11px;color:#91ada0;overflow-wrap:anywhere}
[data-ascii] .ascii-footer{position:relative;z-index:0;color:var(--accent);overflow:hidden;padding:10px 12px 100px;max-width:1600px;margin:0 auto;pointer-events:none}
[data-ascii] .ascii-city-desktop{display:none}
[data-ascii] .ascii-city-mobile{font-size:10px;line-height:1.2;width:max-content;max-width:100%;margin:0 auto;opacity:.7}
[data-ascii] .ascii-status{margin:20px auto 0;max-width:100%;font-size:10px;line-height:1.7;color:#91ada0;text-align:center;overflow-wrap:anywhere}
[data-ascii] .ascii-world{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none!important;contain:strict;background:#030605}
[data-ascii] .ascii-world *{pointer-events:none!important}
[data-ascii] .ascii-cloud{position:absolute!important;top:5%;left:24%;font-size:10px;opacity:.2}
[data-ascii] .ascii-cloud-two{top:40%;left:65%;opacity:.16}
[data-ascii] .ascii-moon{position:absolute;right:5%;top:7%;font-size:12px;color:#ffd36b;opacity:.5}
[data-ascii] .ascii-star{position:absolute;left:var(--star-x);top:var(--star-y);color:#77978a;font-size:12px;opacity:.4;animation:ascii-star 8s var(--star-delay) ease-in-out infinite}
[data-ascii] .ascii-bird{position:absolute;left:0;top:var(--bird-height);width:3ch;height:20px;font:14px/1 SCTerminal,ui-monospace,monospace;color:var(--accent);opacity:.42;animation:ascii-fly var(--bird-duration) linear var(--bird-delay) infinite;will-change:transform;pointer-events:none!important}
[data-ascii] .ascii-bird-reverse{animation-name:ascii-fly-back;opacity:.27}
[data-ascii] .ascii-bird:nth-last-child(-n+3){display:none}
[data-ascii] .ascii-wing-a,[data-ascii] .ascii-wing-b{position:absolute;white-space:pre;inset:0;animation:ascii-wings 2.4s steps(1) infinite}
[data-ascii] .ascii-wing-b{animation-direction:reverse}
[data-ascii] .ascii-world[data-paused] *,[data-ascii][data-motion-paused] *{animation-play-state:paused!important}
@keyframes ascii-fly{from{transform:translate3d(-8vw,0,0)}to{transform:translate3d(110vw,-35px,0)}}
@keyframes ascii-fly-back{from{transform:translate3d(110vw,0,0)}to{transform:translate3d(-8vw,30px,0)}}
@keyframes ascii-wings{0%,49%{opacity:1}50%,100%{opacity:0}}
@keyframes ascii-star{0%,100%{opacity:.18}50%{opacity:.42}}
@keyframes ascii-cursor{0%,65%{opacity:1}66%,100%{opacity:0}}
@keyframes ascii-load{0%,100%{content:"[ / ] ЗАГРУЗКА..."}25%{content:"[ - ] ЗАГРУЗКА..."}50%{content:"[ \\ ] ЗАГРУЗКА..."}75%{content:"[ | ] ЗАГРУЗКА..."}}
@keyframes ascii-saved{0%,40%{color:#63cfff}70%,100%{color:var(--accent)}}
/* Partner content stays functional; decorative portraits/charts become text. */
[data-ascii] .partner-invest-club{font-family:inherit!important;color:var(--text-primary)!important;background:none!important;max-width:100%;margin:0!important;padding:0!important}
[data-ascii] .partner-invest-club>section,[data-ascii] .partner-invest-card{padding:24px 18px!important;margin:16px 0!important;min-height:0!important;color:var(--text-primary)!important;background:#09110d!important;overflow:hidden!important}
[data-ascii] .partner-invest-club :is(h1,h2,h3,p,span,li,mark){font-family:inherit!important;letter-spacing:0!important;text-shadow:none!important;filter:none!important;color:inherit!important;-webkit-text-stroke:0!important;opacity:1!important}
[data-ascii] .partner-invest-club h1,[data-ascii] .partner-invest-club h2{color:var(--accent)!important;font-size:clamp(23px,4vw,32px)!important;line-height:1.35!important}
[data-ascii] .partner-invest-club .ic-hero,[data-ascii] .partner-invest-club .ic-practice-grid,[data-ascii] .partner-invest-club .ic-study,[data-ascii] .partner-invest-club .ic-beginner,[data-ascii] .partner-invest-club .ic-manifesto-bottom,[data-ascii] .partner-invest-club .ic-event-layout,[data-ascii] .partner-invest-club .ic-footer{display:block!important;min-height:0!important;grid-template-columns:minmax(0,1fr)!important}
[data-ascii] :is(.ic-hero-person,.ic-card-person,.ic-beginner-portrait,.ic-practice-person,.ic-meeting-person,.ic-event-image){position:relative!important;inset:auto!important;width:auto!important;height:auto!important;transform:none!important;margin:16px 0!important;display:block!important;mask:none!important;-webkit-mask:none!important;filter:none!important}
[data-ascii] .ic-hero-copy{width:100%!important;max-width:none!important}
[data-ascii] .ic-chips{position:static!important;inset:auto!important;margin:14px 0!important;max-width:100%!important}
[data-ascii] .ic-chips>span{background:none!important;border:0!important;font-size:12px!important;padding:8px 0!important}
[data-ascii] .ic-chips>span::before{content:"[ "}[data-ascii] .ic-chips>span::after{content:" ]"}
[data-ascii] .ic-news-cover{aspect-ratio:auto!important;height:auto!important;min-height:0!important;border:0!important;background:none!important}
[data-ascii] .ic-news-arrow,[data-ascii] .ic-large-sign,[data-ascii] .ic-empty-calendar{display:none!important}
[data-ascii] .ic-news-card{border:0!important;background:none!important}
[data-ascii] .ic-news-grid{gap:20px!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))!important}
[data-ascii] .ic-manifesto,[data-ascii] .ic-tagline,[data-ascii] .ic-principles p,[data-ascii] .ic-body{font-size:15px!important;line-height:1.7!important}
[data-ascii] .ic-theory,[data-ascii] .ic-practical{padding:20px 0!important;min-height:0!important;background:none!important}
[data-ascii] .ic-beginner-copy{padding:0!important;max-width:none!important}
[data-ascii] .ic-date,[data-ascii] .ic-button{color:var(--accent)!important;background:none!important;border:0!important;font-size:14px!important}
[data-ascii] .ic-handle{color:#63cfff!important}
[data-ascii] .room-card,[data-ascii] .room-filters,[data-ascii] .room-result{background:#09110d!important;border:0!important;padding:18px!important}
[data-ascii] .room-status{background:none!important;color:var(--accent)!important}
[data-ascii] .room-status::before{content:"[ "}[data-ascii] .room-status::after{content:" ]"}
@media(min-width:700px){
 [data-ascii] .app{padding:16px 24px 120px;max-width:1000px}
 [data-ascii] .ascii-header-status{font-size:12px}
 [data-ascii] .week-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 [data-ascii] .segments{grid-template-columns:repeat(4,minmax(0,1fr))}
 [data-ascii] .ascii-city-desktop{display:block;font-size:8px;line-height:1.35;margin:auto;width:max-content;max-width:100%;opacity:.65}
 [data-ascii] .ascii-city-mobile{display:none}
 [data-ascii] dialog{width:calc(100% - 70px)!important}
 [data-ascii] .style-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
 [data-ascii] .ascii-bird:nth-last-child(-n+3){display:block}
 [data-ascii] .calendar-layout{grid-template-columns:minmax(0,1fr) minmax(240px,.9fr)!important}
}
@media(min-width:1100px){
 [data-ascii] .app{max-width:1720px;padding:76px 22px 40px 280px!important;min-height:76dvh}
 [data-ascii] .topbar{position:fixed!important;inset:10px 14px auto!important;z-index:15;min-height:42px;padding:7px 16px;flex-wrap:nowrap;max-width:none!important;margin:0}
 [data-ascii] .brand{font-size:14px;flex:none;min-width:230px;display:flex;gap:18px;align-items:center}
 [data-ascii] .brand small{display:inline;margin:0;font-size:12px!important}
 [data-ascii] .ascii-header-status{flex-basis:auto;flex:1;text-align:right;order:1;font-size:12px;margin-left:20px}
 [data-ascii] .topbar .icon-button{order:2;min-height:32px;height:32px;width:38px;margin:0}
 [data-ascii] .ascii-sidebar{display:flex!important;flex-direction:column;gap:14px;position:fixed!important;inset:70px auto auto 14px;width:242px;max-height:calc(100dvh - 90px);overflow:auto;padding:24px 14px 18px;background:#030605!important;z-index:5}
 [data-ascii] .ascii-sidebar>.ascii-frame{display:block}
 [data-ascii] .ascii-sidebar-intro,[data-ascii] .ascii-sidebar-extra,[data-ascii] .ascii-week-stats{display:block}
 [data-ascii] .ascii-wordmark{font:24px/1.15 SCTerminal,ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--accent);white-space:pre;margin:0 0 18px}
 [data-ascii] .ascii-sidebar-intro .ascii-art{font-size:12px;line-height:1.2;margin:0 0 14px}
 [data-ascii] .ascii-quote{font-size:11px!important;line-height:1.6!important;color:#91ada0;white-space:pre-wrap}
 [data-ascii] .bottom-nav{position:relative!important;inset-inline-start:auto!important;inset:auto!important;width:100%!important;display:flex!important;flex-direction:column;gap:0;padding:10px 0!important;background:#030605!important;z-index:1}
 [data-ascii] .bottom-nav button{flex-direction:row;justify-content:flex-start;gap:12px;padding:9px 12px!important;min-height:44px;text-align:left}
 [data-ascii] .bottom-nav .nav-label{font-size:13px!important}
 [data-ascii] .bottom-nav .selected{background:#102218!important}
 [data-ascii] .ascii-sidebar-extra{padding-top:8px;border-top:1px dashed #315542}
 [data-ascii] .ascii-command{justify-content:flex-start;text-align:left;font-size:12px!important;padding:7px 3px;display:flex;gap:5px;min-width:0;width:100%}
 [data-ascii] .ascii-week-stats{padding:18px 12px;font-size:12px;background:#030605!important}
 [data-ascii] .ascii-week-stats h3{font-size:13px!important}
 [data-ascii] .ascii-week-stats small{font-size:10px!important}
 [data-ascii] .ascii-stat-line{display:flex;gap:12px;margin-top:6px;font-size:12px;line-height:1.3}
 [data-ascii] .ascii-bar{color:var(--accent)}
 [data-ascii] .today-layout{grid-template-columns:minmax(0,1fr) 280px!important;gap:22px}
 [data-ascii] #main>.section-head{margin:8px 0 6px!important}
 [data-ascii] #main>p.muted{margin:8px 0 12px!important}
 [data-ascii] .date-strip{margin:10px 0 16px;padding:7px}
 [data-ascii] .today-main{display:flex!important;flex-direction:column;grid-column:1;grid-row:1;min-width:0}
 [data-ascii] .today-main>.summary-strip{order:5;margin-top:18px!important;margin-bottom:0!important}
 [data-ascii] .today-main>.section-head{margin:8px 0 14px!important}
 [data-ascii] .today-context{display:block!important;grid-column:2;grid-row:1;position:sticky;top:70px;align-self:start;margin:0;padding:0;border:0;min-width:0}
 [data-ascii] .today-context>.eyebrow{margin:20px 0 12px}
 [data-ascii] .quick-actions{display:flex!important;flex-direction:column;padding:14px 8px;gap:0}
 [data-ascii] .quick-actions .menu-row{display:flex!important;min-height:44px;padding:9px 3px!important}
 [data-ascii] .quick-actions .menu-row strong{font-size:12px!important}
 [data-ascii] .quick-actions .menu-row small{font-size:10px!important}
 [data-ascii] .ascii-mini-calendar{display:flex;flex-direction:column;width:100%;padding:24px 14px!important;gap:14px;align-items:center;min-height:280px;font-size:13px!important;background:#030605!important;white-space:normal}
 [data-ascii] .ascii-calendar-text{font:12px/1.9 SCTerminal,ui-monospace,SFMono-Regular,Consolas,monospace;margin:0;white-space:pre;color:var(--text-primary);direction:ltr;overflow:hidden;max-width:100%}
 [data-ascii] .ascii-mini-calendar small{font-size:10px!important}
 [data-ascii] .hero{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(145px,.5fr);gap:20px;padding:22px!important;margin-top:0}
 [data-ascii] .hero h2{font-size:20px!important}
 [data-ascii] .hero-time{font-size:29px!important}
 [data-ascii] .hero-instrument{min-height:130px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
 [data-ascii] .lesson{min-height:116px;padding:16px 125px 18px 16px!important;display:grid!important;grid-template-columns:86px minmax(0,1fr);column-gap:14px;row-gap:4px}
 [data-ascii] .lesson>.row:first-child{grid-column:1;grid-row:1/span 8;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:6px;padding-top:3px}
 [data-ascii] .lesson>h3,[data-ascii] .lesson>.ascii-lesson-meta{grid-column:2}
 [data-ascii] .lesson>h3{margin:0 0 3px!important}
 [data-ascii] .lesson .time{font-size:15px!important}
 [data-ascii] .lesson h3{font-size:17px!important;margin:8px 0}
 [data-ascii] .lesson .meta{display:inline-flex;margin-right:14px;font-size:12px!important;vertical-align:middle}
 [data-ascii] .lesson-open::after{right:15px;top:calc(50% - 8px);bottom:auto;font-size:10px}
 [data-ascii] .lesson>.badge[data-ascii-label]{position:absolute;right:16px;bottom:14px}
 [data-ascii] .lesson>.note-indicator[data-ascii-label]{top:12px;bottom:auto}
 [data-ascii] .week-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 [data-ascii] .week-day .lesson{padding:18px 13px 36px!important;display:block!important}
 [data-ascii] .week-day .lesson-open::after{top:auto;bottom:10px}
 [data-ascii] .style-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}
 [data-ascii] .ascii-screen-art{max-width:480px;gap:30px;padding:20px 24px}
 [data-ascii] .ascii-screen-art .ascii-art{font-size:12px}
 [data-ascii] .ascii-footer{padding:30px 14px 16px 270px;z-index:1}
 [data-ascii] .ascii-city-desktop{font-size:clamp(9px,.9vw,14px);line-height:1.3;opacity:.75}
 [data-ascii] .ascii-status{font-size:11px;margin-top:14px}
 [data-ascii] dialog:has(.class-detail){max-width:1100px;width:calc(100% - 310px)!important;margin-left:280px;margin-right:30px;padding:26px!important}
 [data-ascii] dialog:has(.class-detail) #sheet-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 28px;align-items:start}
 [data-ascii] dialog:has(.class-detail) .sheet-head{grid-column:1/-1}
 [data-ascii] dialog .class-detail{grid-column:1;grid-row:2}
 [data-ascii] dialog .lesson-note{grid-column:2;grid-row:2/5;margin:0!important}
 [data-ascii] dialog .detail-actions{grid-column:1;flex-wrap:wrap;display:flex;gap:8px;margin-top:16px}
 [data-ascii] dialog .choices{grid-column:1}
 [data-ascii] dialog:has(.calendar-grid){width:min(1000px,90vw)!important;max-width:none}
}
@media(min-width:1600px){[data-ascii] .today-layout{grid-template-columns:minmax(0,1fr) 320px!important}[data-ascii] .ascii-city-desktop{font-size:14px}[data-ascii] .lesson h3{font-size:18px!important}}
@media(prefers-reduced-motion:reduce){
 [data-ascii] *,[data-ascii] *::before,[data-ascii] *::after{animation:none!important;transition:none!important;will-change:auto!important;scroll-behavior:auto!important}
 [data-ascii] .ascii-bird{left:calc(12% + (var(--bird-height)/4));transform:none!important;opacity:.2}
 [data-ascii] .ascii-wing-b{display:none}
}
