:root{--portal-ink:#13160f;--portal-panel:#20251c;--portal-raised:#292f23;--portal-paper:#eee9d6;--portal-muted:#abb09e;--portal-line:#3c4434;--portal-green:#b8ef86}
.route-reactions{margin:0 0 20px}
.reaction-counts{display:flex;flex-wrap:wrap;gap:10px}
.route-reaction{display:flex;align-items:center;gap:9px;min-height:40px;padding:8px 12px;border:1px solid var(--portal-line);border-radius:3px;box-sizing:border-box}
.route-reaction .ui-icon{width:20px;height:20px;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.route-reaction strong{font:400 22px/1 Georgia,serif;color:var(--portal-paper);font-variant-numeric:tabular-nums}
.route-reaction.is-positive{color:var(--portal-green)}
.route-reaction.is-negative{color:var(--red)}
.route-reaction.is-own{border-color:currentColor;background:color-mix(in srgb,currentColor 8%,var(--portal-panel))}
.reaction-own{font-size:10px;color:var(--portal-paper)}
.reaction-meter{display:flex;gap:3px;height:3px;margin-top:13px;background:color-mix(in srgb,var(--portal-muted) 14%,transparent);overflow:hidden}
.reaction-meter span{min-width:0}
.reaction-positive{background:var(--portal-green)}
.reaction-negative{background:var(--red)}
.reaction-caption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px 10px;margin-top:8px;font-size:10px;line-height:1.4;color:var(--portal-muted)}
.training-tabs{display:flex;gap:26px;border-bottom:1px solid var(--portal-line);margin-bottom:28px;flex-wrap:wrap}
.training-tabs a{color:var(--portal-muted);text-decoration:none;padding:0 0 13px;font-size:13px;border-bottom:2px solid transparent}
.training-tabs a[aria-current=page]{color:var(--portal-paper);border-color:var(--portal-green)}
.hero-training-layout{display:grid;grid-template-columns:255px minmax(0,1fr);gap:28px;align-items:start}
.hero-picker-panel{background:var(--portal-panel);border:1px solid var(--portal-line);padding:12px}
.hero-picker{max-height:560px;overflow-y:auto;margin-top:12px;scrollbar-width:thin;scrollbar-color:var(--portal-line) transparent}
.hero-picker a{display:flex;gap:10px;align-items:center;padding:10px;color:var(--portal-muted);text-decoration:none;border:1px solid transparent;font-size:12px}
.hero-picker a:hover{background:var(--portal-raised);color:var(--portal-paper)}
.hero-picker a[aria-current=true]{background:var(--portal-paper);color:var(--portal-ink)}
.hero-picker .ui-icon{margin-left:auto;width:15px;height:15px}.hero-portrait{width:40px;height:40px;object-fit:contain;flex:none;filter:drop-shadow(0 2px 2px #0005)}
.hero-category-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}
.hero-category-tabs button{display:flex;gap:12px;align-items:center;color:var(--portal-muted);padding:11px 13px;border:1px solid var(--portal-line);font-size:12px}
.hero-category-tabs button[aria-pressed=true]{background:var(--portal-paper);color:var(--portal-ink)}.hero-category-tabs small{opacity:.65}
.hero-training-content{min-width:0}.hero-portrait-large{display:block;width:96px;height:96px;object-fit:contain;margin:0 auto 24px;filter:drop-shadow(0 3px 5px #0005)}
.hero-exercise{border:1px solid var(--portal-line);padding:22px;background:var(--portal-panel)}.hero-no-results{padding:16px;color:var(--portal-muted);font-size:12px}.hero-selection-empty>.ui-icon{width:50px;height:50px;color:var(--portal-green);margin-bottom:20px}
.tracking-rules{border:1px solid var(--portal-line);padding:20px;background:var(--portal-panel);margin:20px 0}.tracking-rules strong{color:var(--portal-green)}
@media(max-width:700px){.hero-training-layout{grid-template-columns:1fr;gap:20px}.hero-picker{max-height:210px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.hero-picker a{min-width:0;padding:8px;font-size:11px;gap:7px}.hero-picker .ui-icon{display:none}.training-tabs{gap:18px}.training-tabs a{font-size:12px}}
body{min-width:320px;background:#171b14;color:var(--portal-paper)}
.topbar{height:auto;min-height:86px;gap:26px;padding:20px 32px;background:#141710;flex-wrap:wrap}
.brand{font-size:25px;white-space:nowrap}.brand-dot{font-size:9px}
.main-navigation{display:flex;align-self:stretch;align-items:center;gap:23px}
.main-navigation a{color:#abb09e;text-decoration:none;font-size:12px;padding:9px 0;position:relative;white-space:nowrap}
.main-navigation a.active{color:var(--portal-paper)}.main-navigation a.active:after{content:"";height:2px;background:var(--portal-green);position:absolute;bottom:0;left:0;right:0}
.main-navigation a:hover{color:var(--portal-paper)}
.topbar-right{margin-left:auto;gap:12px;flex-wrap:wrap}.account-role{font-size:10px;color:var(--portal-muted)}
.topbar-right>.button{font-size:10px;padding:7px 10px;min-height:30px}
.connection-button{padding:0;min-height:30px;text-align:left}.connection{font-size:10px}.connection-button:hover .connection{color:var(--portal-paper)}
.button{border-radius:0;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.button.primary{background:var(--portal-paper);color:var(--portal-ink);border:1px solid var(--portal-paper)}
.button.primary:hover{background:var(--portal-green);border-color:var(--portal-green)}
.button.subtle{border:1px solid var(--portal-line);background:var(--portal-raised);color:var(--portal-paper)}
.button.subtle:hover{border-color:var(--portal-muted)}
.ui-icon{width:19px;height:19px;flex:none;stroke-linecap:square;stroke-linejoin:miter;vertical-align:middle}
.portal{max-width:1512px;margin:0 auto;min-height:calc(100vh - 100px)}
.portal-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:35px;padding:34px 32px 60px}
.catalog-sidebar{position:sticky;top:24px;align-self:start;padding-top:7px}
.sidebar-label{color:var(--portal-muted);font-size:10px;letter-spacing:1.7px;margin:0 12px 19px}
.category-filter{width:100%;display:flex;align-items:center;gap:10px;color:var(--portal-muted);font-size:12px;padding:13px 12px;text-align:left;border:1px solid transparent;min-height:46px;margin:0 0 5px}
.category-filter small{font-size:10px;color:inherit;opacity:.75;margin-left:auto;font-variant-numeric:tabular-nums}
.category-filter[aria-pressed=true]{background:var(--portal-paper);color:var(--portal-ink);border-color:var(--portal-paper)}
.category-filter:hover:not([aria-pressed=true]){background:var(--portal-raised);color:var(--portal-paper)}
.sidebar-divider{height:1px;background:var(--portal-line);margin:21px 12px}
.sidebar-foot{border-top:1px solid var(--portal-line);margin:38px 12px 0;padding-top:20px;color:#858c78;font-size:10px;letter-spacing:1.8px}
.sidebar-foot p{margin:8px 0 0;color:var(--portal-muted);letter-spacing:0;font-size:11px}
.catalog-main{min-width:0}
.page-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:27px}
.page-heading .eyebrow{font-size:10px;color:var(--portal-muted);letter-spacing:1.6px;display:block;margin-bottom:13px}
.page-heading h1{font-family:Arial,Helvetica,sans-serif;font-size:clamp(32px,4.2vw,51px);font-weight:950;letter-spacing:-1.8px;line-height:1.05;text-transform:uppercase;background:var(--portal-paper);color:var(--portal-ink);display:inline-block;margin:0;padding:4px 11px 6px;max-width:100%;overflow-wrap:anywhere}
.page-heading p{font-size:13px;line-height:1.6;color:var(--portal-muted);margin:17px 0 0;max-width:650px}
.catalog-toolbar{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.catalog-search{display:flex;align-items:center;gap:10px;min-width:0;flex:1;margin:0;background:#12160f;border:1px solid var(--portal-line);padding:0 13px;min-height:44px;color:var(--portal-muted)}
.catalog-search:focus-within{border-color:var(--portal-green)}
.catalog-search input{padding:12px 0;border:0;background:transparent;flex:1;width:100%;outline:none;color:var(--portal-paper);font-size:12px}
.catalog-search input:focus-visible{outline:none}.catalog-search kbd{font-size:11px;color:var(--portal-muted);border:1px solid var(--portal-line);padding:1px 5px}
.availability-filter{display:flex;align-items:center;flex-direction:row;gap:8px;font-size:11px;color:var(--portal-muted);white-space:nowrap;margin:0}
.catalog-results{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:18px 0 17px;color:var(--portal-muted);font-size:11px;min-height:18px}
.planned-note{font-size:10px;color:#929a84;text-align:right}
.mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.mode-card{position:relative;min-width:0;background:var(--portal-panel);border:1px solid var(--portal-line);transition:border-color .15s,transform .15s}
.mode-card:hover{border-color:#8a9578;transform:translateY(-2px)}
.mode-card-main{display:block;color:inherit;text-decoration:none;height:100%}
.mode-card-art{height:87px;position:relative;overflow:hidden;background:repeating-linear-gradient(128deg,transparent,transparent 11px,#eee9d606 11px,#eee9d606 12px),#191e15;border-bottom:1px solid #35402d}
.mode-art{position:absolute;width:124px;height:87px;right:18px;bottom:-5px;color:#b4bea3;opacity:.7}
.mode-art .art-secondary{opacity:.45}.is-available .mode-art{color:var(--portal-green);opacity:.9}
.mode-category{position:absolute;left:17px;bottom:14px;font-size:9px;letter-spacing:1.1px;color:#aeb59f;text-transform:uppercase;max-width:55%}
.mode-card-copy{padding:16px 17px 14px}.mode-status{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#b4b5a7;display:inline-flex;align-items:center;gap:6px}
.mode-status:before{content:"";width:4px;height:4px;background:currentColor;display:block}.mode-status.ready{color:var(--portal-green)}
.mode-card h2{font:400 24px/1.05 Georgia,serif;letter-spacing:-.7px;margin:9px 0 10px;overflow-wrap:anywhere}
.mode-card p{font-size:11px;line-height:1.6;color:var(--portal-muted);margin:0;min-height:36px}
.mode-card-meta{margin-top:18px;border-top:1px solid var(--portal-line);padding-top:12px;display:flex;align-items:center;gap:9px;font-size:10px;color:var(--portal-muted)}
.mode-card-meta>span+span:before{content:"·";margin-right:9px}.mode-card-meta .ui-icon{margin-left:auto;width:17px;height:17px;color:var(--portal-paper)}
.favorite-button{position:absolute;right:11px;top:10px;background:#181d13cc;color:#929a84;border:1px solid #4c5541;width:29px;height:29px;display:grid;place-items:center}
.favorite-button .ui-icon{width:15px;height:15px}.favorite-button[aria-pressed=true]{color:var(--portal-green);border-color:var(--portal-green)}
.favorite-button[aria-pressed=true] .ui-icon{fill:#b8ef8626}
.catalog-empty{grid-column:1/-1;padding:45px 24px;border:1px dashed var(--portal-line);text-align:center;background:#171c13}
.catalog-empty h2{font:400 28px/1.2 Georgia,serif;margin:0 0 13px}.catalog-empty p{font-size:12px;color:var(--portal-muted);margin:0 auto 20px;max-width:520px;line-height:1.6}
.catalog-empty .button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:12px;padding:11px 18px}
.section-caption{margin:35px 0 17px}.section-caption h2{font:400 28px Georgia,serif;margin:0}
.recent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.recent-item{display:flex;align-items:center;gap:12px;color:var(--portal-paper);text-decoration:none;padding:17px 14px;border:1px solid var(--portal-line);background:var(--portal-panel);min-width:0}
.recent-item>span{flex:1;min-width:0}.recent-item strong{display:block;font-size:12px;font-weight:400;overflow-wrap:anywhere}
.recent-item small{display:block;font-size:10px;color:var(--portal-muted);margin-top:7px}.recent-item>.ui-icon:first-child{color:var(--portal-muted)}
.mode-page,.collection-page{padding:32px 42px 70px;max-width:1400px;margin:0 auto}
.back-link{display:inline-flex;align-items:center;gap:8px;color:var(--portal-muted);font-size:11px;text-decoration:none;margin:0 0 28px}
.back-link .ui-icon{width:16px;height:16px}.back-link:hover{color:var(--portal-paper)}
.mode-overview{display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid var(--portal-line);padding:0 0 28px;margin-bottom:30px}
.mode-overview .page-heading{margin:0 0 17px}.mode-overview-art{height:138px;position:relative;min-width:200px;color:var(--portal-muted);align-self:stretch;background:repeating-linear-gradient(128deg,transparent,transparent 13px,#eee9d607 13px,#eee9d607 14px)}
.mode-overview-art .mode-art{width:180px;height:130px;right:0;color:var(--portal-green)}
.mode-overview-meta{display:flex;align-items:center;gap:18px;font-size:11px;color:var(--portal-muted)}
.exercise-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px;flex-wrap:wrap}
.exercise-toolbar h2{font:400 30px Georgia,serif;margin:0;white-space:nowrap}.exercise-toolbar h2 span{font:400 12px Arial,sans-serif;color:var(--portal-muted);margin-left:10px}
.exercise-filter-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}
.exercise-filter-controls select{font-size:11px;padding:12px;background:#12160f;border-radius:0;max-width:100%;min-height:44px}
.exercise-filter-controls .catalog-search{min-width:220px}
.exercise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.exercise-card{background:var(--portal-panel);border:1px solid var(--portal-line);padding:22px;min-width:0;display:flex;flex-direction:column}
.exercise-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;text-transform:uppercase;font-size:9px;letter-spacing:1px;color:var(--portal-muted)}
.exercise-card h3{font:400 28px/1.1 Georgia,serif;margin:20px 0 13px;letter-spacing:-.6px;overflow-wrap:anywhere}
.exercise-card>p{font-size:11px;line-height:1.6;color:var(--portal-muted);margin:0 0 22px}
.exercise-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;border-top:1px solid var(--portal-line);padding-top:16px;margin:auto 0 20px}
.exercise-level{display:flex;flex-direction:column;gap:8px;font-size:10px;min-width:0}.exercise-level b{font-weight:400}.exercise-level small{font:400 12px monospace;color:var(--portal-paper);font-variant-numeric:tabular-nums}.exercise-level.unrecorded{opacity:.45}
.exercise-card>.button{display:flex;align-items:center;justify-content:space-between;gap:10px;text-decoration:none;font-size:11px;min-height:39px}
.planned-mode{border:1px solid var(--portal-line);background:var(--portal-panel);padding:32px;max-width:780px}
.planned-mode h2{font:400 34px Georgia,serif;margin:16px 0}.planned-mode p{color:var(--portal-muted);font-size:13px;line-height:1.7;margin-bottom:24px}
.planned-mode .button{display:inline-flex;align-items:center;gap:12px;text-decoration:none}
.planned-metrics{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:27px;font-size:11px;color:var(--portal-muted)}
.planned-metrics>span:first-child{width:100%;margin-bottom:2px}.metric-label{border:1px solid var(--portal-line);padding:7px 10px;color:var(--portal-paper);background:#191e15}
.pack-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pack-card{background:var(--portal-panel);border:1px solid var(--portal-line);min-width:0}.pack-art{background:repeating-linear-gradient(128deg,transparent,transparent 13px,#eee9d607 13px,#eee9d607 14px),#191e15;min-height:118px;display:flex;align-items:center;justify-content:space-between;padding:24px;color:var(--portal-muted);gap:15px}
.pack-art>.ui-icon{width:49px;height:49px;color:var(--portal-green);stroke-width:.85}.pack-art>span{font-size:9px;letter-spacing:1.7px}
.pack-copy{padding:24px}.pack-copy h2{font:400 30px/1.15 Georgia,serif;margin:0 0 14px;overflow-wrap:anywhere}.pack-copy>p{color:var(--portal-muted);font-size:11px}
.pack-copy ul{padding:17px 0 22px;margin:0;list-style:none;color:var(--portal-muted);font-size:11px;line-height:1.6;min-height:110px}.pack-copy li{padding:5px 0;border-bottom:1px solid #3c443466;overflow-wrap:anywhere}
.pack-copy .button{display:flex;align-items:center;justify-content:space-between;text-decoration:none;font-size:11px}
.history-summary{display:grid;grid-template-columns:1fr 1fr 1.5fr;border-top:1px solid var(--portal-line);border-bottom:1px solid var(--portal-line);margin-bottom:28px;padding:21px 0;gap:20px}
.history-summary>div{display:flex;flex-direction:column;gap:9px;border-right:1px solid var(--portal-line);padding-right:20px}.history-summary>div:last-child{border:0}
.history-summary span{font-size:10px;color:var(--portal-muted);text-transform:uppercase;letter-spacing:1px}.history-summary strong{font:400 33px Georgia,serif}.history-summary .history-last{font-size:24px}
.history-table-wrap{overflow-x:auto}.history-table{border-collapse:collapse;width:100%;text-align:left;font-size:12px}.history-table th{color:var(--portal-muted);font-size:9px;text-transform:uppercase;letter-spacing:1px;font-weight:400;padding:16px 14px;border-bottom:1px solid var(--portal-line)}
.history-table td{padding:20px 14px;border-bottom:1px solid var(--portal-line);font-size:11px}.history-table a{color:var(--portal-paper);font-size:14px;text-decoration:none}.history-table td small{display:block;margin-top:7px;color:var(--portal-muted);font-size:10px}.history-table .result-time{font:400 16px monospace;white-space:nowrap}.history-table .record-label{color:var(--portal-green)}
.workspace-nav{display:flex;align-items:center;gap:25px;padding:16px 32px;border-bottom:1px solid var(--portal-line);background:#191e15;font-size:11px;flex-wrap:wrap}.workspace-nav>a:first-child{color:var(--portal-paper);text-decoration:none}.workspace-nav>span{color:var(--portal-muted)}.workspace-nav #edit-current{margin-left:auto;text-decoration:none;font-size:10px}
body[data-page=exercise] .workspace{grid-template-columns:minmax(0,1fr) 300px;min-height:0}body[data-page=exercise] .library{display:none}
body[data-page=exercise] .editor{min-width:0}body[data-page=exercise] #route-title{font-size:36px;width:100%;cursor:default}body[data-page=exercise] .editor-top>div:first-child{min-width:0;flex:1}
body[data-page=exercise] .editor-actions{align-self:start}body[data-page=exercise] .editor-actions .primary{display:none}
body[data-page=exercise] #settings-tab,body[data-page=exercise] #annotation-form .form-actions,body[data-page=exercise] .publication-controls{display:none}
body[data-page=exercise] .inspector-intro .eyebrow{display:none}
body[data-page=exercise] .viewport{min-height:450px}
.editor-top{min-width:0;gap:20px}.title-line input{max-width:100%;font-family:Georgia,serif}.route-meta{flex-wrap:wrap}.inspector-intro h2{font-size:27px}.inspector-note{display:none}
.library .library-bottom .edition{font-size:8px;gap:8px;flex-wrap:wrap}.route-card strong{overflow-wrap:anywhere}
.editor-footer{min-height:40px}.capture-bar{background:#232b1d}.editor-empty{grid-column:2/-1;padding:70px 40px}.editor-empty h2{font:400 35px Georgia,serif}.editor-empty p{color:var(--portal-muted);font-size:13px;margin:18px 0 25px}.workspace.is-empty>.editor,.workspace.is-empty>.inspector{display:none}
.connect-command{display:block;padding:18px 15px;background:#12160f;border:1px solid var(--portal-line);margin:20px 0;font-size:15px;overflow-wrap:anywhere}
dialog{border-radius:0;background:#20271c;border-color:var(--portal-line)}dialog h2{font:400 35px/1.1 Georgia,serif}.dialog-actions .button{font-size:12px}.field-help{line-height:1.6}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1700px){.portal-layout{padding-top:46px;gap:45px}.mode-card h2{font-size:27px}.mode-card-art{height:104px}.mode-art{height:104px;width:140px}}
@media(max-width:1250px){.topbar{gap:20px;padding:18px 24px}.main-navigation{gap:18px}.topbar-right{gap:10px}.topbar-right .connection{font-size:9px}.account-role{display:none}.portal-layout{padding:30px 24px 50px;grid-template-columns:182px minmax(0,1fr);gap:25px}.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.exercise-grid,.pack-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mode-page,.collection-page{padding:30px 30px 50px}.mode-card h2{font-size:26px}.recent-grid{grid-template-columns:1fr}}
@media(max-width:980px){.topbar{gap:16px}.topbar-right{flex-basis:100%;justify-content:flex-end;border-top:1px solid #3c443488;padding-top:10px}.main-navigation{margin-left:auto}.topbar-right .connection{font-size:10px}.account-role{display:block;margin-right:auto}.catalog-toolbar{gap:13px}.catalog-search{flex-basis:100%}.catalog-results{align-items:start}.planned-note{max-width:150px}.category-filter{padding:12px 8px;font-size:11px}.portal-layout{grid-template-columns:165px minmax(0,1fr);gap:20px}.mode-card-copy{padding:15px}.mode-card h2{font-size:23px}.mode-card-meta{gap:6px;font-size:9px}.mode-category{left:15px;font-size:8px}.exercise-filter-controls{width:100%}.exercise-filter-controls .catalog-search{flex-basis:55%;min-width:0}.mode-overview-art{min-width:140px}.mode-overview-art .mode-art{width:140px}body[data-page=exercise] .workspace{grid-template-columns:minmax(0,1fr)}body[data-page=exercise] .inspector{grid-column:1}.exercise-card{padding:20px}.history-table th,.history-table td{padding-left:8px;padding-right:8px}}
@media(max-width:680px){.topbar{padding:17px 17px 12px}.brand{font-size:22px}.brand svg{width:29px;height:29px}.main-navigation{order:3;width:100%;justify-content:space-between;gap:10px;margin:0;border-top:1px solid var(--portal-line);padding-top:9px}.main-navigation a{font-size:12px}.topbar-right{flex-basis:auto;margin-left:auto;border:0;padding:0;gap:8px;max-width:55%}.topbar-right .connection-button,.topbar-right .account-role,.topbar-right #help-button{display:none}.topbar-right>.button{font-size:10px;min-height:30px;padding:7px}.portal-layout{display:block;padding:23px 17px 40px}.catalog-sidebar{position:static;margin-bottom:25px;padding:0}.sidebar-label,.sidebar-foot,.sidebar-divider{display:none}#category-filters{display:flex;flex-wrap:wrap;gap:6px}.category-filter{width:auto;flex:0 1 auto;margin:0;padding:9px 10px;min-height:36px;font-size:11px;border-color:var(--portal-line);background:var(--portal-panel)}.category-filter .ui-icon{width:15px;height:15px}.category-filter small{font-size:9px;margin-left:4px}.saved-filter{margin-top:8px;display:inline-flex}.page-heading{margin-bottom:21px}.page-heading h1{font-size:36px;letter-spacing:-1.2px}.mode-grid{gap:12px}.mode-card-art{height:73px}.mode-art{height:78px;width:105px;right:7px}.mode-category{font-size:8px;max-width:60%;left:12px;bottom:10px}.mode-card h2{font-size:22px}.mode-card-copy{padding:13px 12px}.mode-card p{font-size:11px;min-height:52px}.mode-card-meta{font-size:9px;flex-wrap:wrap;margin-top:14px;gap:5px}.mode-card-meta .ui-icon{width:14px;height:14px}.favorite-button{top:8px;right:8px;width:27px;height:27px}.planned-note{display:none}.mode-page,.collection-page{padding:24px 17px 45px}.mode-overview-art{display:none}.mode-overview{padding-bottom:23px}.exercise-grid,.pack-grid{grid-template-columns:1fr}.exercise-toolbar h2{font-size:28px}.exercise-filter-controls .catalog-search{flex-basis:100%}.exercise-filter-controls select{width:100%}.planned-mode{padding:24px}.history-summary{gap:12px;grid-template-columns:1fr 1fr}.history-summary>div{padding-right:10px}.history-summary>div:last-child{grid-column:1/-1}.history-summary>div:nth-child(2){border:0}.history-summary .history-last{font-size:22px}.history-table{min-width:570px}.workspace-nav{padding:13px 17px;gap:12px}.workspace-nav>span{font-size:10px}body[data-page=exercise] #route-title{font-size:28px}body[data-page=exercise] .editor-top{padding:23px 17px}body[data-page=exercise] .viewport{min-height:360px;height:360px}body[data-page=exercise] .annotation-list{grid-template-columns:1fr}.editor-empty{padding:40px 20px}.connect-command{font-size:13px}}
@media(max-width:390px){.mode-grid{grid-template-columns:1fr}.mode-card-main{display:grid;grid-template-columns:90px minmax(0,1fr)}.mode-card-art{height:100%;border-bottom:0;border-right:1px solid var(--portal-line)}.mode-art{height:80px;width:95px;right:0;bottom:25px}.mode-category{top:16px;bottom:auto;max-width:70px;font-size:8px}.mode-card p{min-height:0}.mode-card h2{font-size:23px}.mode-card-meta{margin-top:14px}.favorite-button{width:25px;height:25px;top:8px;right:8px}.mode-card-copy{padding-top:15px}.mode-status{font-size:8px;padding-right:20px}.page-heading h1{font-size:31px}.category-filter{padding:8px;gap:6px;font-size:10px}.topbar-right{max-width:51%}.brand{font-size:20px;gap:7px}.brand-dot{display:none}}
@media(max-width:680px){.topbar-right .connection-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--portal-line);padding:6px 8px;min-height:30px}.connection-button:before{content:attr(data-short-label);font-size:10px;color:var(--portal-muted)}.connection-button .connection{display:none}}
@media(pointer:coarse){.favorite-button{width:40px;height:40px;top:5px;right:5px}.category-filter{min-height:44px}.availability-filter{min-height:44px}.main-navigation a{min-height:44px;display:flex;align-items:center}}
@media(prefers-reduced-motion:reduce){.mode-card{transition:none}.mode-card:hover{transform:none}}
.language-control select{background:#18251f;color:#f0eddf;border:1px solid #425145;padding:7px 5px;font:inherit;font-size:11px;cursor:pointer;max-width:55px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.translation-fields{border:1px solid #425145;margin:20px 0;padding:12px}.translation-fields legend{font-size:11px;color:#b8cf9e;padding:0 6px}
.tracking-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:30px}.tracking-layout p{color:var(--portal-muted);line-height:1.7;font-size:13px}.tracking-controls{display:flex;gap:12px;flex-wrap:wrap}.tracking-score{border:1px solid var(--portal-line);padding:25px;background:var(--portal-panel);align-self:start}.tracking-score>strong{display:block;font-family:Georgia,serif;font-size:64px;color:var(--portal-accent);margin:20px 0 0}.tracking-score dl>div{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--portal-line);gap:10px}.tracking-score dt{font-size:12px;color:var(--portal-muted)}.tracking-score dd{margin:0}.tracking-results{margin-top:40px}.tracking-result{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--portal-line);padding:12px 0;font-size:13px}.tracking-setup{margin-top:30px;padding-top:25px;border-top:1px solid var(--portal-line)}@media(max-width:800px){.tracking-layout{grid-template-columns:1fr}.tracking-score{width:auto}.tracking-result{flex-wrap:wrap}}


.tracking-authoring { margin-top:32px;padding:22px;border:1px solid var(--line, #4a5040); }
.tracking-authoring summary { cursor:pointer;font-weight:700; }
.tracking-authoring-controls { display:flex;flex-wrap:wrap;gap:12px;align-items:end; }
.tracking-authoring-controls label { display:flex;flex-direction:column;gap:6px; }
.tracking-authoring-controls select { padding:10px;background:#20251b;color:#f2efd9;border:1px solid #667256; }
#pattern-clips { display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:6px; }
.tracking-location-field,.tracking-setup label{display:flex;flex-direction:column;gap:8px;margin:14px 0;max-width:440px}
.tracking-location-field select,.tracking-setup input{padding:12px;border:1px solid var(--portal-line);background:var(--portal-panel);color:var(--portal-text);font:inherit;min-width:0}
#pattern-clips{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:18px}
.tracking-pattern-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:14px;border:1px solid var(--portal-line);background:var(--portal-panel)}
.tracking-pattern-row strong{grid-column:1/-1;font-size:14px;margin-bottom:6px}.tracking-pattern-row .button{padding:9px 5px;font-size:11px;min-width:0;white-space:normal}
