:root{
  color-scheme:light;
  --black:#0a0a0a;
  --white:#fff;
  --red:#d63d32;
  --gray:#777;
  --soft:#f2f2f0;
  --line:#0a0a0a;
  --soft-line:#c7c7c4;
  --safe-top:max(0px,var(--tg-content-safe-area-inset-top,0px));
  --safe-bottom:max(8px,var(--tg-content-safe-area-inset-bottom,0px));
  --bar-height:76px;
  --header-height:calc(var(--bar-height) + var(--safe-top));
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{background:var(--white);scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;overflow-x:hidden;background:var(--white);color:var(--black);font-size:16px;line-height:1.15;overscroll-behavior-y:none}
button,a{font:inherit;color:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.app-shell{min-height:100vh;min-height:100dvh;padding-bottom:calc(72px + var(--safe-bottom));overflow:clip}
.masthead{position:sticky;z-index:20;top:0;height:var(--header-height);display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;padding:var(--safe-top) clamp(20px,3.2vw,56px) 0;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.logo{display:inline-flex;width:auto;text-decoration:none}
.masthead .logo{grid-column:2;grid-row:1;justify-self:center}
.logo img{display:block;width:104px;height:auto}
.head-links{grid-column:3;grid-row:1;justify-self:end;display:flex;align-self:stretch;align-items:center;gap:28px}
.head-links a,.head-links button{position:relative;display:inline-flex;align-items:center;height:100%;padding:0;border:0;background:none;text-decoration:none;cursor:pointer;font-size:.92rem}
.head-links .head-button{height:auto;min-height:38px;padding:0 14px;border:1px solid var(--black);background:var(--white);color:var(--black);font-size:.78rem;line-height:1;transition:background-color .12s ease,color .12s ease,border-color .12s ease,transform .12s ease}
.head-links button.head-button{border:1px solid var(--black);padding:0 14px;background:var(--white)}
.head-links .head-button-primary,.head-links button.head-button-primary{background:var(--black);color:var(--white)}
.head-links .head-button:active{transform:scale(.97)}
.head-links .admin-center-link{color:var(--red)}
.preview-note{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 clamp(18px,3.2vw,52px);border-bottom:1px solid #c8c8c8;background:#f6f6f3;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}
.preview-note span{display:flex;align-items:center;gap:8px}.preview-note i{width:7px;height:7px;border-radius:50%;background:var(--red)}
.preview-note a{text-decoration:none;border-bottom:1px solid currentColor}.preview-note b{color:var(--red)}
.profile-loader{min-height:calc(100dvh - var(--header-height) - 44px);display:flex;flex-direction:column;justify-content:center;padding:clamp(24px,4vw,64px)}
.profile-loader[hidden]{display:none}
.profile-loader>span{color:var(--red);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}
.profile-loader>strong{max-width:870px;margin-top:18px;font-size:clamp(3rem,9vw,8.5rem);line-height:.82;letter-spacing:-.075em;text-transform:uppercase}
.loader-line{height:2px;margin-top:clamp(40px,8vw,110px);overflow:hidden;background:#ddd}.loader-line i{display:block;width:38%;height:100%;background:var(--red);animation:loader 1.05s cubic-bezier(.65,0,.35,1) infinite}
@keyframes loader{0%{transform:translateX(-110%)}55%{transform:translateX(95%)}100%{transform:translateX(265%)}}
.profile-content[hidden]{display:none}
.profile-content.is-visible{animation:content-in .24s ease-out both}
@keyframes content-in{from{opacity:.35}to{opacity:1}}
.identity{display:grid;grid-template-columns:minmax(300px,.58fr) minmax(620px,1.42fr);border-bottom:1px solid var(--line)}
.account-card{min-height:232px;display:flex;flex-direction:column;justify-content:center;padding:clamp(24px,3.2vw,48px);border-right:1px solid var(--line)}
.identity-kicker{display:block;color:var(--red);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}
.identity-person{display:flex;align-items:center;gap:18px;margin-top:20px}
.avatar{width:72px;height:72px;flex:0 0 auto;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:var(--black);color:var(--white);font-size:1.3rem;font-weight:800}
.avatar img{width:100%;height:100%;object-fit:cover}
.identity-copy{min-width:0}.identity-copy strong,.identity-copy span{display:block}.identity-copy strong{overflow-wrap:anywhere;font-size:clamp(1.8rem,3vw,3rem);letter-spacing:-.055em}.identity-copy span{margin-top:7px;overflow:hidden;color:#707070;font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}
.identity-note{max-width:310px;margin:22px 0 0;color:#737373;font-size:.76rem;line-height:1.35}.account-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;background:var(--soft)}
.account-action{position:relative;min-height:106px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:17px 20px 34px;border:1px solid #c4c4c4;background:var(--white);text-align:left;text-decoration:none;cursor:pointer;transition:border-color .18s,background .18s,color .18s,box-shadow .18s,transform .18s}.account-action>span{color:#777;font-size:.62rem;text-transform:uppercase;letter-spacing:.075em}.account-action strong{margin-top:7px;font-size:clamp(1.05rem,1.45vw,1.38rem);line-height:.98;letter-spacing:-.04em}.account-action small{margin-top:7px;color:#777;font-size:.68rem;line-height:1.2}.account-action i{position:absolute;right:18px;bottom:14px;color:var(--red);font-size:.62rem;font-style:normal;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.account-action:hover{z-index:1;border-color:var(--black);background:var(--black);color:var(--white);box-shadow:0 8px 22px rgba(0,0,0,.14);transform:translateY(-2px)}.account-action:hover>span,.account-action:hover small{color:#aaa}.account-action:active{transform:scale(.985)}
.outline-button{min-height:46px;flex:0 0 auto;padding:0 17px;border:1px solid var(--black);background:var(--white);cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}
.outline-button:hover{background:var(--black);color:var(--white)}.outline-button:active{transform:scale(.985)}
.directions-section{padding:clamp(42px,6vw,88px) clamp(18px,3.2vw,52px) clamp(58px,8vw,110px)}
.section-title{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:clamp(28px,4.2vw,58px)}
.section-title span{display:block;margin-bottom:10px;color:var(--red);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}
.section-title h1{margin:0;font-size:clamp(3.1rem,8vw,8.4rem);line-height:.78;letter-spacing:-.075em;text-transform:uppercase}
.section-title p{max-width:390px;margin:0 0 4px;color:#676767;font-size:.95rem;line-height:1.4}
.progress-legend{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px 22px;margin:-18px 0 22px;font-size:.68rem;color:#666}.progress-legend span{display:flex;align-items:center;gap:7px}.progress-legend i{width:11px;height:11px;border:1px solid #aaa;background:var(--white)}.progress-legend i.known{border-color:var(--red);background:var(--red)}.progress-legend i.learning{border-color:var(--black);background:var(--black)}.progress-legend i.planned{border-color:#777;background:#777}
.direction-grid{display:grid;grid-template-columns:1fr;align-items:start;gap:20px}
.direction-card{position:relative;min-width:0;border:1px solid var(--line);background:var(--white);scroll-margin-top:calc(var(--header-height) + 58px);transition:box-shadow .26s ease,background .26s ease}
.direction-card.is-active{z-index:2;box-shadow:inset 0 0 0 3px var(--red)}
.direction-summary{width:100%;min-height:250px;display:grid;grid-template-columns:minmax(220px,.75fr) minmax(360px,1.7fr) 44px;grid-template-areas:"name cells arrow" "meta cells arrow" "stats stats stats";align-items:center;gap:14px clamp(28px,4vw,72px);padding:28px 30px 24px;border:0;background:transparent;text-align:left;cursor:pointer}
.direction-name-row{display:contents}.direction-name{grid-area:name;min-width:0;align-self:end;overflow-wrap:anywhere;font-size:clamp(2.15rem,3.4vw,4.2rem);font-weight:750;line-height:.88;letter-spacing:-.065em}.direction-arrow{grid-area:arrow;width:44px;height:44px;flex:0 0 auto;display:grid;place-items:center;align-self:center;border:1px solid var(--black);font-size:1.1rem;transition:transform .34s cubic-bezier(.2,.8,.2,1),background .2s,color .2s}.direction-summary:hover .direction-arrow{background:var(--black);color:var(--white)}.direction-card.is-open .direction-arrow{transform:rotate(180deg)}
.direction-meta{grid-area:meta;align-self:start;display:flex;flex-wrap:wrap;gap:8px 16px;color:#6f6f6f;font-size:.75rem}.direction-meta strong{color:var(--black);font-weight:600}
.progress-cells{grid-area:cells;display:grid;grid-template-columns:repeat(20,minmax(0,1fr));align-self:center;gap:4px;margin:0;padding:0}.progress-cell{aspect-ratio:1;border:1px solid var(--soft-line);background:var(--white)}.progress-cell.known{border-color:var(--red);background:var(--red)}.progress-cell.learning{border-color:var(--black);background:var(--black)}.progress-cell.planned{border-color:#777;background:#777}
.direction-details{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .42s cubic-bezier(.16,1,.3,1),opacity .24s ease}
.direction-card.is-open .direction-details{grid-template-rows:1fr;opacity:1}
.direction-details-inner{min-height:0;overflow:hidden}.direction-details-content{padding:6px 22px 24px}
.detail-divider{height:1px;margin-bottom:23px;background:var(--black);transform:scaleX(0);transform-origin:left;transition:transform .38s cubic-bezier(.16,1,.3,1)}.direction-card.is-open .detail-divider{transform:scaleX(1)}
.status-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;padding:1px;background:var(--soft-line)}
.direction-status-list{grid-area:stats;width:100%;margin-top:12px}
.status-item{min-width:0;min-height:76px;display:flex;flex-direction:column;justify-content:space-between;padding:10px;border:0;background:var(--white)}.status-item strong{font-size:1.65rem;line-height:1;letter-spacing:-.06em}.status-item span{color:#777;font-size:.62rem;text-transform:uppercase}.status-item.known strong{color:var(--red)}
.detail-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-top:28px;margin-bottom:12px}.detail-heading h3{margin:0;font-size:1.05rem;letter-spacing:-.03em}.detail-heading span{color:#777;font-size:.68rem}
.category-list{display:grid;gap:12px}
.category-link{display:block;padding:16px;border:1px solid #bcbcbc;background:var(--white);text-decoration:none;transform:translateY(0);transition:border-color .2s ease,background .2s ease,box-shadow .2s ease,transform .2s ease}.category-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.category-name{min-width:0;overflow-wrap:anywhere;font-weight:700;letter-spacing:-.025em}.category-top i{color:var(--red);font-style:normal;transform:translateX(0);transition:transform .2s ease}.category-progress{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:3px;margin-top:11px}.category-progress .progress-cell{min-width:0}.category-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:9px;color:#777;font-size:.62rem}.category-stats .known{color:var(--red)}.category-stats .learning{color:var(--black)}.category-link:focus-visible{outline:2px solid var(--red);outline-offset:3px}.category-link:active{transform:scale(.992)}
.detail-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:26px}.detail-actions a{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid #bcbcbc;background:var(--white);text-decoration:none;transform:translateY(0);transition:border-color .2s ease,background .2s ease,box-shadow .2s ease,transform .2s ease}.detail-actions span{font-weight:700;letter-spacing:-.025em}.detail-actions b{color:var(--red);font-size:1.05rem;transform:translateX(0);transition:transform .2s ease}.detail-actions a:focus-visible{outline:2px solid var(--red);outline-offset:3px}.detail-actions a:active{transform:scale(.992)}
.profile-footer{position:relative;min-height:0;display:grid;grid-template-columns:minmax(250px,.72fr) minmax(520px,1.28fr);align-items:center;gap:clamp(30px,5vw,72px);padding:30px clamp(28px,3.2vw,52px);overflow:hidden;background:var(--black);color:var(--white)}.profile-footer::before{content:"";position:absolute;top:0;bottom:0;left:0;width:4px;background:var(--red)}.community-message>span{display:block;margin-bottom:10px;color:var(--red);font-size:.66rem;text-transform:uppercase;letter-spacing:.08em}.community-message h2{max-width:430px;margin:0;color:var(--red);font-size:clamp(2.45rem,4.15vw,4rem);line-height:.82;letter-spacing:-.055em;word-spacing:.04em;text-transform:uppercase}.community-invite{max-width:none;display:grid;grid-template-columns:minmax(250px,1fr) minmax(220px,270px);align-items:center;gap:clamp(20px,3vw,42px)}.community-invite p{margin:0;color:#d1d1d1;font-size:clamp(.95rem,1.25vw,1.15rem);font-weight:650;line-height:1.22;letter-spacing:-.025em}.community-cta{width:100%;min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0;padding:0 18px;border:1px solid var(--white);background:var(--white);color:var(--black);font-size:.82rem;font-weight:700;text-align:left;cursor:pointer;transform:translateY(0);transition:border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}.community-cta b{color:var(--red);font-size:1.05rem;transform:translateX(0);transition:transform .2s ease}.community-cta:focus-visible{outline:2px solid var(--red);outline-offset:4px}.community-cta:active{transform:scale(.992)}
dialog{width:min(560px,calc(100% - 24px));max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 24px);padding:0;overflow:auto;border:1px solid var(--black);background:var(--soft);color:var(--black);box-shadow:0 24px 80px rgba(0,0,0,.28)}dialog[open]{animation:dialog-in .24s cubic-bezier(.16,1,.3,1) both}dialog::backdrop{background:rgba(0,0,0,.58);backdrop-filter:blur(5px);animation:backdrop-in .2s ease both}@keyframes dialog-in{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}@keyframes backdrop-in{from{opacity:0}to{opacity:1}}.dialog-inner{padding:24px}.dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.dialog-kicker{color:var(--red);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}.dialog-inner h2{margin:8px 0 0;font-size:clamp(2rem,6vw,3rem);line-height:.88;letter-spacing:-.065em}.dialog-close{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;padding:0;border:1px solid #bcbcbc;background:var(--white);font-size:1.35rem;line-height:1;cursor:pointer;transition:background .16s,color .16s,border-color .16s,transform .16s}.dialog-close:hover{border-color:var(--black);background:var(--black);color:var(--white)}.dialog-close:active{transform:scale(.94)}.dialog-inner>p{max-width:450px;margin:15px 0 0;color:#666;font-size:.8rem;line-height:1.42}.dialog-selection{margin-top:20px;color:#777;font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.direction-options{display:grid;gap:8px;margin-top:10px}.direction-option{position:relative;min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 15px;border:1px solid #c3c3c3;background:var(--white);cursor:pointer;transition:border-color .18s,box-shadow .18s,transform .18s}.direction-option:hover{border-color:var(--black);box-shadow:0 7px 18px rgba(0,0,0,.07);transform:translateY(-1px)}.direction-option.is-selected{border-color:var(--black)}.direction-option-copy strong,.direction-option-copy small{display:block}.direction-option-copy strong{font-size:1rem;letter-spacing:-.02em}.direction-option-copy small{margin-top:5px;color:#888;font-size:.66rem}.direction-option.is-selected .direction-option-copy small{color:var(--red)}.direction-option input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.direction-option:has(input:focus-visible){outline:2px solid var(--red);outline-offset:2px}.direction-switch{position:relative;width:46px;height:26px;flex:0 0 auto;border:1px solid #aaa;border-radius:999px;background:#d7d7d4;transition:background .2s,border-color .2s}.direction-switch b{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--white);box-shadow:0 1px 4px rgba(0,0,0,.25);transition:transform .22s cubic-bezier(.16,1,.3,1)}.direction-option input:checked+.direction-switch{border-color:var(--red);background:var(--red)}.direction-option input:checked+.direction-switch b{transform:translateX(20px)}.dialog-actions{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(180px,1.3fr);gap:8px;margin-top:18px}.dialog-actions button{min-height:50px;border:1px solid var(--black);background:var(--white);font-weight:700;cursor:pointer;transition:background .18s,color .18s,border-color .18s,transform .18s}.dialog-actions button:active{transform:scale(.985)}.dialog-actions .primary{background:var(--black);color:var(--white)}.dialog-actions .primary:hover{border-color:var(--red);background:var(--red)}.dialog-actions .primary:disabled{border-color:#c8c8c8;background:#dededb;color:#888;cursor:not-allowed}
.bottom-nav{position:fixed;z-index:30;right:0;bottom:0;left:0;display:none;grid-template-columns:repeat(3,1fr);padding:8px 8px calc(8px + var(--safe-bottom));border-top:1px solid var(--black);background:rgba(255,255,255,.96);backdrop-filter:blur(14px)}.bottom-nav a{padding:9px 2px;text-align:center;text-decoration:none;font-size:.76rem}.bottom-nav a.active::before{content:"";display:inline-block;width:6px;height:6px;margin-right:7px;border-radius:50%;background:var(--red)}
.toast{position:fixed;z-index:50;left:50%;bottom:26px;max-width:calc(100% - 28px);padding:10px 13px;background:var(--red);color:var(--white);font-size:.75rem;opacity:0;pointer-events:none;transform:translate(-50%,12px);transition:opacity .2s,transform .2s}.toast.show{opacity:1;transform:translate(-50%,0)}
.empty-state{grid-column:1/-1;padding:44px 24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.empty-state strong{display:block;font-size:2rem;letter-spacing:-.05em}.empty-state span{display:block;margin-top:10px;color:#777}
@media(hover:hover) and (pointer:fine){.head-links .head-button:hover{background:var(--black);color:var(--white)}.head-links .head-button-primary:hover,.head-links button.head-button-primary:hover{border-color:var(--red);background:var(--red)}.category-link:hover,.detail-actions a:hover{border-color:var(--black);background:#fafafa;box-shadow:0 10px 24px rgba(0,0,0,.08);transform:translateY(-3px)}.category-link:hover .category-top i,.detail-actions a:hover b{transform:translateX(5px)}.community-cta:hover{border-color:var(--red);background:var(--red);color:var(--white);box-shadow:0 14px 34px rgba(0,0,0,.25);transform:translateY(-3px)}.community-cta:hover b{color:var(--white);transform:translateX(5px)}}
@media(min-width:901px){.category-list{grid-template-columns:repeat(2,minmax(0,1fr))}.category-link:only-child{grid-column:1/-1}}
@media(min-width:1000px){.logo img{width:118px}}
@media(min-width:1600px){.directions-section{padding-inline:max(52px,calc((100vw - 1600px)/2 + 52px))}.account-card{padding-left:max(52px,calc((100vw - 1600px)/2 + 52px))}.account-actions{padding-right:max(0px,calc((100vw - 1600px)/2))}.profile-explainer{padding-inline:max(52px,calc((100vw - 1600px)/2 + 52px))}.direction-summary{min-height:270px}.direction-name{font-size:4.2rem}.progress-cells{grid-template-columns:repeat(24,minmax(0,1fr))}}
@media(max-width:1180px){.identity{grid-template-columns:1fr}.account-card{min-height:190px;border-right:0}.account-actions{grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line)}.account-action{min-height:116px;padding-inline:16px}.direction-summary{grid-template-columns:minmax(190px,.75fr) minmax(300px,1.5fr) 44px;min-height:242px;padding:22px}.direction-name{font-size:clamp(2rem,4vw,3rem)}.direction-details-content{padding-inline:20px}.progress-cells{grid-template-columns:repeat(16,minmax(0,1fr));gap:3px}}
@media(max-width:900px){.section-title{display:block}.section-title h1{font-size:clamp(4.7rem,11.5vw,7rem)}.section-title p{max-width:430px;margin-top:26px}.direction-summary{grid-template-columns:minmax(170px,.72fr) minmax(260px,1.35fr) 44px;gap:12px 24px}.profile-footer{grid-template-columns:minmax(220px,.8fr) minmax(320px,1.2fr);gap:28px}.community-invite{display:block}.community-cta{max-width:300px;margin-top:18px}}
@media(max-width:700px){:root{--bar-height:58px}.app-shell{padding-bottom:calc(68px + var(--safe-bottom))}.masthead{height:var(--header-height);padding-inline:14px}.logo img{width:70px}.head-links a,.head-links button{display:none}.head-links button[data-auth-menu]{display:inline-flex;min-width:44px;justify-content:flex-end;font-size:.78rem}.preview-note{min-height:40px;padding:8px 14px;font-size:.6rem}.preview-note span{min-width:0}.preview-note a{flex:0 0 auto}.account-card{min-height:0;padding:20px 14px}.identity-person{gap:13px;margin-top:15px}.avatar{width:56px;height:56px}.identity-copy strong{font-size:1.65rem}.identity-note{margin-top:16px;font-size:.7rem}.account-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:6px}.account-action{min-height:112px;padding:14px 12px 32px}.account-action strong{font-size:1rem}.account-action small{font-size:.62rem}.account-action i{right:12px;bottom:11px;font-size:.56rem}.profile-explainer{align-items:flex-start;padding:13px 14px;font-size:.72rem}.profile-explainer>i{margin-top:3px}.directions-section{padding:38px 14px 62px}.section-title{display:block;margin-bottom:28px}.section-title h1{font-size:clamp(2rem,10.2vw,4.4rem);white-space:nowrap}.section-title p{margin-top:24px}.progress-legend{justify-content:flex-start;gap:9px 14px;margin:-6px 0 22px;font-size:.64rem}.direction-grid{gap:14px}.direction-summary{min-height:335px;display:flex;flex-direction:column;padding:18px}.direction-name-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;width:100%}.direction-details-content{padding:4px 18px 20px}.direction-name{font-size:2.2rem}.direction-meta{display:block;margin-top:12px}.direction-meta span{display:block;margin-top:5px}.progress-cells{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));width:100%;gap:3px;margin-top:0;padding-top:28px}.direction-status-list{width:100%;margin-top:20px}.direction-card{scroll-margin-top:calc(var(--header-height) + 48px)}.status-list{grid-template-columns:repeat(2,minmax(0,1fr))}.status-item:nth-child(n){border:0}.category-progress{grid-template-columns:repeat(18,minmax(0,1fr))}.detail-actions{gap:6px}.detail-actions a{min-height:76px;align-items:flex-start;padding:12px 10px}.detail-actions span{font-size:.76rem;line-height:1.15}.detail-actions b{font-size:.9rem}.profile-footer{min-height:170px;padding:26px 14px}.profile-footer>span{font-size:5rem}.profile-footer p{font-size:1rem}.bottom-nav{display:grid}.toast{bottom:calc(76px + var(--safe-bottom))}.profile-loader{min-height:calc(100dvh - var(--header-height) - 40px);padding:30px 14px}.profile-loader>strong{font-size:clamp(2.8rem,15vw,4.7rem)}dialog{width:calc(100% - 20px)}.dialog-inner{padding:20px 16px}.dialog-inner h2{font-size:clamp(2.5rem,14vw,3.8rem)}}
@media(max-width:390px){.preview-note{gap:10px}.preview-note a b{display:none}.progress-cells{grid-template-columns:repeat(12,minmax(0,1fr))}.base-link strong{font-size:.98rem}.profile-footer>span{font-size:4.3rem}.profile-footer p{font-size:.9rem}}
@media(max-width:700px){.profile-footer{min-height:0;display:grid;grid-template-columns:1fr;align-items:start;gap:16px;padding:22px 18px calc(22px + var(--safe-bottom))}.community-message>span{margin-bottom:7px}.community-message h2{max-width:none;font-size:clamp(2.15rem,9.5vw,2.75rem);line-height:.86}.community-invite{display:block;max-width:none}.community-invite p{max-width:440px;font-size:.92rem;line-height:1.24}.community-cta{max-width:none;min-height:50px;margin-top:15px;padding-inline:16px}}
@media(max-width:700px){dialog{width:calc(100% - 16px);max-height:calc(100dvh - var(--safe-top) - 84px)}.dialog-inner{padding:18px 14px}.dialog-inner h2{font-size:clamp(1.9rem,9vw,2.5rem)}.dialog-inner>p{font-size:.75rem}.direction-option{min-height:66px}.dialog-actions{grid-template-columns:.72fr 1.28fr}}
@media(max-width:700px){.head-links{align-self:auto;gap:6px}.head-links .head-button,.head-links .admin-center-link{display:inline-flex}.head-links a[aria-current="page"]{display:none}.head-links .head-button{min-height:36px;padding-inline:10px;font-size:.68rem}.head-links button.head-button{padding-inline:10px}.head-links .admin-center-link{font-size:0}.head-links .admin-center-link::after{content:"ADMIN";font-size:.64rem;letter-spacing:.04em}}
@media(max-height:520px) and (orientation:landscape){.profile-loader{justify-content:flex-start;padding-top:34px}.profile-loader>strong{font-size:3.2rem}.loader-line{margin-top:30px}.bottom-nav{position:static}.app-shell{padding-bottom:0}}
@media(min-width:1000px){body{padding:32px;background:#deded8}.app-shell{width:100%;max-width:1280px;min-height:calc(100dvh - 64px);margin-inline:auto;padding-bottom:0;border:1px solid var(--black);background:var(--white);box-shadow:0 20px 64px rgba(0,0,0,.09)}.section-title h1{font-size:clamp(4.6rem,6.6vw,6.8rem)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.loader-line i,dialog[open],dialog::backdrop{animation:none}.profile-content.is-visible{animation:none}.direction-card,.direction-arrow,.direction-details,.detail-divider,.toast,.outline-button,.category-link,.category-top i,.detail-actions a,.detail-actions b,.community-cta,.community-cta b,.dialog-close,.direction-option,.direction-switch,.direction-switch b,.dialog-actions button{transition:none!important}}
