:root{--teal:#1fa3a6;--teal-700:#157578;--teal-50:#e6f5f5;--blue:#3e5e98;--blue-700:#2e4775;--blue-50:#ecf0f8;--ink:#1a1623;--soft:#4a4458;--muted:#7a7488;--surface:#fff;--alt:#f6f7f9;--border:#e4e2ea;--radius:16px}*{box-sizing:border-box}body{color:var(--ink);background:#fff;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}a{color:var(--blue);text-decoration:none}.shell{max-width:960px;margin:0 auto;padding:0 20px}header.bar{border-bottom:1px solid var(--border);z-index:20;background:#fff;position:sticky;top:0}.bar-in{align-items:center;gap:16px;height:64px;display:flex}.brand{letter-spacing:-.02em;color:var(--ink);font-size:17px;font-weight:800}.bar nav{flex-wrap:wrap;align-items:center;gap:6px;margin-left:auto;display:flex}.bar nav a{color:var(--soft);border-radius:999px;padding:8px 12px;font-size:14px;font-weight:600}.bar nav a:hover{background:var(--alt)}.card{border:1px solid var(--border);border-radius:var(--radius);background:#fff;margin-bottom:18px;padding:24px}h1{letter-spacing:-.02em;margin:0 0 8px;font-size:clamp(24px,4vw,34px);line-height:1.15}h2{margin:0 0 14px;font-size:20px}h3{margin:0 0 10px;font-size:16px}label{color:var(--soft);margin-bottom:14px;font-size:14px;font-weight:600;display:block}input,select{border:1px solid var(--border);background:#fff;border-radius:12px;width:100%;margin-top:6px;padding:12px 14px;font-family:inherit;font-size:16px}input:focus,select:focus{outline:2px solid var(--teal);border-color:#0000}.btn{cursor:pointer;background:var(--blue);color:#fff;border:1.5px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:13px 22px;font-family:inherit;font-size:15px;font-weight:700;display:inline-flex}.btn:hover{background:var(--blue-700)}.btn--ghost{color:var(--ink);border-color:var(--border);background:#fff}.btn--ghost:hover,.btn--ghost:focus-visible{background:var(--blue-700);color:#fff;border-color:var(--blue-700)}.bar nav a.btn--ghost{color:var(--ink)}.bar nav a.btn--ghost:hover{background:var(--blue-700);color:#fff;border-color:var(--blue-700)}.btn--sm{padding:8px 14px;font-size:13px}.btn--danger{background:#b3261e}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.grid{gap:14px;display:grid}@media (min-width:640px){.grid-2{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:1fr 1fr 1fr}}.pts{letter-spacing:-.02em;font-size:52px;font-weight:800;line-height:1}.chip{background:var(--teal-50);color:var(--teal-700);border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:12.5px;font-weight:700;display:inline-flex}.chip--warn{color:#8a5300;background:#fff4e5}.chip--bad{color:#b3261e;background:#fdecea}.chip--ok{background:var(--teal-50);color:var(--teal-700)}.maju{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.stage{text-align:center;border:1px solid var(--border);background:var(--alt);border-radius:12px;flex:1;min-width:88px;padding:14px 8px}.stage.on{background:var(--teal);border-color:var(--teal);color:#fff}.stage b{font-size:22px;line-height:1;display:block}.stage span{opacity:.85;font-size:11.5px}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--border);padding:10px 8px}th{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:12px}.muted{color:var(--muted);font-size:14px}.notice{background:var(--blue-50);border:1px solid #cdd7ea;border-radius:12px;margin-bottom:16px;padding:14px;font-size:14px}.notice--warn{background:#fff4e5;border-color:#f0d6a8}.code{letter-spacing:.28em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:26px;font-weight:700}.code-cell{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:inherit;letter-spacing:normal;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:min(38ch,100%);font-weight:500;display:inline-block;overflow:hidden}a.code-cell{color:var(--blue,#3e5e98);text-decoration:underline}footer.foot{color:var(--muted);text-align:center;padding:28px 0;font-size:13px}.stage.pend{background:#fff4e5;border-color:#f0d6a8}.majurow{border:1px solid var(--border);background:var(--alt);border-radius:14px;align-items:flex-start;gap:14px;padding:16px;display:flex}.majurow.done{background:var(--teal-50);border-color:#bfe4e4}.majubadge{border:1px solid var(--border);width:40px;height:40px;color:var(--muted);background:#fff;border-radius:12px;flex-shrink:0;place-items:center;font-size:19px;font-weight:800;display:grid}.majubadge.on{background:var(--teal);border-color:var(--teal);color:#fff}textarea:focus{outline:2px solid var(--teal);border-color:#0000}.brand{align-items:center;gap:14px;display:flex}.brand-logo{width:auto;height:26px;display:block}.brand-sep{background:var(--border);width:1px;height:28px;display:inline-block}@media (max-width:520px){.brand-logo{height:22px}.brand-sep{height:24px}.bar-in{gap:10px}}.majurow{text-align:left;cursor:pointer;width:100%;font:inherit;background:#fff;transition:box-shadow .15s,border-color .15s,transform 50ms}.majurow:hover{border-color:var(--teal);box-shadow:0 6px 20px #1fa3a61f}.majurow:active{transform:translateY(1px)}.majurow:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.majurow .open-hint{color:var(--muted);white-space:nowrap;align-self:center;align-items:center;gap:6px;margin-left:auto;font-size:13px;display:inline-flex}.majurow.done .open-hint{color:var(--teal-700)}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:60;background:#14121e8c;justify-content:center;align-items:flex-start;padding:5vh 16px 24px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:#fff;border-radius:20px;width:100%;max-width:560px;animation:.18s modalIn;box-shadow:0 24px 70px #0000004d}@keyframes modalIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.modal-head{align-items:flex-start;gap:12px;padding:22px 22px 0;display:flex}.modal-badge{background:var(--blue-50);width:46px;height:46px;color:var(--blue-700);border:1px solid var(--border);border-radius:14px;flex-shrink:0;place-items:center;font-size:20px;font-weight:800;display:grid}.modal-badge.on{background:var(--teal);border-color:var(--teal);color:#fff}.modal-title{letter-spacing:-.01em;margin:0;font-size:20px}.modal-close{cursor:pointer;color:var(--muted);background:0 0;border:none;margin-left:auto;padding:0 4px;font-size:26px;line-height:1}.modal-close:hover{color:var(--ink)}.modal-body{padding:16px 22px 24px}.modal-body label{margin:12px 0 0;font-size:14px;font-weight:600;display:block}.modal-body input,.modal-body textarea,.modal-body select{border:1px solid var(--border);border-radius:12px;width:100%;margin-top:6px;padding:12px 14px;font-family:inherit;font-size:16px}.modal-body .btn{margin-top:16px}.modal-why{background:var(--alt);border-radius:12px;margin:14px 0 0;padding:12px 14px;font-size:14px}body.modal-open{overflow:hidden}.badges{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:14px;margin-top:8px;display:grid}.badge{text-align:center;border:1px solid var(--border);color:var(--ink);border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:14px 10px;text-decoration:none;transition:box-shadow .15s,border-color .15s;display:flex}.badge:hover{border-color:var(--teal);box-shadow:0 6px 18px #1fa3a61f}.badge img{object-fit:contain;width:76px;height:76px}.badge-ph{background:var(--alt);border-radius:12px;width:76px;height:76px}.badge-name{font-size:12.5px;font-weight:700;line-height:1.2}.badge-issuer{color:var(--muted);font-size:11px}.skills{flex-wrap:wrap;gap:8px;display:flex}.skilltag{background:var(--teal-50);color:var(--teal-700);border:1px solid #bfe4e4;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600}.rewards{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin-top:8px;display:grid}.reward{border:1px solid var(--border);border-radius:14px;grid-template-columns:auto 1fr;grid-template-areas:"art body""actions actions";align-items:start;gap:14px;padding:16px;display:grid}.reward__art{grid-area:art}.reward__body{grid-area:body;min-width:0}.reward__name{font-size:15px;line-height:1.3;display:block}.reward__actions{grid-area:actions;justify-content:flex-end;align-items:center;gap:8px;margin-top:2px;display:flex}.reward .btn{white-space:nowrap}.dot-live{background:var(--teal);vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:2px;animation:2s infinite pulse;display:inline-block;box-shadow:0 0 #1fa3a680}@keyframes pulse{0%{box-shadow:0 0 #1fa3a680}70%{box-shadow:0 0 0 6px #1fa3a600}to{box-shadow:0 0 #1fa3a600}}.badge-verified{color:var(--teal-700);font-size:10.5px;font-weight:700}.req{color:#b3261e;margin-left:1px;font-weight:700}.pathways{grid-template-columns:1fr 1fr;gap:12px;margin:8px 0 12px;display:grid}@media (max-width:560px){.pathways{grid-template-columns:1fr}}.pathway{border:1px solid var(--border);background:#fff;border-radius:14px;align-items:flex-start;gap:12px;padding:16px;display:flex}.pathway.on{border-color:var(--teal);background:var(--teal-50);box-shadow:0 4px 14px #1fa3a61f}.pathway-mono{background:var(--blue-50);width:44px;height:44px;color:var(--blue-700);border:1px solid var(--border);border-radius:12px;flex-shrink:0;place-items:center;font-size:15px;font-weight:800;display:grid}.pathway.on .pathway-mono{background:var(--teal);border-color:var(--teal);color:#fff}.kpis{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:14px;display:grid}.kpi{border:1px solid var(--border);background:var(--alt);border-radius:12px;padding:14px 12px}.kpi b{letter-spacing:-.02em;font-size:26px;line-height:1;display:block}.kpi .muted{margin-top:4px;font-size:12.5px;display:block}.barsh{flex-direction:column;gap:9px;display:flex}.barsh-row{grid-template-columns:120px 1fr 54px;align-items:center;gap:10px;display:grid}.barsh-label{color:var(--soft);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.barsh-track{background:var(--alt);border-radius:999px;height:16px;overflow:hidden}.barsh-fill{border-radius:999px;min-width:2px;height:100%;display:block}.barsh-val{text-align:right;font-size:13px;font-weight:700}.cols{align-items:flex-end;gap:6px;height:150px;padding-top:16px;display:flex}.cols-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;height:100%;display:flex}.cols-num{color:var(--soft);font-size:11px;font-weight:700}.cols-bar{background:var(--teal);border-radius:6px 6px 0 0;width:70%;max-width:34px;min-height:2px;display:block}.cols-x{color:var(--muted);white-space:nowrap;font-size:10.5px}@media (max-width:560px){.barsh-row{grid-template-columns:90px 1fr 44px}.cols-x{font-size:9px}}.dt-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.dt-search{border:1px solid var(--border);border-radius:10px;flex:1;width:auto;min-width:160px;max-width:320px;padding:8px 12px;font-size:14px}.dt-count{font-size:13px}.dt-scroll{border:1px solid var(--border);border-radius:12px;overflow-x:auto}table.dt{border-collapse:collapse;width:100%;margin:0;font-size:14px}table.dt th,table.dt td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:9px 12px}table.dt th{background:var(--alt);font-size:12.5px;position:sticky;top:0}table.dt th.num,table.dt td.num{text-align:right}table.dt tbody tr:hover{background:var(--alt)}.dt-foot{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.barsh-click{text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:none;padding:2px 0}.barsh-click:hover .barsh-fill{filter:brightness(1.08)}.barsh-click:hover .barsh-label{color:var(--ink)}.cols-click{cursor:pointer;font:inherit;background:0 0;border:none}.cols-click:hover .cols-bar{filter:brightness(1.1)}.dotfield{z-index:0;pointer-events:none;position:fixed;inset:0}header.bar{position:sticky}main.shell,.foot,.site-footer{z-index:1;position:relative}body.auth{background:#fff}body.auth header.bar,body.auth .site-footer{display:none!important}.auth{z-index:30;background:0 0;flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.auth-bar{flex:none;justify-content:space-between;align-items:center;gap:16px;padding:18px 32px;display:flex}.auth-logo{align-items:center;gap:12px;display:flex}.auth-logo img{width:auto;height:28px;display:block}.auth-sep{background:var(--border);width:1px;height:28px;display:inline-block}.auth-bar-right{align-items:center;gap:20px;display:flex}.auth-back{color:var(--ink);font-size:15px;font-weight:600}.auth-left .auth-back{align-self:flex-start;margin-bottom:16px}.auth-lang{color:var(--teal-700);font-weight:800}.auth-body{flex:1 0 auto;grid-template-columns:1fr 1fr;display:grid}.auth-left{flex-direction:column;justify-content:center;width:100%;max-width:600px;margin:0 auto;padding:20px 5vw 48px;display:flex}.auth-content h1{letter-spacing:-.02em;margin:0 0 6px;font-size:30px}.auth-content .card{background:0 0;border:none;margin:0;padding:0}.auth-content .btn{border-radius:999px;width:100%;margin-top:4px;padding:13px 18px}.auth-content input,.auth-content select,.auth-content textarea{border-radius:12px}.auth-right{padding:0 24px 24px;display:flex}.auth-hero{background:linear-gradient(155deg,var(--teal-50) 0%,var(--blue-50) 55%,#fff 100%);border-radius:28px;flex:1;align-items:center;padding:7% 6%;display:flex}.auth-hero h2{color:var(--ink);letter-spacing:-.025em;margin:0;font-size:clamp(34px,4.4vw,60px);font-weight:800;line-height:1.03}@media (max-width:860px){.auth-body{grid-template-columns:1fr}.auth-right{display:none}.auth-left{justify-content:flex-start;max-width:460px;padding-top:8px}}.langtoggle{border:1px solid var(--border);background:var(--alt);border-radius:999px;align-items:center;gap:2px;padding:3px;display:inline-flex}.langtoggle .langopt{color:var(--soft);background:0 0;border-radius:999px;padding:6px 11px;font-size:13px;font-weight:700;line-height:1}.langtoggle .langopt:hover{color:var(--ink);background:0 0}.langtoggle .langopt.on,.langtoggle .langopt.on:hover{background:var(--teal);color:#fff}.site-footer{color:#fff;background:#1a1f26;border-top:1px solid #ffffff1a;flex-direction:column;align-items:flex-start;gap:0;width:100%;padding:60px 80px;display:flex}.site-footer a{color:inherit;text-decoration:none}.footer-row-1{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:28px;width:100%;padding-bottom:32px;display:flex}.footer-row-1-left{flex-direction:column;align-items:flex-start;gap:28px;display:flex}.footer-row-1-right{flex-direction:column;align-items:flex-end;gap:24px;display:flex}.footer-logo{width:auto;height:34px;display:block}.footer-nav{flex-wrap:wrap;gap:24px;display:flex}.footer-nav a{color:#fff;white-space:nowrap;font-size:15px;font-weight:500;transition:color .2s}.footer-nav a:hover{color:var(--teal)}.footer-contact-btn{color:#fff;white-space:nowrap;background:0 0;border:1.5px solid #fff;border-radius:999px;align-items:center;padding:10px 24px;font-size:14px;font-weight:600;transition:background .2s,transform .15s;display:inline-flex}.footer-contact-btn:hover{background:#ffffff1f;transform:translateY(-1px)}.footer-social{align-items:center;gap:20px;display:flex}.footer-social a{color:#fff;opacity:.92;justify-content:center;align-items:center;transition:opacity .2s,transform .15s;display:inline-flex}.footer-social a:hover{opacity:1;transform:translateY(-2px)}.footer-separator{background:#ffffff24;width:100%;height:1px}.footer-grid{grid-template-columns:1fr 1.6fr 1fr 1fr;gap:48px;width:100%;padding:32px 0;display:grid}.fcol h5{color:#fff;margin:0 0 18px;font-size:15px;font-weight:700}.fcol a{color:#ffffffc7;margin-bottom:12px;font-size:14px;line-height:1.45;transition:color .2s;display:block}.fcol a:hover{color:#fff}.fmarket{grid-template-columns:1fr 1.2fr;gap:32px;display:grid}.fmarket>div{flex-direction:column;display:flex}.fsublabel{letter-spacing:.18em;text-transform:uppercase;color:#ffffff8c;margin-bottom:14px;font-size:10px;font-weight:600;display:block}.fapps{flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 12px;display:flex}.fapps a{margin-bottom:0}.fapp-badge{align-items:center;height:40px;transition:opacity .2s,transform .15s;display:inline-flex}.fapp-badge img{width:auto;height:100%;display:block}.fapp-badge:hover{opacity:.85;transform:translateY(-1px)}.fwaiting{color:#ffffff9e;margin:4px 0 12px;font-size:12px;line-height:1.45}.fadd-service{color:#fff;background:#ffffff1a;border:1px solid #fff3;border-radius:999px;align-self:flex-start;padding:10px 22px;font-size:13px;font-weight:600;transition:background .2s;display:inline-flex}.fadd-service:hover{background:#ffffff2e}.footer-bottom{justify-content:space-between;align-items:center;width:100%;padding-top:28px;display:flex}.footer-bottom .fb-left{color:#fff9;flex-wrap:wrap;align-items:center;gap:20px;font-size:13px;display:flex}.footer-bottom .fb-left a{color:#fff9;transition:color .2s}.footer-bottom .fb-left a:hover{color:#fff}@media (max-width:1100px){.site-footer{padding:56px 40px}.footer-grid{grid-template-columns:1fr 1fr;gap:40px 32px}.fcol-marketplace{grid-column:1/-1}}@media (max-width:640px){.site-footer{padding:48px 20px 28px}.footer-grid{grid-template-columns:1fr;gap:32px}.fmarket{grid-template-columns:1fr;gap:24px}.footer-row-1{flex-direction:column;align-items:flex-start;gap:20px}.footer-row-1-right{align-items:flex-start}.footer-nav{gap:14px 20px}.footer-social{gap:16px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:12px}}.nav-toggle-cb,.nav-toggle{display:none}@media (max-width:820px){.bar-in{flex-wrap:wrap;position:relative}.nav-toggle{cursor:pointer;flex-direction:column;justify-content:center;gap:5px;margin-left:auto;padding:10px;display:inline-flex}.nav-toggle span{background:var(--ink);border-radius:2px;width:22px;height:2px;transition:all .2s}.bar nav{border-bottom:1px solid var(--border);background:#fff;flex-direction:column;align-items:stretch;gap:2px;margin:0;padding:10px 20px 16px;display:none;position:absolute;top:64px;left:-20px;right:-20px;box-shadow:0 12px 28px #0000001a}.nav-toggle-cb:checked~nav{display:flex}.bar nav a{width:100%;padding:11px 8px}.bar nav a.btn--ghost{align-self:flex-start;width:auto;margin-bottom:4px}.bar nav .langtoggle{align-self:flex-start;margin-top:6px}}@media (max-width:520px){.brand-logo{height:22px}.brand-sep{height:24px}}.picker{z-index:30;border:1px solid var(--border);background:#fff;border-radius:12px;max-height:280px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow:auto;box-shadow:0 12px 30px #0000001f}.picker-item{text-align:left;border:0;border-bottom:1px solid var(--border);cursor:pointer;background:0 0;width:100%;padding:10px 14px;font-size:14px;display:block}.picker-item:last-child{border-bottom:0}.picker-item:hover{background:var(--wash,#f5f7f8)}.kpi--click{cursor:pointer;text-align:left;font:inherit;border:1px solid var(--border);transition:box-shadow .15s,transform .15s,border-color .15s}.kpi--click:hover{border-color:var(--teal-700,#1fa3a6);transform:translateY(-1px);box-shadow:0 8px 20px #00000014}.tabs{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.tab{border:1px solid var(--border);color:var(--dta-text-soft,#5b5766);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-size:14px;font-weight:600;transition:all .15s;display:inline-flex}.tab:hover{border-color:var(--teal-700,#1fa3a6)}.tab--on{background:var(--teal-700,#1fa3a6);border-color:var(--teal-700,#1fa3a6);color:#fff}.tab-count{background:#00000014;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:12px;font-weight:700;display:inline-flex}.tab--on .tab-count{background:#ffffff40}.stage-click{appearance:none;font:inherit;cursor:pointer;transition:transform .12s,box-shadow .12s}.stage-click:hover{transform:translateY(-2px);box-shadow:0 8px 18px #0000001a}.stage-click:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.empty{text-align:center;color:var(--dta-text-soft,#5b5766);flex-direction:column;align-items:center;gap:8px;padding:40px 20px;display:flex}.empty svg{color:var(--teal,#1fa3a6);opacity:.85}.empty b{color:var(--ink,#1a1623);font-size:16px}.empty p{max-width:360px;margin:0;font-size:13.5px}.empty .btn{margin-top:6px}.vbar{background:#00000014;border-radius:999px;height:6px;display:block;overflow:hidden}.vbar>span{background:var(--teal,#1fa3a6);border-radius:999px;height:100%;transition:width .3s;display:block}
