:root{--bg:#0b1320;--panel:#111a28;--panel-2:#16202f;--line:#243246;--ink:#e8edf7;--ink-dim:#a9b3c7;--ink-faint:#6b7689;--teal:#1DBA9C;--teal-deep:#159d86;--amber:#1DBA9C;--pass:#1DBA9C;--fail:#f85149;--media:#e9b44c;--mono:ui-monospace,"JetBrains Mono",Menlo,Consolas,monospace;--sans:"Manrope",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--display:"Sora","Manrope",sans-serif}*{box-sizing:border-box}body,html{height:100%;margin:0}html{scrollbar-gutter:stable}:root{--control-h:40px;--form-gap:12px}body{background:var(--bg);color:var(--ink);font-family:var(--sans);overflow:hidden;scrollbar-gutter:stable}.app{height:100vh;display:flex;flex-direction:column}body.dragging{-webkit-user-select:none;-moz-user-select:none;user-select:none}.loading{padding:30px;color:var(--ink-dim);font-family:var(--mono)}.topnav{display:flex;align-items:center;gap:14px;padding:10px 18px;background:var(--panel);border-bottom:1px solid var(--line);flex-shrink:0}.brand{font-family:var(--mono);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim)}.brand b{color:var(--ink);font-weight:600}.spacer{flex:1 1}.who{font-family:var(--mono);font-size:12px;color:var(--ink-dim)}.topnav form{display:inline}.auth-wrap{flex:1 1;display:flex;align-items:center;justify-content:center;padding:24px}.auth-card{width:100%;max-width:380px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:28px}.auth-card h1{margin:0 0 8px;font-size:22px}.auth-card .muted{color:var(--ink-dim);font-size:14px;margin:0 0 18px}.auth-card form{display:flex;flex-direction:column;gap:var(--form-gap)}.auth-card input{font-family:var(--mono);font-size:14px;padding:0 12px;height:var(--control-h);border-radius:8px;border:1px solid var(--line);background:var(--panel-2);color:var(--ink)}.auth-card input:focus{outline:2px solid var(--amber)}.btn{font-family:var(--mono);font-size:14px;line-height:1;border-radius:6px;border:1px solid var(--line);background:var(--panel-2);padding:0 14px;height:var(--control-h);cursor:pointer;display:inline-flex;align-items:center;gap:6px;justify-content:center}.btn,.btn:hover{color:var(--ink)}.btn:hover{border-color:var(--ink-faint)}.btn.primary{background:linear-gradient(135deg,var(--teal),var(--teal-deep));color:#06281c;border-color:var(--teal);font-weight:700}.btn.primary:hover{filter:brightness(1.08)}.btn:disabled,.btn:disabled:hover{opacity:.45;cursor:not-allowed;filter:none;border-color:var(--line)}.ide{flex:1 1;display:flex;flex-direction:column;min-height:0}.toolbar{display:flex;align-items:center;gap:14px;padding:8px 18px;background:var(--panel);border-bottom:1px solid var(--line);flex-shrink:0}select{font-family:var(--mono);font-size:13px;border-radius:6px;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);padding:0 12px;height:var(--control-h);cursor:pointer}.toolbar .btn{min-width:36px}.timer{font-family:var(--mono);font-size:14px;font-weight:600;padding:0 12px;height:var(--control-h);display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:6px;min-width:84px;text-align:center;background:var(--panel-2)}.timer.danger{color:var(--media);border-color:color-mix(in srgb,var(--media) 50%,var(--line))}.timer.over{color:var(--fail);border-color:color-mix(in srgb,var(--fail) 55%,var(--line))}main{flex:1 1;display:flex;min-height:0}.left{min-width:220px;overflow-y:auto;padding:24px 28px;border-right:1px solid var(--line);background:var(--panel);position:relative}.right{flex:1 1;display:flex;flex-direction:column;min-width:0}.editor-wrap{flex:1 1;min-height:200px;overflow:hidden}.cm-editor{height:100%}.reto-head{display:flex;align-items:center;gap:12px;margin-bottom:4px}.reto-head h1{font-size:21px;margin:0;line-height:1.2}.badge{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;padding:3px 9px;border-radius:20px;border:1px solid var(--line);white-space:nowrap}.badge.facil{color:var(--pass);border-color:color-mix(in srgb,var(--pass) 40%,var(--line))}.badge.media{color:var(--media);border-color:color-mix(in srgb,var(--media) 40%,var(--line))}.badge.dificil{color:var(--fail);border-color:color-mix(in srgb,var(--fail) 40%,var(--line))}.statement{color:var(--ink-dim);font-size:14px;line-height:1.65}.statement h2{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink);margin:24px 0 8px}.statement p{margin:8px 0}.statement code,.statement strong{color:var(--ink)}.statement code{font-family:var(--mono);font-size:12.5px;background:var(--panel-2);border:1px solid var(--line);border-radius:5px;padding:1px 6px}.statement ul{padding-left:20px}.statement li{margin:3px 0}table.samples{border-collapse:collapse;width:100%;margin:8px 0;font-family:var(--mono);font-size:12px}table.samples td,table.samples th{border:1px solid var(--line);padding:6px 9px;text-align:left}table.samples th{color:var(--ink);background:var(--panel-2)}table.samples td{color:var(--ink-dim)}.hidden-note{font-size:12px;color:var(--ink-faint);font-style:italic;margin-top:6px}.panel-toggle{background:none;border:1px solid var(--line);border-radius:6px;color:var(--ink-dim);cursor:pointer;font-size:15px;line-height:1;padding:3px 9px;font-family:var(--mono);transition:transform .15s}.panel-toggle:hover{color:var(--ink);border-color:var(--ink-faint)}.reto-head .panel-toggle{transform:rotate(180deg)}.console-head .panel-toggle{transform:rotate(90deg)}.console-head .panel-toggle.collapsed{transform:rotate(-90deg)}.rail{display:none}.left.collapsed{width:38px!important;min-width:38px;padding:0;overflow:hidden}.left.collapsed .reto-head,.left.collapsed .statement{display:none}.left.collapsed .rail{display:flex;align-items:center;justify-content:center;height:100%;width:100%;writing-mode:vertical-rl;background:var(--panel);border:none;color:var(--ink-dim);cursor:pointer;font-family:var(--mono);font-size:12px;letter-spacing:.12em}.left.collapsed .rail:hover{color:var(--ink)}.divider-x{width:6px;cursor:col-resize}.divider-x,.divider-y{flex-shrink:0;background:var(--line);touch-action:none}.divider-y{height:6px;cursor:row-resize}.divider-x:hover,.divider-y:hover{background:var(--ink-faint)}.console{flex-shrink:0;border-top:1px solid var(--line);background:var(--panel);display:flex;flex-direction:column}.console.collapsed{height:auto!important}.console-head{display:flex;align-items:center;gap:14px;padding:8px 16px;border-bottom:1px solid var(--line);color:var(--ink-dim)}.console-head,.tab{font-family:var(--mono);font-size:12px}.tab{background:none;border:none;border-bottom:2px solid transparent;border-radius:0;padding:4px 2px;color:var(--ink-faint);cursor:pointer}.tab.active{color:var(--ink);border-bottom-color:var(--amber)}.pill{font-family:var(--mono);font-size:12px;padding:2px 9px;border-radius:20px;border:1px solid var(--line)}.pill.ok{color:var(--pass);border-color:color-mix(in srgb,var(--pass) 40%,var(--line))}.pill.no{color:var(--fail);border-color:color-mix(in srgb,var(--fail) 40%,var(--line))}.results{flex:1 1;overflow-y:auto;padding:6px 0}.case{display:grid;grid-template-columns:22px 1fr;grid-gap:10px;gap:10px;align-items:baseline;padding:7px 16px;font-family:var(--mono);font-size:12.5px;border-bottom:1px solid color-mix(in srgb,var(--line) 50%,transparent)}.case .mark{font-weight:700}.case.pass .mark{color:var(--pass)}.case.fail .mark{color:var(--fail)}.case .name{color:var(--ink)}.case .detail{color:var(--ink-faint);font-size:11.5px;grid-column:2/-1}.case .detail b{color:var(--ink-dim);font-weight:400}.stdout{flex:1 1;overflow:auto;margin:0;padding:10px 16px;font-family:var(--mono);font-size:12px;color:var(--ink-dim);white-space:pre-wrap}@media (max-width:760px){.divider-x,.left{display:none}}.auth-card.landing{max-width:440px;text-align:left}.auth-card .kicker{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--amber);margin-bottom:8px}.admin{flex:1 1;overflow:auto;padding:32px 40px}.admin-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.admin-head h1{margin:0;font-size:24px}.admin h2{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-dim);margin:28px 0 8px}table.grid{border-collapse:collapse;width:100%;font-size:13px}table.grid td,table.grid th{border:1px solid var(--line);padding:8px 12px;text-align:left}table.grid th{color:var(--ink);background:var(--panel-2);font-weight:600;font-size:12px}table.grid td{color:var(--ink-dim)}table.grid td.mono{font-family:var(--mono);font-size:12px;color:var(--ink);word-break:break-all}.muted{color:var(--ink-faint)}.grant-form{display:flex;gap:var(--form-gap);align-items:center;margin:6px 0 4px;flex-wrap:wrap}.grant-form input{font-family:var(--mono);font-size:13px;border-radius:6px;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);min-width:260px}.grant-form input,.grant-form select{padding:0 11px;height:var(--control-h)}.grant-form input[type=file]{min-width:auto;padding:7px 11px;height:auto}.btn.danger{color:var(--fail);border-color:color-mix(in srgb,var(--fail) 45%,var(--line))}.btn.danger:hover{background:color-mix(in srgb,var(--fail) 14%,transparent);color:var(--fail)}.row-actions{display:flex;gap:8px;align-items:center}.s3-path{display:flex;flex-direction:column;gap:5px;padding:12px 16px}.s3-path-label{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-dim)}.s3-path-value{font-family:var(--mono);font-size:13px;color:var(--teal);background:var(--panel-2);border:1px solid var(--line);border-radius:6px;padding:7px 10px;word-break:break-all}.tests-grid .u-row{cursor:pointer}.tests-grid .u-row:hover{background:color-mix(in srgb,var(--teal) 7%,transparent)}.tests-grid .u-row.open{background:color-mix(in srgb,var(--teal) 11%,transparent)}.tests-grid .u-row.open td{border-bottom-color:transparent}.batch-form{align-items:flex-start}.batch-form textarea{font-family:var(--mono);font-size:13px;padding:9px 11px;border-radius:6px;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);min-width:320px;resize:vertical}.batch-form textarea:focus{outline:2px solid var(--amber)}.dash-actions{display:flex;align-items:center;gap:8px}.notif,.notif-trigger{position:relative}.notif-trigger{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:9px;border:1px solid color-mix(in srgb,var(--media) 35%,var(--line));background:var(--panel-2);color:var(--media);cursor:pointer}.notif-trigger:hover{filter:brightness(1.12);border-color:color-mix(in srgb,var(--media) 55%,var(--line))}.notif-badge{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--fail);color:#fff;font-size:10.5px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid var(--panel)}.notif-pop{position:absolute;right:0;top:calc(100% + 8px);width:320px;max-height:380px;overflow-y:auto;background:var(--panel-2);border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 40px rgba(0,0,0,.4);z-index:60;padding:6px}.notif-pop-head{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-dim);padding:8px 10px 6px}.notif-empty{margin:0;padding:10px;font-size:13px;color:var(--ink-faint)}.notif-item{display:flex;align-items:flex-start;gap:9px;padding:9px 10px;border-radius:8px;text-decoration:none;color:var(--ink);font-size:13.5px;line-height:1.4}.notif-item:hover{background:var(--panel)}.notif-dot{width:8px;height:8px;border-radius:50%;background:var(--teal);margin-top:6px;flex-shrink:0}.notif-dot.overdue{background:var(--fail)}.notif-text{flex:1 1}.grid-controls{justify-content:space-between;gap:14px;flex-wrap:wrap;margin:6px 0 10px}.grid-controls,.grid-search{display:flex;align-items:center}.grid-search{gap:8px}.grid-search input{font-family:var(--mono);font-size:13px;padding:0 11px;height:var(--control-h);border-radius:6px;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);min-width:240px}.grid-search input:focus{outline:2px solid var(--amber)}.grid-paging{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--ink-dim)}.grid-size{display:inline-flex;align-items:center;gap:6px}.grid-size select{height:32px;padding:0 8px}.grid-range{white-space:nowrap}.grid-page,.grid-range{font-family:var(--mono)}.grid-page{min-width:46px;text-align:center}.grid-paging .btn{min-width:34px;padding:0 10px}.grid-paging .btn:disabled{opacity:.4;cursor:not-allowed}.sort-link{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:2px;cursor:pointer}.sort-link.active,.sort-link:hover{color:var(--ink)}.sort-arrow{font-size:9px;color:var(--teal)}.form-error{color:var(--fail);font-size:13px;margin:6px 0;padding-left:18px}ul.form-error{list-style:none;padding-left:0}ul.form-error li{margin:2px 0}.form-ok{color:var(--pass);font-size:13px;margin:6px 0}.admin-modal{position:relative;width:100%;max-width:520px;max-height:88vh;overflow-y:auto;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:26px 28px}.admin-form{gap:16px}.admin-form,.admin-form .field{display:flex;flex-direction:column}.admin-form .field{gap:6px}.admin-form .field-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.field-check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink);cursor:pointer}.field-check input{width:15px;height:15px;accent-color:var(--teal)}.preview-modal{position:relative;width:94vw;height:90vh;max-width:1400px;background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 80px -28px rgba(0,0,0,.85)}.preview-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 14px;border-bottom:1px solid var(--line);flex-shrink:0}.preview-title{font-family:var(--mono);font-size:13px;color:var(--ink-dim)}.preview-head .otp-close{position:static}.preview-ide{flex:1 1;min-height:0;display:flex;flex-direction:column}.preview-ide .ide{flex:1 1;min-height:0}.admin-form input[name=slug],.admin-form input[name=title],.admin-form input[type=date],.admin-form input[type=number],.admin-form input[type=text]{font-family:var(--mono);font-size:13px;padding:0 11px;height:var(--control-h);border-radius:8px;border:1px solid var(--line);background:var(--panel-2);color:var(--ink)}.admin-form input:focus{outline:2px solid var(--amber)}.admin-form input[readonly]{opacity:.7;cursor:not-allowed}.field-hint{font-size:11.5px;color:var(--ink-faint)}.admin-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.admin-form input[type=email],.admin-form select{height:var(--control-h);padding:0 11px}.admin-form input[type=email],.admin-form select,.admin-form textarea{font-family:var(--mono);font-size:13px;border-radius:8px;border:1px solid var(--line);background:var(--panel-2);color:var(--ink)}.admin-form textarea{padding:9px 11px;resize:vertical;min-height:96px;line-height:1.5}.admin-form input[type=email]:focus,.admin-form select:focus,.admin-form textarea:focus{outline:2px solid var(--amber)}.admin-form input[type=file]{font-size:12.5px;color:var(--ink-dim)}.admin-form code{font-family:var(--mono);font-size:12px;background:var(--panel-2);border:1px solid var(--line);border-radius:4px;padding:0 4px;color:var(--ink)}.ex-picker{display:flex;flex-direction:column;gap:2px;max-height:200px;overflow-y:auto;border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:var(--panel-2)}.ex-option{display:flex;align-items:center;gap:9px;font-size:13px;padding:5px 4px;border-radius:6px;cursor:pointer}.ex-option:hover{background:var(--panel)}.ex-option input{width:15px;height:15px;accent-color:var(--teal);flex-shrink:0}table.grid form{display:inline}.btn.lg{padding:0 22px;font-size:15px}.otp-backdrop{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;background:color-mix(in srgb,#000 68%,transparent);animation:otpFade .18s ease}@keyframes otpFade{0%{opacity:0}to{opacity:1}}.otp-modal{position:relative;width:100%;max-width:400px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:26px 26px 22px;box-shadow:0 30px 80px -28px rgba(0,0,0,.8);animation:otpPop .2s ease}@keyframes otpPop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.otp-close{position:absolute;top:12px;right:14px;background:none;border:none;color:var(--ink-faint);font-size:22px;line-height:1;cursor:pointer}.otp-close:hover,.otp-title{color:var(--ink)}.otp-title{margin:0 0 4px;font-size:20px}.otp-sub{margin:0 0 18px;font-size:13.5px;color:var(--ink-dim)}.otp-form{display:flex;flex-direction:column;gap:var(--form-gap)}.otp-label{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim)}.otp-form input{font-family:var(--mono);font-size:14px;padding:0 12px;height:var(--control-h);border-radius:8px;border:1px solid var(--line);background:var(--panel-2);color:var(--ink)}.otp-form input:focus{outline:2px solid var(--amber)}.otp-form .btn{margin-top:2px}.otp-box:disabled,.otp-form .btn:disabled{opacity:.55;cursor:not-allowed}.otp-code-block{margin-top:18px;display:flex;flex-direction:column;gap:8px}.otp-boxes{display:grid;grid-template-columns:repeat(8,1fr);grid-gap:7px;gap:7px}.otp-box{width:100%;aspect-ratio:3/4;text-align:center;font-family:var(--mono);font-size:18px;font-weight:600;text-transform:uppercase;border-radius:8px;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);padding:0}.otp-box:focus{outline:2px solid var(--amber);border-color:var(--amber)}.otp-error{color:var(--fail)}.otp-error,.otp-info{margin:14px 0 0;font-size:13px}.otp-info{color:var(--ink-dim)}@media (max-width:440px){.otp-box{font-size:15px}.otp-boxes{gap:5px}}.modal-actions{display:flex;justify-content:flex-end;gap:var(--form-gap);margin-top:22px}.dash-nav{display:flex;align-items:center;gap:14px;padding:8px 56px;background:rgba(13,27,42,.55);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line);flex-shrink:0}.dash-brand{font-family:var(--mono);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim);text-decoration:none}.dash-brand b{font-weight:600}.dash-brand b,.dash-brand:hover{color:var(--ink)}.dash-brand{display:flex;align-items:center}.dash-logo{height:120px;width:auto;display:block}.user-menu{position:relative}.user-menu-trigger{display:inline-flex;align-items:center;gap:8px;font-family:var(--sans);font-size:13px;color:var(--ink);background:var(--panel-2);border:1px solid var(--line);border-radius:8px;padding:5px 10px 5px 6px;cursor:pointer}.user-menu-trigger:hover{border-color:var(--ink-faint)}.user-avatar{width:26px;height:26px;border-radius:50%;background:var(--amber);color:#1a1205;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-name{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-caret{color:var(--ink-faint);font-size:11px;transition:transform .15s}.user-caret.open{transform:rotate(180deg)}.user-menu-pop{position:absolute;right:0;top:calc(100% + 6px);min-width:200px;background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:6px;box-shadow:0 18px 44px -18px rgba(0,0,0,.75);z-index:50;display:flex;flex-direction:column;gap:2px}.user-menu-item{display:block;width:100%;text-align:left;background:none;border:none;border-radius:6px;padding:9px 11px;font-family:var(--sans);font-size:13.5px;color:var(--ink);cursor:pointer;text-decoration:none}.user-menu-item:hover{background:var(--panel)}.user-menu-item.danger{color:var(--fail)}.user-menu-item.danger:hover{background:color-mix(in srgb,var(--fail) 14%,transparent)}.member-dash{flex:1 1;overflow:auto;padding:32px 40px}.member-dash h1{margin:0 0 20px;font-size:24px}.test-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:16px;gap:16px}.test-card{display:flex;flex-direction:column;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:18px 20px}.test-card.completed{border-color:color-mix(in srgb,var(--pass) 35%,var(--line))}.test-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.test-card-head h2{margin:0;font-size:16px;color:var(--ink);line-height:1.3}.test-card .test-meta{margin:0;font-size:13px;color:var(--ink-dim);font-family:var(--mono)}.test-card .btn{margin-top:4px;align-self:flex-start}.status-pill{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;padding:3px 9px;border-radius:20px;border:1px solid var(--line);color:var(--ink-dim);white-space:nowrap;flex-shrink:0}.status-pill.in_progress{color:var(--media);border-color:color-mix(in srgb,var(--media) 40%,var(--line))}.status-pill.completed{color:var(--pass);border-color:color-mix(in srgb,var(--pass) 40%,var(--line))}.status-pill.cancelled{color:var(--fail);border-color:color-mix(in srgb,var(--fail) 40%,var(--line))}.member-shell{flex:1 1;display:flex;min-height:0;overflow:hidden}.member-side{width:210px;flex-shrink:0;display:flex;flex-direction:column;gap:2px;padding:16px 12px;background:var(--panel);border-right:1px solid var(--line);overflow-y:auto}.member-side-item{display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:8px;font-size:14px;color:var(--ink-dim);text-decoration:none}.member-side-item:hover{background:var(--panel-2);color:var(--ink)}.member-side-item.active{background:color-mix(in srgb,var(--teal) 14%,transparent);color:var(--ink)}.member-side-item.active svg{color:var(--teal)}.member-main{flex:1 1;overflow-y:auto;padding:40px 52px}.member-page{max-width:1080px;margin:0 auto;position:relative}.member-greet h1{margin:0;font-size:30px}.member-sub{margin:8px 0 0;font-size:15px;color:var(--ink-dim);gap:6px}.member-sub,.ninja-banner{display:flex;align-items:center}.ninja-banner{gap:36px;margin-top:24px;padding:30px 44px;border-radius:20px;border:1px solid color-mix(in srgb,var(--teal) 28%,var(--line));background:radial-gradient(120% 160% at 12% 20%,#143049 0,#0D1B2A 55%,#0b1320 100%);overflow:hidden;position:relative}.ninja-figure{flex-shrink:0;width:200px;height:230px}.ninja-pet{position:absolute;left:0;top:0;z-index:4;pointer-events:none;opacity:0;transition:opacity .22s ease;will-change:left,top,opacity}.ninja-clip{position:absolute;inset:0;-webkit-clip-path:inset(0 -9999px);clip-path:inset(0 -9999px);z-index:1}.ninja-smoke-stage{z-index:3;pointer-events:none}.ninja-smoke-stage,.ninja-stage{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:var(--ninja-size,205px);height:var(--ninja-size,205px)}.ninja-pet:not(.at-home) .ninja-smoke-stage,.ninja-pet:not(.at-home) .ninja-stage{left:auto;right:-52px;top:0;bottom:auto;transform:none}.nj-pose{opacity:0;transform-box:view-box;transform-origin:220px 250px}.ninja-pet:not(.at-home) .ninja-stage{transform-origin:58% 82%}.ninja-pet.trick-kata .ninja-main .nj-folded,.ninja-pet.trick-kata .ninja-main .nj-sheath{opacity:0}.ninja-pet.trick-kata .ninja-main .nj-pose0{animation:njSwing 2.7s ease-in-out infinite}.ninja-pet.trick-kata .ninja-main .nj-pose1{animation:njSwing 2.7s ease-in-out infinite;animation-delay:.9s}.ninja-pet.trick-kata .ninja-main .nj-pose2{animation:njSwing 2.7s ease-in-out infinite;animation-delay:1.8s}@keyframes njSwing{0%{opacity:0;transform:scale(.84) rotate(-6deg)}9%{opacity:1;transform:scale(1.04) rotate(4deg)}20%{transform:scale(1) rotate(0)}30%{opacity:1;transform:scale(1) rotate(0)}40%{opacity:0;transform:scale(.97) rotate(5deg)}to{opacity:0}}.ninja-pet.trick-kata .ninja-stage{animation:njKata 2s ease-in-out infinite}@keyframes njKata{0%,to{transform:rotate(-3.5deg) translateY(0)}50%{transform:rotate(3.5deg) translateY(-4px)}}.ninja-pet.trick-jump .ninja-stage{animation:njJump .62s ease-in-out 4}@keyframes njJump{0%,to{transform:translateY(0) scaleY(1)}18%{transform:translateY(0) scaleY(.9)}55%{transform:translateY(-26px) scaleY(1.03)}}.ninja-pet.trick-lean .ninja-stage{animation:njLean 1.15s ease-in-out 2}@keyframes njLean{0%,to{transform:rotate(0)}25%{transform:rotate(-13deg)}75%{transform:rotate(13deg)}}.ninja-pet .ninja-main{position:relative;z-index:2;height:100%;animation:petBob 4.2s ease-in-out infinite}.ninja-pet .ninja-svg{height:100%}.ninja-pet .ninja-svg svg{height:100%;width:auto;display:block}@keyframes petBob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.ninja-clones{position:absolute;left:0;top:0;z-index:3;pointer-events:none;opacity:0;transition:opacity .35s ease;-webkit-clip-path:inset(0 -9999px);clip-path:inset(0 -9999px)}.ninja-clone-stage{width:var(--ninja-size,205px);height:var(--ninja-size,205px)}.ninja-clone-stage,.ninja-clones .hc{position:absolute;left:50%;bottom:0;transform:translateX(-50%)}.ninja-clones .hc{height:100%;opacity:0;filter:drop-shadow(0 0 8px rgba(29,186,156,.55));transition:transform .55s ease,opacity .55s ease}.ninja-clones .hc svg{height:100%;width:auto;display:block}.ninja-clones.clones-out{opacity:1}.ninja-clones.clones-out .hc-l{transform:translateX(calc(-50% - 52px));opacity:.6}.ninja-clones.clones-out .hc-r{transform:translateX(calc(-50% + 52px));opacity:.6}.ninja-clones.clones-merge{opacity:1}.ninja-clones.clones-merge .hc{transform:translateX(-50%);opacity:0}.ninja-smoke{left:50%;top:48%;width:135%;height:135%;transform:translate(-50%,-50%) scale(.4);background:radial-gradient(circle at 50% 55%,rgba(214,219,228,.95) 0,rgba(182,188,202,.78) 40%,rgba(150,156,172,.35) 62%,transparent 76%);filter:blur(7px);opacity:0;z-index:3;pointer-events:none}.ninja-smoke,.ninja-smoke .smk{position:absolute;border-radius:50%}.ninja-smoke .smk{display:block}.ninja-smoke .smk1{left:16%;top:28%;width:46%;height:46%;background:rgba(228,231,239,.9);filter:blur(6px)}.ninja-smoke .smk2{left:42%;top:16%;width:52%;height:52%;background:rgba(198,204,216,.82);filter:blur(8px)}.ninja-smoke .smk3{left:28%;top:46%;width:54%;height:44%;background:rgba(186,192,206,.8);filter:blur(9px)}.ninja-pet.puff .ninja-smoke{animation:ninjaPuff .76s ease-out}@keyframes ninjaPuff{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}25%{opacity:.95;transform:translate(-50%,-50%) scale(1)}55%{opacity:.7;transform:translate(-50%,-50%) scale(1.4)}to{opacity:0;transform:translate(-50%,-50%) scale(1.9)}}@media (prefers-reduced-motion:reduce){.ninja-clones .hc,.ninja-pet .ninja-main,.ninja-pet .ninja-stage,.ninja-pet.puff .ninja-smoke{animation:none;transition:none}}.ninja-msg{flex:1 1;display:flex;flex-direction:column;gap:10px;align-items:flex-start}.ninja-msg-kicker{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}.ninja-msg-text{margin:0;font-size:24px;line-height:1.35;color:var(--ink);font-weight:700;max-width:46ch}.ninja-msg .btn{margin-top:8px}.due-desc{margin:5px 0 0;font-size:13.5px;color:var(--ink-dim);line-height:1.5}@media (max-width:680px){.ninja-banner{padding:20px}.ninja-figure{width:110px;height:136px}.ninja-msg-text{font-size:17px}}.stat-cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;margin:28px 0 10px}.stat-card{display:flex;flex-direction:column;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:26px 28px;min-height:118px;justify-content:center}.stat-lbl{font-size:14px;color:var(--ink-dim)}.stat-num{font-family:var(--display);font-size:46px;font-weight:800;line-height:1}.stat-num.in_progress{color:var(--media)}.stat-num.completed{color:var(--pass)}.member-section{margin-top:40px}.member-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.member-section h2{font-size:17px;margin:0 0 16px;color:var(--ink)}.member-section-head h2{margin:0}.section-link{font-size:13px;color:var(--teal);text-decoration:none}.section-link:hover{text-decoration:underline}.due-list,.history-list,.progress-list{display:flex;flex-direction:column;gap:10px}.due-list,.progress-list{gap:14px}.due-card{justify-content:space-between;gap:16px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px 24px}.due-card,.due-titlerow{display:flex;align-items:center}.due-titlerow{gap:10px}.due-info h3{margin:0;font-size:16px;color:var(--ink)}.due-meta{margin:5px 0 0;font-size:13px;color:var(--ink-dim);font-family:var(--mono)}.progress-card{display:flex;flex-direction:column;gap:14px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px 24px}.progress-bar{height:10px}.progress-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.progress-row h3{margin:0;font-size:15px;color:var(--ink)}.progress-time{font-size:12px;color:var(--ink-faint);font-family:var(--mono);white-space:nowrap}.progress-bar{flex:1 1;height:8px;border-radius:999px;background:var(--panel-2);overflow:hidden}.progress-bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--teal-deep))}.history-row{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px 20px;text-decoration:none}.history-row:hover{border-color:var(--ink-faint)}.history-title{font-size:14px;color:var(--ink)}.history-meta{font-size:12.5px;color:var(--ink-dim);font-family:var(--mono);white-space:nowrap}.profile-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:32px 36px;margin-top:22px}.profile-head{gap:22px}.profile-avatar,.profile-head{display:flex;align-items:center}.profile-avatar{width:76px;height:76px;flex-shrink:0;border-radius:50%;justify-content:center;font-family:var(--display);font-weight:800;font-size:28px;color:#06281c;background:linear-gradient(135deg,var(--teal),var(--teal-deep))}.profile-id{flex:1 1;min-width:0}.profile-name{margin:0;font-size:26px;color:var(--ink)}.profile-sub{margin:5px 0 0;font-size:15px;color:var(--ink-dim)}.verified-badge{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--pass);background:color-mix(in srgb,var(--pass) 14%,transparent);border:1px solid color-mix(in srgb,var(--pass) 35%,var(--line));border-radius:999px;padding:7px 14px;white-space:nowrap}.profile-rows{margin-top:26px;border-top:1px solid var(--line)}.profile-actions{display:flex;justify-content:flex-end;margin-top:22px}.profile-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:19px 6px;border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent)}.profile-row:last-child{border-bottom:none}.pr-label{display:flex;align-items:center;gap:12px;font-size:15px;color:var(--ink-dim)}.pr-value{font-size:15px;color:var(--ink);text-align:right}.pr-value.muted{color:var(--ink-faint)}.hist-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.chip{font-size:13px;text-decoration:none;border-radius:999px;padding:6px 13px;background:var(--panel)}.chip:hover{color:var(--ink);border-color:var(--ink-faint)}.chip.active{color:var(--ink);background:color-mix(in srgb,var(--teal) 16%,transparent);border-color:color-mix(in srgb,var(--teal) 40%,var(--line))}.type-tag{font-weight:600}.type-tag.codigo{color:#5b9bf5}.type-tag.aptitud{color:var(--media)}.hist-list{display:flex;flex-direction:column;margin-top:14px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel)}.hist-row{display:flex;align-items:center;gap:18px;padding:15px 20px;border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent)}.hist-row:last-child{border-bottom:none}.hist-date{display:flex;flex-direction:column;align-items:center;width:42px;flex-shrink:0;line-height:1}.hd-day{font-family:var(--display);font-weight:800;font-size:22px;color:var(--ink)}.hd-mon{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);margin-top:2px}.hist-main{flex:1 1;min-width:0}.hist-main h3{margin:0;font-size:15px;color:var(--ink)}.hist-sub{margin:4px 0 0;font-size:13px;color:var(--ink-dim);font-family:var(--mono)}.hist-row .btn{flex-shrink:0}.practice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:14px;gap:14px}.practice-card{display:flex;flex-direction:column;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px 18px}.practice-head{display:flex;align-items:center;gap:9px;color:var(--teal)}.practice-head h3{margin:0;font-size:15px;color:var(--ink)}.practice-meta{margin:0;font-size:13px;color:var(--ink-dim);font-family:var(--mono)}.practice-card .btn{width:100%;margin-top:2px}.practice-card form{display:block}.asig-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.asig-list{display:flex;flex-direction:column;margin-top:14px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel)}.asig-row{display:flex;align-items:center;gap:14px;padding:15px 18px;border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent)}.asig-row:last-child{border-bottom:none}.asig-ico{width:40px;height:40px;flex-shrink:0;border-radius:10px;display:flex;align-items:center;justify-content:center}.asig-ico.in_progress,.asig-ico.pendiente{color:#5b9bf5;background:color-mix(in srgb,#5b9bf5 16%,transparent)}.asig-ico.vencido{color:var(--fail);background:color-mix(in srgb,var(--fail) 16%,transparent)}.asig-ico.completed{color:var(--pass);background:color-mix(in srgb,var(--pass) 16%,transparent)}.asig-ico.cancelled{color:var(--fail);background:color-mix(in srgb,var(--fail) 14%,transparent)}.asig-main{flex:1 1;min-width:0}.asig-main h3{margin:0;font-size:15px;color:var(--ink)}.asig-meta{margin:5px 0 0;font-size:13px;color:var(--ink-dim);font-family:var(--mono)}.asig-meta.warn{color:var(--media)}.asig-meta.danger{color:var(--fail)}.asig-progress{display:flex;align-items:center;gap:10px;margin-top:8px}.asig-progress .progress-bar{flex:1 1;max-width:240px}.asig-pct{font-size:12.5px;color:var(--ink-dim);font-family:var(--mono)}.asig-badge{font-size:12px;padding:5px 11px;border-radius:999px;white-space:nowrap;flex-shrink:0}.asig-badge.in_progress,.asig-badge.pendiente{color:#9cc4fb;background:color-mix(in srgb,#5b9bf5 16%,transparent)}.asig-badge.vencido{color:var(--fail);background:color-mix(in srgb,var(--fail) 15%,transparent)}.asig-badge.completed{color:var(--pass);background:color-mix(in srgb,var(--pass) 15%,transparent)}.asig-badge.cancelled{color:var(--fail);background:color-mix(in srgb,var(--fail) 15%,transparent)}.asig-row .btn{flex-shrink:0}.asig-row .btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width:680px){.asig-badge{display:none}}details.asig-item,details.hist-item{border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent)}details.asig-item:last-child,details.hist-item:last-child{border-bottom:none}details.asig-item>summary.asig-row,details.hist-item>summary.hist-row{border-bottom:none;cursor:pointer;list-style:none}details.asig-item>summary::-webkit-details-marker,details.hist-item>summary::-webkit-details-marker{display:none}details.asig-item>summary:hover,details.hist-item>summary:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.detail-toggle{cursor:pointer}.detail-toggle:after{content:"▾";margin-left:7px;font-size:10px;display:inline-block;transition:transform .15s}details[open] .detail-toggle:after{transform:rotate(180deg)}.row-detail{padding:0 18px 15px;display:flex;flex-direction:column;gap:7px;font-size:13px;color:var(--ink-dim);font-family:var(--mono)}.asig-item .row-detail{padding-left:72px}.hist-item .row-detail{padding-left:78px}.row-detail .rd-line b{color:var(--ink);font-weight:600;margin-right:6px}@media (max-width:680px){.member-side{width:56px}.member-side-item{justify-content:center;gap:0}.member-side-item,.member-side-item span{font-size:0}.stat-cards{grid-template-columns:1fr}}.test-intro{flex:1 1;overflow:auto;padding:32px 40px;max-width:760px;width:100%;margin:0 auto}.back-link{font-family:var(--mono);font-size:12px;color:var(--ink-dim);text-decoration:none}.back-link:hover{color:var(--ink)}.test-intro h1{margin:12px 0 6px;font-size:26px}.intro-desc{color:var(--ink-dim);font-size:15px;line-height:1.6;margin:0 0 12px}.intro-meta{font-family:var(--mono);font-size:12px;color:var(--ink-faint);margin-bottom:18px}.test-intro .statement{color:var(--ink-dim);font-size:15px;line-height:1.7}.test-intro .statement h2{font-size:14px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink);margin:22px 0 8px}.test-intro .statement strong{color:var(--ink)}.test-intro .statement code{font-family:var(--mono);font-size:13px;background:var(--panel-2);border:1px solid var(--line);border-radius:5px;padding:1px 6px;color:var(--ink)}.test-intro .statement ul{padding-left:20px}.test-intro .statement li{margin:4px 0}.test-reco{margin-top:24px;border:1px solid color-mix(in srgb,var(--media) 35%,var(--line));border-radius:10px;padding:14px 18px;background:color-mix(in srgb,var(--media) 7%,transparent)}.test-reco h2{margin:0 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--media)}.test-reco ul{margin:0;padding-left:20px;color:var(--ink-dim);font-size:14px;line-height:1.6}.test-reco li{margin:5px 0}.test-reco b{color:var(--ink)}.test-reco.guide{border-color:var(--line);background:color-mix(in srgb,var(--ink) 3%,transparent)}.test-reco.guide h2{color:var(--ink)}.reco-intro{margin:0 0 12px;color:var(--ink-dim);font-size:14px}.reco-legend{display:flex;flex-direction:column;gap:12px;margin:0}.reco-item{display:flex;align-items:flex-start;gap:14px}.reco-key{flex-shrink:0;font-family:var(--mono);font-size:13px;line-height:1;height:var(--control-h);min-width:36px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:6px;background:var(--panel-2);color:var(--ink);white-space:nowrap}.reco-key.reco-primary{background:linear-gradient(135deg,var(--teal),var(--teal-deep));color:#06281c;border-color:var(--teal);font-weight:700}.reco-key.reco-timer{font-weight:600;min-width:84px}.reco-caret{color:var(--ink-faint);font-size:10px}.reco-desc{font-size:14px;line-height:1.6;color:var(--ink-dim);padding-top:5px}.reco-desc b{color:var(--ink)}@media(max-width:640px){.reco-item{flex-direction:column;gap:5px}.reco-desc{padding-top:0}}.intro-actions{display:flex;align-items:center;gap:14px;margin-top:28px;flex-wrap:wrap}.finished-badge{font-family:var(--mono);font-size:14px;color:var(--pass);border:1px solid color-mix(in srgb,var(--pass) 40%,var(--line));border-radius:8px;padding:10px 16px;background:color-mix(in srgb,var(--pass) 8%,transparent)}.finished-badge.cancelled{color:var(--fail);border-color:color-mix(in srgb,var(--fail) 40%,var(--line));background:color-mix(in srgb,var(--fail) 8%,transparent)}.admin-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:4px 0 8px}.admin-tab{font-family:var(--mono);font-size:12.5px;color:var(--ink-dim);text-decoration:none;padding:9px 14px;border-bottom:2px solid transparent;margin-bottom:-1px}.admin-tab:hover{color:var(--ink)}.admin-tab.active{color:var(--ink);border-bottom-color:var(--amber)}.cell-sub{font-size:11px;color:var(--ink-faint);margin-top:2px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-family:var(--mono);padding:3px 6px 3px 10px;border-radius:20px;border:1px solid var(--line);color:var(--ink-dim)}.chip.in_progress{color:var(--media);border-color:color-mix(in srgb,var(--media) 40%,var(--line))}.chip.completed{color:var(--pass);border-color:color-mix(in srgb,var(--pass) 40%,var(--line))}.chip-x{display:inline}.chip-x button{background:none;border:none;color:var(--ink-faint);cursor:pointer;font-size:14px;line-height:1;padding:0 2px}.chip-x button:hover{color:var(--fail)}.report-cards{display:flex;gap:14px;margin:6px 0 18px;flex-wrap:wrap}.report-card{display:flex;flex-direction:column;gap:2px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px 22px;min-width:130px}.report-num{font-size:26px;font-weight:700;color:var(--ink)}.report-lbl{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-dim)}.users-grid .u-row{cursor:pointer}.users-grid .u-row:hover{background:color-mix(in srgb,var(--teal) 7%,transparent)}.users-grid .u-row.open{background:color-mix(in srgb,var(--teal) 11%,transparent)}.users-grid .u-row.open td{border-bottom-color:transparent}.u-caret{width:30px;text-align:center;color:var(--ink-faint);-webkit-user-select:none;-moz-user-select:none;user-select:none}.role-badge{display:inline-block;font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:20px;border:1px solid var(--line);margin-right:6px;color:var(--ink-dim)}.role-badge.admin{color:var(--teal);border-color:color-mix(in srgb,var(--teal) 45%,var(--line));background:color-mix(in srgb,var(--teal) 10%,transparent)}.role-badge.member{color:var(--ink-dim);border-color:color-mix(in srgb,var(--ink-faint) 50%,var(--line))}.u-detail-row>td{padding:0;background:color-mix(in srgb,var(--panel-2) 60%,var(--bg))}.u-detail-empty{padding:14px 18px}table.grid.sub{margin:10px 14px 14px;width:calc(100% - 28px);font-size:12.5px}table.grid.sub th{background:transparent;color:var(--ink-dim);font-size:11px;text-transform:uppercase;letter-spacing:.05em}table.grid.sub td,table.grid.sub th{border-color:color-mix(in srgb,var(--line) 60%,transparent);padding:7px 10px}table.grid.sub .btn{height:auto;padding:4px 10px;font-size:12px}.admin-head h1,.auth-card h1,.member-dash h1,.otp-title,.reto-head h1,.test-intro h1{font-family:var(--display);letter-spacing:-.02em}h1,h2,h3{font-family:var(--display)}.btn{font-family:var(--sans);font-weight:600}body.landing-mode{overflow:auto}body.landing-mode .app{height:auto;display:block;overflow:visible}.kata{min-height:100vh}.kata .klink{cursor:pointer;transition:color .15s}.kata .klink:hover{color:#fff!important}.kata .kbtn{transition:filter .15s,background .15s}.kata .kbtn-primary:hover{filter:brightness(1.07)!important}.kata .kbtn-ghost:hover{background:rgba(255,255,255,.08)!important}.kata .kcard{background:rgba(29,186,156,.1);border:1px solid rgba(29,186,156,.34);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:16px;padding:26px 22px}.kata .kstair{flex:1 1;min-width:0;border-radius:18px;padding:30px 26px;box-sizing:border-box}.kata .knum{font-family:var(--display);font-weight:800;font-size:30px;color:#1DBA9C;margin-bottom:14px}.kata .knum-lg{font-size:38px}.kata .ktitle{font-family:var(--display);font-weight:700;font-size:18px;margin-bottom:8px;color:#e8edf7}.kata .ktitle-lg{font-size:21px;margin-bottom:10px}.kata .ktext{font-size:14px;line-height:1.55;color:#9aa6bb}.kata .kfeat{display:flex;gap:9px;margin:9px 0;line-height:1.4}@media(max-width:640px){.lnav{flex-wrap:wrap;padding:8px 18px!important;row-gap:6px}.lnav-logo img{height:56px!important}.lnav-right{width:100%;gap:16px!important;flex-wrap:wrap;justify-content:center;row-gap:12px;font-size:14px!important}.lnav-auth{order:-1;width:100%;justify-content:flex-end}}@keyframes leafspin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes fall{0%{transform:translateY(-14vh)}to{transform:translateY(116vh)}}@keyframes leafsway{0%{transform:translateX(calc(var(--sx,16px) * -1))}to{transform:translateX(var(--sx,16px))}}@keyframes sway{0%,to{transform:rotate(-7deg)}50%{transform:rotate(8deg)}}@keyframes bandsway{0%,to{transform:rotate(-4deg)}50%{transform:rotate(6deg)}}@keyframes eyepulse{0%,to{opacity:.85}50%{opacity:1}}@keyframes blink{0%,93%,to{transform:scaleY(1)}96.5%{transform:scaleY(.12)}}@keyframes mooncreep{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes draw{0%{opacity:0;transform:scale(.86) rotate(-3deg)}60%{opacity:1}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes flash{0%{opacity:0;transform:scaleX(.3)}30%{opacity:.95}to{opacity:0;transform:scaleX(1.15)}}@keyframes restin{0%{opacity:0}to{opacity:1}}@keyframes struggle{0%,to{transform:rotate(-4deg) translateX(0)}50%{transform:rotate(4deg) translateX(6px)}}@keyframes claw{0%,to{transform:scale(1)}50%{transform:scale(.7,.9)}}@keyframes press{0%,to{transform:scale(1)}50%{transform:scale(1.05,.95)}}@keyframes climbpump{0%,to{transform:translateY(0)}50%{transform:translateY(9px)}}