@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:500;src:url(./chakra-petch-latin-500-normal.BR1ody1F.woff2)format("woff2"),url(./chakra-petch-latin-500-normal.CnUQnZ4D.woff)format("woff")}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:600;src:url(./chakra-petch-latin-600-normal.DVQm9bgb.woff2)format("woff2"),url(./chakra-petch-latin-600-normal.DQKfcdKo.woff)format("woff")}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:700;src:url(./chakra-petch-latin-700-normal.CnDBPjkL.woff2)format("woff2"),url(./chakra-petch-latin-700-normal.D1s_c2du.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-400-normal.C38fXH4l.woff2)format("woff2"),url(./inter-latin-400-normal.CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-latin-500-normal.Cerq10X2.woff2)format("woff2"),url(./inter-latin-500-normal.BL9OpVg8.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-600-normal.LgqL8muc.woff2)format("woff2"),url(./inter-latin-600-normal.CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-latin-700-normal.Yt3aPRUw.woff2)format("woff2"),url(./inter-latin-700-normal.BLAVimhd.woff)format("woff")}:root{--bg:#0a0e1a;--hud:#0e1324;--panel:#111729;--panel2:#1a2140;--track:#1b2340;--line:#26304f;--line2:#2e3860;--fg:#eef1f8;--fg2:#c9cfe0;--muted:#a3acc6;--gold:#e8c170;--gold-hi:#f4dda6;--blue:#7ea6ff;--slate:#5a6690;--ivory:#f3eee3;--ink:#0a0e1a;--panel-deep:#141b33;--panel-raised:#1e2a52;--panel-raised-hover:#1b2a5c;--grid-line:#141b33;--line3:#3a4670;--line-strong:#46528a;--key-shadow:#070b18;--gold-key-shadow:#6e5420;--primary-bg:var(--ivory);--primary-fg:var(--ink);--primary-hover:#fff;--on-gold:#3b2a0a;--green:#8fe3b0;--green-line:#3e8f63;--green-soft:#7be0a0;--cyan:#7ae3ff;--robot-face:#0b1022;--shadow:#0009;--shadow-strong:#000000d9;--backdrop:#050810b8;--display:"Chakra Petch", "Segoe UI", system-ui, sans-serif;--body:"Inter", "Segoe UI", system-ui, -apple-system, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#f4f2ec;--hud:#fff;--panel:#fff;--panel2:#eef1f7;--track:#e6e9f1;--line:#d8dde8;--line2:#c4cbdc;--fg:#11162a;--fg2:#333b55;--muted:#5b6480;--gold:#9c6b12;--gold-hi:#c08a2a;--blue:#2f5fd0;--slate:#6b7491;--ivory:#11162a;--ink:#fff;--panel-deep:#f1f3f8;--panel-raised:#e6ecfa;--panel-raised-hover:#dce5fb;--grid-line:#e9ecf3;--line3:#b9c1d6;--line-strong:#9aa4c2;--key-shadow:#cfd5e2;--gold-key-shadow:#6b4708;--primary-bg:#11162a;--primary-fg:#fff;--primary-hover:#2a3150;--on-gold:#fff;--green:#1f7a47;--green-line:#2f9a5e;--green-soft:#1f7a47;--cyan:#0b8fb3;--robot-face:#0b1022;--shadow:#1e284629;--shadow-strong:#1e284638;--backdrop:#14192873;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}.icon{vertical-align:-.125em;flex-shrink:0;width:1em;height:1em}.skill-hexagon .icon{stroke-width:1.75px;width:20px;height:20px}body{background:var(--bg);color:var(--fg);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.5}body:before{content:"";height:env(safe-area-inset-top,0px);z-index:30;background:var(--hud);position:fixed;inset:0 0 auto}a{color:var(--gold);text-underline-offset:3px}a:hover{color:var(--gold-hi)}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--blue);outline-offset:2px}h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0;font-weight:700;line-height:1.1}p{margin:0}.numeric{font-family:var(--display);font-variant-numeric:tabular-nums}.container{max-width:1360px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));margin:0 auto}.label{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.label.gold{color:var(--gold)}.label.blue{color:var(--blue)}.small{color:var(--muted);font-size:12px}.subtle{color:var(--fg2)}.gold{color:var(--gold)}.blue{color:var(--blue)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.top-bar{top:env(safe-area-inset-top,0px);z-index:20;background:var(--hud);border-bottom:1px solid var(--line);position:sticky}.top-bar .container{flex-wrap:wrap;align-items:center;gap:12px;padding-block:8px;display:flex}.logo{color:var(--fg);font-family:var(--display);letter-spacing:.04em;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:6px 0;font-size:17px;font-weight:700;text-decoration:none;display:flex}.nav{flex-wrap:wrap;gap:2px;margin-left:auto;display:flex}.nav a{text-transform:uppercase;cursor:pointer;color:var(--fg2);font-family:var(--display);letter-spacing:.08em;background:0 0;border:0;min-height:40px;padding:8px 12px;font-size:13px;font-weight:600}.nav a:hover{color:var(--fg)}.theme-toggle{border:1px solid var(--line);width:40px;height:40px;color:var(--fg2);cursor:pointer;background:0 0;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.theme-toggle:hover{color:var(--gold);border-color:var(--gold)}.nav a[aria-current=page]{background:var(--gold);color:var(--ink);clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%)}main.container{flex-direction:column;gap:14px;padding-block:16px 28px;display:flex}.panel{background:var(--panel);border:1px solid var(--line);flex-direction:column;gap:8px;min-width:0;padding:12px 14px;display:flex}.tile{background:var(--panel2);flex-direction:column;gap:2px;min-width:0;padding:8px 10px;display:flex}.tile b{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:22px;line-height:1.15}.side{border-left:3px solid var(--line2)}.side.gold{border-left-color:var(--gold)}.side.blue{border-left-color:var(--blue)}.frame{background:var(--gold);clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px);min-width:0;padding:1.5px}.frame.blue{background:var(--blue)}.frame>.frame-content{background:var(--panel);clip-path:polygon(13px 0,100% 0,100% calc(100% - 13px),calc(100% - 13px) 100%,0 100%,0 13px);flex-direction:column;gap:10px;height:100%;padding:14px;display:flex}.grid{gap:8px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-auto{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.two-columns{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.main-column{flex-direction:column;flex:999 560px;gap:12px;min-width:0;display:flex}.side-column{flex-direction:column;flex:340px;gap:12px;min-width:0;display:flex}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.page-header h1{font-size:30px}.btn{cursor:pointer;min-height:44px;font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;border:0;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.btn.primary{background:var(--primary-bg);color:var(--primary-fg);clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%)}.btn.primary:hover{background:var(--primary-hover);color:var(--primary-fg)}.btn.ghost{color:var(--fg);border:1px solid var(--line2);background:0 0}.btn.ghost:hover{border-color:var(--blue);color:var(--fg)}.chips{flex-wrap:wrap;gap:4px;display:flex}.chip{background:var(--track);color:var(--fg2);cursor:pointer;font-family:var(--display);letter-spacing:.06em;border:1px solid #0000;min-height:34px;padding:0 10px;font-size:12px;font-weight:600}.chip:hover{color:var(--fg);border-color:var(--line2)}.chip[aria-pressed=true]{background:var(--panel2);color:var(--gold);border-color:var(--gold)}.search{border:1px solid var(--line2);background:var(--panel);min-width:0;display:flex}.search input{min-width:0;color:var(--fg);font:inherit;background:0 0;border:0;outline:none;flex:1;padding:10px 12px;font-size:15px}.search:focus-within{border-color:var(--blue)}.gauge{background:var(--track);min-width:30px;height:8px;display:block;position:relative;-webkit-mask:repeating-linear-gradient(90deg,#000 0 6px,#0000 6px 8px);mask:repeating-linear-gradient(90deg,#000 0 6px,#0000 6px 8px)}.gauge.big{height:10px;-webkit-mask:repeating-linear-gradient(90deg,#000 0 8px,#0000 8px 10px);mask:repeating-linear-gradient(90deg,#000 0 8px,#0000 8px 10px)}.gauge i{background:var(--blue);transition:width .5s;position:absolute;top:0;bottom:0;left:0}.gauge i.fill-gold{background:var(--gold)}.gauge i.fill-muted{background:var(--slate)}.rank{font-family:var(--display);text-align:center;font-weight:700}.rank-S{color:var(--gold)}.rank-A{color:var(--blue)}.rank-B{color:var(--fg2)}.rank-C,.rank-n{color:var(--muted)}.rank-gem{font-family:var(--display);color:var(--ink);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);flex:none;justify-content:center;align-items:center;font-weight:700;display:flex}.rank-gem.S{background:var(--gold)}.rank-gem.A{background:var(--blue)}.rank-gem.B{background:var(--fg2)}.rank-gem.C,.rank-gem.no-rank{background:var(--slate);color:var(--fg)}.stat{grid-template-columns:118px minmax(0,1fr) 56px;align-items:center;gap:8px;display:grid}.stat>span:first-child{font-family:var(--display);letter-spacing:.05em;color:var(--fg2);font-size:12px;font-weight:600}.stat b{font-family:var(--display);text-align:right;font-variant-numeric:tabular-nums}.list{flex-direction:column;gap:4px;display:flex}.item{text-align:left;cursor:pointer;background:var(--panel);border:1px solid var(--line);grid-template-columns:28px 48px minmax(0,1fr) 90px 62px 72px;align-items:center;gap:8px;width:100%;min-height:44px;padding:7px 8px;display:grid}.item:hover{border-color:var(--line2);background:var(--panel-deep)}.item[aria-pressed=true]{background:var(--panel-raised);border-color:var(--gold)}.item .type{font-family:var(--display);letter-spacing:.06em;color:var(--muted);font-size:11px;font-weight:600}.item .name{overflow-wrap:anywhere;min-width:0;font-weight:600;line-height:1.3}.item .name small{color:var(--muted);font-size:12px;font-weight:400;display:block}.item .value{font-family:var(--display);text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.item .value.is-muted{color:var(--fg2);font-weight:500}.list-header{grid-template-columns:28px 48px minmax(0,1fr) 90px 62px 72px;gap:8px;padding:0 9px;display:grid}.item.three-columns,.list-header.three-columns{grid-template-columns:26px minmax(0,1fr) 70px 56px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:560px}th{font-family:var(--display);letter-spacing:.1em;color:var(--muted);text-align:left;padding:6px;font-size:11px;font-weight:600}td{border-top:1px solid var(--line);padding:7px 6px}td.align-right,th.align-right{text-align:right;white-space:nowrap}td:first-child{white-space:nowrap}tr.is-top td{background:var(--panel2)}.tree{background:var(--hud);border:1px solid var(--line);background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);background-size:24px 24px;grid-template-columns:minmax(0,.8fr) minmax(0,1.25fr) minmax(0,1.5fr);gap:22px;padding:12px 14px 14px;display:grid}.column{flex-direction:column;gap:6px;min-width:0;display:flex;position:relative}.column+.column:before{content:"";background:var(--line2);width:1px;position:absolute;top:22px;bottom:0;left:-12px}.node{text-align:left;cursor:pointer;background:var(--panel);border:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 8px;width:100%;min-height:44px;padding:7px 9px;display:grid}.node:hover{border-color:var(--line2)}.node[aria-pressed=true]{background:var(--panel-raised);border-color:var(--gold);box-shadow:-12px 0 0 -10px var(--gold)}.node .name{overflow-wrap:anywhere;min-width:0;font-weight:600;line-height:1.3}.node .value{font-family:var(--display);color:var(--gold);font-variant-numeric:tabular-nums;font-weight:700}.node small{color:var(--muted);grid-column:1/-1;font-size:12px;line-height:1.35}.bac-choices{flex-direction:column;gap:4px;display:flex}.specialty-grid{grid-template-columns:minmax(0,1fr);gap:4px;display:grid}.specialty-grid .chip{text-align:left;letter-spacing:0;text-transform:none;flex-direction:row;justify-content:space-between;align-items:center;gap:8px;min-height:38px;padding:6px 10px;display:flex}.specialty-grid .chip .specialty-name{font-size:13px;line-height:1.2;display:block}.specialty-grid .chip small{opacity:.65;letter-spacing:.04em;text-align:right;flex:none;max-width:45%;font-size:10.5px;font-weight:600;display:block}.specialty-mode .chip{white-space:normal;text-align:center;justify-content:center;width:100%;min-height:34px;padding:4px;line-height:1.15}.specialty-mode{grid-template-columns:1fr 1fr;gap:4px;margin-top:2px;display:grid}.specialty-mode .chip{line-height:1.15}.steps{gap:3px;margin-left:auto;display:flex}.steps li{font-family:var(--display);letter-spacing:.06em;background:var(--track);color:var(--muted);clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%);padding:4px 12px;font-size:11px;font-weight:600;list-style:none}.steps li.is-done{background:var(--gold);color:var(--ink)}.steps li.is-current{background:var(--blue);color:var(--ink)}.steps{margin-block:0;padding:0}.hero{flex-wrap:wrap;align-items:stretch;gap:14px;display:flex}.hero-text{flex-direction:column;flex:520px;justify-content:center;gap:12px;min-width:0;display:flex}.hero h1{font-size:clamp(34px,5vw,54px);line-height:1}.tag{font-family:var(--display);letter-spacing:.14em;color:var(--gold);border:1px solid var(--gold);align-self:flex-start;padding:3px 10px;font-size:12px;font-weight:600}.stage{perspective:1600px;background:var(--hud);border:1px solid var(--line);background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);background-size:24px 24px;flex:460px;min-width:0;height:430px;position:relative;overflow:hidden}.level-stack{width:240px;height:240px;transform-style:preserve-3d;margin:-120px 0 0 -120px;animation:18s ease-in-out infinite alternate spin;position:absolute;top:58%;left:50%;transform:rotateX(58deg)rotate(-40deg)}@keyframes spin{0%{transform:rotateX(58deg)rotate(-40deg)}to{transform:rotateX(58deg)rotate(-20deg)}}.level-plate{border:1.5px solid var(--line2);background:var(--panel);position:absolute}.level-plate span{font-family:var(--display);color:var(--fg2);font-size:13px;font-weight:600;position:absolute;bottom:8px;left:10px}.plate-1{box-shadow:0 50px 70px var(--shadow);inset:0}.plate-2{background:var(--panel-deep);border-color:var(--line-strong);inset:20px;transform:translateZ(70px)}.plate-3{background:var(--panel-raised-hover);border-color:var(--blue);inset:40px;transform:translateZ(140px)}.plate-4{background:var(--panel-raised);border-color:var(--gold);inset:60px;transform:translateZ(210px);box-shadow:0 0 50px #e8c1704d}.plate-4 span{color:var(--gold);font-weight:700}.callout{background:var(--panel);border-left:3px solid var(--blue);padding:8px 12px;position:absolute}.callout b{font-family:var(--display);font-size:24px;display:block}.profile-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:680px;display:grid}.profile-card{text-align:left;cursor:pointer;background:var(--panel);border:1px solid var(--line);flex-direction:column;gap:2px;min-height:44px;padding:10px 12px;display:flex}.profile-card:hover{border-color:var(--gold)}.profile-card b{font-family:var(--display);font-size:16px}.modes{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px;display:grid}.mode{text-align:left;cursor:pointer;background:var(--panel);border:1px solid var(--line);grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.mode:hover{border-color:var(--gold)}.mode b{font-family:var(--display);font-size:16px;display:block}.answers{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:6px;display:grid}.answer{text-align:left;cursor:pointer;background:var(--panel);border:1px solid var(--line2);color:var(--fg2);min-height:48px;padding:10px}.answer:hover{border-color:var(--gold);color:var(--fg)}.key-values{grid-template-columns:minmax(140px,220px) minmax(0,1fr);gap:4px 12px;font-size:13px;display:grid}.key-values span{color:var(--fg2)}.pagination{flex-wrap:wrap;align-items:center;gap:4px;margin-top:8px;display:flex}.pagination .chip{min-width:36px;min-height:36px}.pagination .chip:disabled{opacity:.4;cursor:default}.pagination .page-count{margin-left:auto}.side-column .grid-3 .tile b{font-size:18px}.linkbtn{cursor:pointer;text-align:left;color:var(--fg);text-decoration:underline;-webkit-text-decoration-color:var(--line2);text-decoration-color:var(--line2);text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:600}.linkbtn:hover{color:var(--gold);-webkit-text-decoration-color:var(--gold);text-decoration-color:var(--gold)}.page-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:10px;display:flex}.view-enter{animation:.25s ease-out rise}@keyframes rise{0%{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.level-stack,.view-enter{animation:none}.gauge i{transition:none}}@media (width>=901px){.side-column.is-sticky{top:calc(env(safe-area-inset-top,0px) + 64px);position:sticky}}@media (width<=900px){.tree{grid-template-columns:minmax(0,1fr)}.specialty-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.column+.column:before{display:none}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.item,.list-header{grid-template-columns:24px minmax(0,1fr) 64px 60px}.item.three-columns,.list-header.three-columns{grid-template-columns:22px minmax(0,1fr) 58px}.item.three-columns .gauge,.list-header.three-columns .hide-on-narrow,.item .type,.list-header .type,.item .hide-on-mobile,.list-header .hide-on-mobile{display:none}.grid-3,.profile-cards{grid-template-columns:minmax(0,1fr)}.stage{height:330px}.level-stack{width:180px;height:180px;margin:-90px 0 0 -90px}.plate-2{inset:15px;transform:translateZ(55px)}.plate-3{inset:30px;transform:translateZ(110px)}.plate-4{inset:45px;transform:translateZ(165px)}.callout b{font-size:18px}.stat{grid-template-columns:100px minmax(0,1fr) 52px}.key-values{grid-template-columns:minmax(0,1fr)}.page-header h1{font-size:24px}.nav{flex-wrap:nowrap;order:2;width:100%;margin-left:0;overflow-x:auto}.theme-toggle{order:1;margin-left:auto}.nav a{white-space:nowrap}}.about-panel{gap:10px}.about-panel .tile{gap:4px}details.diplomas{flex-direction:column;gap:8px;display:flex}details.diplomas summary{cursor:pointer;padding:4px 0;list-style:none}details.diplomas summary .icon{color:var(--gold);margin-right:4px;transition:transform .2s}details.diplomas[open] summary .icon{transform:rotate(90deg)}.diploma{border-top:1px solid var(--line);grid-template-columns:minmax(140px,240px) minmax(0,1fr);gap:4px 14px;padding:8px 0;font-size:13px;line-height:1.5;display:grid}@media (width<=640px){.diploma{grid-template-columns:1fr}}dialog#report{background:var(--panel);color:var(--fg);border:1px solid var(--gold);width:min(560px,100vw - 32px);max-height:calc(100vh - 32px);padding:16px;overflow:auto}dialog#report::backdrop{background:var(--backdrop)}.report-form{flex-direction:column;gap:8px;display:flex}.report-form select,.report-form textarea{background:var(--panel2);color:var(--fg);border:1px solid var(--line2);font:inherit;box-sizing:border-box;width:100%;padding:9px 10px;font-size:14px}.report-form select:focus,.report-form textarea:focus{outline:2px solid var(--blue);outline-offset:1px}.report-form .btn.primary{align-self:flex-start}.feedback-bar{border-top:1px dashed var(--line2);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:18px;padding:12px 0 4px;display:flex}.reading-rules .tile{gap:6px}.method-cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.method-cards .panel{gap:6px}.fill-height{box-sizing:border-box;height:100%}.fill-height>.list{flex:1}.fill-height>.list>.item{flex:1 0 auto}.side-column:has(>.fill-height:only-child){display:flex}.side-column>.fill-height:only-child,.main-column>.fill-height:only-child{flex:1}.stage{flex-direction:column;gap:10px;height:auto;padding:34px 12px 12px;display:flex}.level-stack-wrapper{flex:1;min-height:310px;position:relative;overflow:visible}.level-stack-wrapper .level-stack{top:68%}.callouts{z-index:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid;position:relative}.callouts .callout{min-width:0;position:static}.callouts .callout b{font-size:22px}.callouts .label{white-space:normal}@media (width<=600px){.level-stack-wrapper{min-height:250px}.callouts .callout{padding:8px}.callouts .callout b{font-size:18px}}.retraining-steps{flex:1;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-content:stretch;gap:6px;display:grid}.step{background:var(--panel2);grid-template-columns:40px minmax(0,1fr);align-items:start;gap:10px;padding:8px 10px;display:grid}.step b{font-size:14px;display:block}.step .subtle{margin-top:2px;font-size:13px;line-height:1.45;display:block}.step-number{font-family:var(--display);color:var(--gold);line-height:1;font-size:20px!important}.step-link{border:1px dashed var(--gold);color:var(--fg);text-align:left;cursor:pointer;font:inherit;background:0 0}.step-link:hover{background:var(--panel2)}.official-links{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));align-content:stretch;gap:6px;display:grid}.official-link{background:var(--panel2);color:var(--fg);border:1px solid #0000;flex-direction:column;gap:2px;padding:8px 10px;text-decoration:none;display:flex}.official-link:hover{border-color:var(--gold)}.official-link b{font-size:13.5px}.profile-card .small{line-height:1.4}.profile-card .label{white-space:normal}.tile-link{text-align:left;cursor:pointer;font:inherit;color:var(--fg);border:1px solid #0000}.tile-link:hover{border-color:var(--blue)}.tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tag.is-fresh{text-align:left;cursor:pointer;max-width:100%;color:var(--green);border-color:var(--green-line);background:0 0;align-items:center;gap:7px;display:inline-flex}.tag.is-fresh:hover{background:color-mix(in srgb, var(--green-line) 15%, transparent)}.tag.is-fresh i{background:var(--green);width:7px;height:7px;box-shadow:0 0 0 0 color-mix(in srgb, var(--green) 60%, transparent);border-radius:50%;animation:2s infinite pulse}@keyframes pulse{70%{box-shadow:0 0 0 7px #0000}to{box-shadow:0 0 #0000}}@media (prefers-reduced-motion:reduce){.tag.is-fresh i{animation:none}}.reading-rules .big{font-family:var(--display);letter-spacing:.02em;font-size:26px;line-height:1.1}.degree-card .tile b{font-family:var(--display);font-size:22px}.reveal{opacity:0;transition:opacity .5s,transform .5s cubic-bezier(.2,.8,.2,1),border-color .2s,background .2s,box-shadow .2s;transform:translateY(12px)}.reveal.is-revealed{opacity:1;transform:none}.gauge i{transition:width .9s cubic-bezier(.2,.8,.2,1)}button.item,a.item,.profile-card,.mode,.tile-link,.official-link,.step-link{transition:transform .18s,border-color .18s,box-shadow .18s,background .18s}button.item:hover,a.item:hover,.profile-card:hover,.mode:hover,.tile-link:hover,.official-link:hover,.step-link:hover{transform:translateY(-2px);box-shadow:0 6px 18px -8px #e8c17073}.reveal.is-revealed.item:hover,.reveal.is-revealed.profile-card:hover,.reveal.is-revealed.mode:hover,.reveal.is-revealed.official-link:hover{transform:translateY(-2px)}.rank-S{animation:2.8s ease-in-out infinite glowS}@keyframes glowS{0%,to{text-shadow:0 0 #e8c17000}50%{text-shadow:0 0 10px #e8c170bf}}.item[style*="border-color:var(--gold)"]{position:relative;overflow:hidden}.item[style*="border-color:var(--gold)"]:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000,#f4dda62e,#0000);width:40%;animation:3.6s ease-in-out infinite sweep;position:absolute;top:0;bottom:0;left:-60%}@keyframes sweep{0%,55%{left:-60%}to{left:130%}}.rank-gem{transition:transform .3s}.mode:hover .rank-gem{transform:scale(1.12)}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}.rank-S,.item:after{animation:none!important}button.item:hover,a.item:hover,.profile-card:hover,.mode:hover{transform:none}}.trade-item{grid-template-columns:26px 74px minmax(0,1fr) 120px 56px}.trade-item .label{font-size:10px}.select{background:var(--panel2);color:var(--fg);border:1px solid var(--line2);font:inherit;min-height:38px;padding:7px 10px;font-size:14px}.trade-figures .tile b{font-family:var(--display);font-size:24px}@media (width<=640px){.trade-item{grid-template-columns:22px minmax(0,1fr) 52px}.trade-item .label,.trade-item .gauge{display:none}}.trades-banner{text-align:left;cursor:pointer;font:inherit;color:var(--fg);background:var(--panel);border:1px dashed var(--gold);flex-wrap:wrap;align-items:center;gap:12px;width:100%;padding:10px 14px;display:flex}.trades-banner:hover{background:var(--panel2)}.trades-banner span:nth-child(2){min-width:220px;color:var(--fg2);flex:1;font-size:13.5px}.trades-banner b{font-family:var(--display);color:var(--gold);letter-spacing:.04em}.job-line{color:var(--fg2);margin-top:1px;font-size:12.5px;font-style:normal;line-height:1.35;display:block}.job-card{border:1px solid var(--gold);background:linear-gradient(180deg, #e8c17014, transparent 70%), var(--panel);gap:10px}.training-center-item{cursor:default;grid-template-columns:104px minmax(0,1fr) auto}.training-center-item .label{font-size:10px}@media (width<=640px){.training-center-item{grid-template-columns:minmax(0,1fr) auto}.training-center-item .label{grid-column:1/-1}}.reveal{transform-origin:50% 100%;transform:perspective(900px)rotateX(12deg)translateY(16px)}.is-tilting{will-change:transform;background-image:radial-gradient(circle at var(--gx,50%) var(--gy,50%), #f4dda61a, transparent 55%)!important;box-shadow:0 14px 28px -14px var(--shadow-strong), 0 0 0 1px #e8c17040!important;transition:transform 80ms linear,border-color .18s,box-shadow .18s,background .18s!important}.chip{box-shadow:0 3px 0 var(--key-shadow);transition:transform 80ms,box-shadow 80ms,color .15s,border-color .15s,background .15s}.chip:active:not([disabled]){box-shadow:0 1px 0 var(--key-shadow);transform:translateY(2px)}.chip[aria-pressed=true]{box-shadow:0 3px 0 var(--gold-key-shadow), 0 0 14px -4px #e8c17073}.node{box-shadow:0 3px 0 var(--key-shadow);transition:transform .1s,box-shadow .1s,border-color .15s,background .15s}.node:active{box-shadow:0 1px 0 var(--key-shadow);transform:translateY(2px)}.node[aria-pressed=true]{box-shadow:-12px 0 0 -10px var(--gold), 0 3px 0 var(--gold-key-shadow)}.rank-gem{transform-style:preserve-3d}.is-spinning{animation:1.1s cubic-bezier(.2,.8,.2,1) both gemspin}.is-spinning:hover{animation:.9s ease-in-out gemspin2}@keyframes gemspin{0%{opacity:0;transform:perspective(500px)rotateY(-540deg)scale(.4)}60%{opacity:1}to{transform:perspective(500px)rotateY(0)scale(1)}}@keyframes gemspin2{0%{transform:perspective(500px)rotateY(0)}to{transform:perspective(500px)rotateY(360deg)}}@media (prefers-reduced-motion:reduce){.reveal{transform:none}.is-spinning{animation:none}.chip:active,.node:active{transform:none}}.option-group{flex-direction:column;gap:4px;margin-top:6px;display:flex}.option-group-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;margin-bottom:2px;padding-bottom:3px;display:flex}.show-more{color:var(--gold);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:4px 2px;font-size:12.5px;font-weight:600}.show-more:hover{text-decoration:underline}.option-categories .chip{min-height:30px;padding:0 8px;font-size:11.5px}.radar-box{background:radial-gradient(circle,#e8c17014,#0000 70%);flex-direction:column;align-items:center;gap:4px;padding:6px 0;display:flex}.radar-box .label{align-self:flex-start}.radar{width:100%;max-width:300px;height:auto;overflow:visible}.radar .radar-ring{fill:none;stroke:var(--line);stroke-width:1px}.radar .radar-ring.is-outer{stroke:var(--line3)}.radar .radar-axis{stroke:var(--line)}.radar .radar-shape polygon{fill:#e8c17047;stroke:var(--gold);stroke-width:2px;stroke-linejoin:round}.radar .radar-shape circle{fill:var(--gold)}.radar .radar-shape{transform-origin:110px 100px;animation:.9s cubic-bezier(.2,.8,.2,1) both rgrow}.radar text{font-family:var(--display);fill:var(--muted);letter-spacing:.04em;font-size:9.5px}.radar .radar-value{fill:var(--fg);font-size:10.5px;font-weight:700}@keyframes rgrow{0%{opacity:0;transform:scale(0)rotate(-40deg)}to{opacity:1;transform:none}}.skill-tree{scrollbar-width:thin;align-items:stretch;gap:0;margin:2px 0 12px;padding:4px 2px 8px;display:flex;overflow-x:auto}.skill-node{text-align:left;cursor:pointer;background:var(--panel);border:1px solid var(--line);min-width:150px;color:var(--fg);font:inherit;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);flex:1 1 0;grid-template-rows:auto auto;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:0 10px;padding:8px 12px 8px 8px;display:grid}.skill-node .skill-hexagon{width:40px;height:44px;font-family:var(--display);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);background:var(--track);color:var(--muted);grid-row:1/3;justify-content:center;align-items:center;font-size:18px;font-weight:700;display:flex}.skill-node .skill-level{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:10.5px}.skill-node .skill-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.skill-node.is-unlocked{background:linear-gradient(135deg, var(--panel-raised), var(--panel-deep));border-color:#e8c17099}.skill-node.is-unlocked .skill-hexagon{background:var(--gold);color:var(--gold)}.skill-node.is-unlocked .skill-level{color:var(--gold)}.skill-node.is-next{border-color:var(--blue)}.skill-node.is-next .skill-hexagon{background:var(--blue);color:var(--blue);animation:1.6s ease-in-out infinite skpulse}.skill-node.is-unlocked .skill-hexagon,.skill-node.is-next .skill-hexagon{position:relative}.skill-node.is-unlocked .skill-hexagon:before,.skill-node.is-next .skill-hexagon:before{content:"";clip-path:inherit;background:radial-gradient(circle at 50% 35%, var(--panel-raised), var(--panel) 70%);position:absolute;inset:2px}.skill-hexagon>*{position:relative}.skill-node.is-next .skill-level{color:var(--blue)}.skill-node.is-locked{opacity:.55}.skill-node.is-locked .skill-title{color:var(--muted)}@keyframes skpulse{0%,to{filter:drop-shadow(0 0 #7aa2ff00)}50%{filter:drop-shadow(0 0 8px #7aa2ffe6)}}.skill-edge{background:var(--line);flex:0 0 26px;align-self:center;height:4px;position:relative}.skill-edge.is-on{background:linear-gradient(90deg, var(--gold), var(--gold-hi), var(--gold));background-size:200% 100%;animation:1.4s linear infinite flow;box-shadow:0 0 10px #e8c17099}@keyframes flow{0%{background-position:200% 0}to{background-position:0 0}}.column.is-flashing{animation:1s ease-out colflash}@keyframes colflash{0%{box-shadow:0 0 0 2px var(--gold)}to{box-shadow:0 0 #0000}}@media (width<=640px){.skill-tree{grid-template-columns:1fr 1fr;gap:6px;display:grid;overflow:visible}.skill-edge{display:none}.skill-node{grid-template-columns:34px minmax(0,1fr);min-width:0;padding:6px 8px 6px 6px}.skill-node .skill-hexagon{width:32px;height:36px;font-size:15px}}.guide{z-index:60;align-items:flex-end;gap:8px;max-width:min(400px,100vw - 32px);animation:.35s cubic-bezier(.2,.8,.2,1) gin;display:flex;position:fixed;bottom:16px;right:16px}@keyframes gin{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}.guide-face{width:64px;height:64px;filter:drop-shadow(0 4px 10px var(--shadow));flex:none}.nova-robot{width:100%;height:100%;overflow:visible}.nova-robot .robot-head{fill:var(--panel-raised);stroke:var(--gold);stroke-width:2px}.nova-robot .robot-visor{fill:var(--robot-face);stroke:var(--line3)}.nova-robot .robot-eyes ellipse{fill:var(--cyan);transform-origin:50%;transform-box:fill-box;animation:4.2s infinite blink}.nova-robot .robot-mouth{fill:none;stroke:var(--cyan);stroke-width:2px;stroke-linecap:round}.nova-robot .robot-antenna{stroke:var(--gold);stroke-width:2px}.nova-robot .robot-antenna-tip{fill:var(--gold);animation:1.6s ease-in-out infinite tipg}.nova-robot .robot-body{fill:var(--panel-deep);stroke:var(--line3)}.nova-robot .robot-scarf{fill:none;stroke:var(--gold);stroke-width:3px;stroke-linecap:round}.nova-robot .robot-core{fill:var(--cyan)}.guide .nova-robot{animation:2.6s ease-in-out infinite bob}@keyframes blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}@keyframes tipg{0%,to{opacity:.6}50%{opacity:1}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.guide-box{background:linear-gradient(180deg, var(--panel-deep), var(--panel-deep));border:1px solid var(--gold);box-shadow:0 18px 40px -12px var(--shadow-strong), inset 0 0 0 1px #e8c1701f;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));min-width:240px;padding:14px 14px 10px;position:relative}.guide-name{background:var(--gold);color:var(--ink);font-family:var(--display);letter-spacing:.14em;padding:2px 10px;font-size:11px;font-weight:700;position:absolute;top:-1px;left:12px;transform:translateY(-55%)}.guide .guide-name{margin:-14px 0 6px -14px;display:inline-block;position:relative;top:0;left:0;transform:none}.guide-text{color:var(--fg);min-height:42px;margin:0;font-size:14px;line-height:1.5}.guide-nav{justify-content:space-between;align-items:center;gap:10px;margin-top:8px;display:flex}.guide-count{font-family:var(--display);color:var(--muted);font-size:11px}.guide-next{color:var(--gold);font-family:var(--display);letter-spacing:.06em;cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:12.5px;font-weight:700;animation:1.2s ease-in-out infinite nudge}@keyframes nudge{0%,to{transform:translate(0)}50%{transform:translate(3px)}}.guide-close{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:2px 4px;font-size:20px;line-height:1;position:absolute;top:4px;right:8px}.guide-close:hover{color:var(--fg)}.guide.is-minimized{max-width:none}.guide-button{background:var(--panel-deep);border:1px solid var(--gold);cursor:pointer;width:58px;height:58px;box-shadow:0 10px 24px -8px var(--shadow-strong);border-radius:50%;padding:6px;position:relative}.guide-teaser{white-space:nowrap;background:var(--panel-deep);border:1px solid var(--gold);color:var(--fg);pointer-events:none;padding:6px 10px;font-size:12.5px;font-weight:600;animation:5s forwards tease;position:absolute;bottom:14px;right:66px}@keyframes tease{0%{opacity:0;transform:translate(8px)}8%,80%{opacity:1;transform:none}to{opacity:0}}.guide.is-minimized{position:fixed}.guide-dot{background:var(--cyan);width:10px;height:10px;box-shadow:0 0 8px var(--cyan);border-radius:50%;position:absolute;top:4px;right:4px}@media (width<=640px){.guide{max-width:none;bottom:8px;left:8px;right:8px}.guide.is-minimized{left:auto}.guide-face{width:48px;height:48px}.guide-box{flex:1;min-width:0}.guide-text{font-size:13.5px}}@media (prefers-reduced-motion:reduce){.radar .radar-shape,.skill-edge.is-on,.skill-node.is-next .skill-hexagon,.guide,.guide .nova-robot,.nova-robot .robot-eyes ellipse,.nova-robot .robot-antenna-tip,.guide-next{animation:none}}body{padding-bottom:90px}.training-center-list{flex-direction:column;gap:3px;margin:6px 0 0;padding:0;list-style:none;display:flex}.training-center-list li{color:var(--fg2);justify-content:space-between;gap:10px;font-size:12.5px;line-height:1.3;display:flex}.training-center-list li span{min-width:0}.training-center-list li b{font-family:var(--display);color:var(--fg);flex:none}.training-center-list .show-more{padding:0;font-size:12px}#idform textarea{box-sizing:border-box;background:var(--panel2);width:100%;color:var(--fg);border:1px solid var(--line2);font:inherit;resize:vertical;min-height:96px;padding:10px;font-size:14px}#idform textarea:focus{outline:2px solid var(--gold);outline-offset:1px}.idea-count{text-align:right;margin-top:-4px}.idea-list{flex-direction:column;gap:8px;display:flex}.idea{background:var(--panel);border:1px solid var(--line);grid-template-columns:56px minmax(0,1fr);align-items:start;gap:12px;padding:10px 12px;display:grid}.idea.is-hot{box-shadow:inset 3px 0 0 var(--gold);border-color:#e8c1708c}.vote-button{background:var(--track);border:1px solid var(--line2);width:52px;height:56px;color:var(--fg2);cursor:pointer;font:inherit;box-shadow:0 3px 0 var(--key-shadow);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);flex-direction:column;justify-content:center;align-items:center;gap:0;transition:transform 80ms,box-shadow 80ms,background .15s;display:flex}.vote-button .icon{width:18px;height:18px}.vote-button[aria-pressed=true] .icon{fill:currentColor}.vote-button b{font-family:var(--display);font-size:18px;line-height:1.1}.vote-button:hover:not([disabled]){border-color:var(--gold);color:var(--gold)}.vote-button:active:not([disabled]){box-shadow:0 1px 0 var(--key-shadow);transform:translateY(2px)}.vote-button[aria-pressed=true],.vote-button[aria-pressed=true]:hover:not([disabled]){background:var(--gold);color:var(--on-gold);border-color:var(--gold);box-shadow:0 3px 0 var(--gold-key-shadow)}.vote-button[disabled]{cursor:default;opacity:.75}.idea-body p{overflow-wrap:anywhere;margin:0 0 6px;font-size:14.5px;line-height:1.5}.idea-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.idea-status.prevu{color:var(--blue)}.idea-status.encours{color:var(--gold)}.idea-status.fait{color:var(--green-soft)}.idea-status-select{min-height:28px;font-size:12px}.idea-empty{border:1px dashed var(--line2);text-align:center;flex-direction:column;gap:4px;padding:22px;display:flex}a.item,a.profile-card,a.mode,a.tile,a.node,a.step,a.trades-banner,a.chip,a.tag,a.show-more,a.logo,a.tile-link{color:inherit;text-decoration:none}a.btn{text-decoration:none}a.btn.ghost{color:var(--fg)}a.btn.primary{color:var(--primary-fg)}a.linkbtn{color:var(--fg)}.nav a{text-decoration:none;display:inline-block}details.panel>summary{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:12px;list-style:none;display:flex}details.panel>summary::-webkit-details-marker{display:none}details.panel>summary:before{content:"+";font-family:var(--display);color:var(--gold);width:12px;font-weight:700}details.panel[open]>summary:before{content:"−"}details.panel[open]>summary{margin-bottom:10px}
