.hub-page{--red:#c1272d;--grad:linear-gradient(45deg, #9f3a3e, #c1272d);--line:#ffd9d9;--line-2:#f6e6e6;--soft:#fff5f5;--muted:#6b7280;--ok:#16a34a;--gold:#b45309;color:#1f2937;background:#fff}.hub-page .account-container{padding-left:300px;padding-right:2rem}.hub-page h1,.hub-page h2,.hub-page h3,.hub-page h4,.hub-page p,.hub-page ul{margin:0}.hub-page ul{padding:0;list-style:none}.hub-page b{color:inherit}.hub-page .hub-wrap{flex-direction:column;gap:16px;padding:16px 0 60px;display:flex}.hub-page .hub-hero{border:1px solid var(--line);background:radial-gradient(circle at 92% 10%,#f6c14340,#0000 40%),linear-gradient(135deg,#fff5f5 0%,#fff 55%,#fff8e6 100%);border-radius:16px;align-items:center;gap:16px;padding:20px 24px;display:flex}.hub-page .hub-hero h1{font-size:26px;font-weight:900}.hub-page .hub-hero p{color:#4b5563;margin-top:4px}.hub-page .hub-hero-ico{filter:drop-shadow(0 6px 8px #9f3a3e33);font-size:46px}.hub-page .hub-hero-aside{flex-wrap:wrap;gap:10px;margin-left:auto;display:flex}.hub-page .hub-chip{border:1px solid var(--line);background:#fff;border-radius:99px;align-items:center;gap:6px;padding:8px 14px;font-weight:800;display:inline-flex}.hub-page .hub-chip .pt-ico{margin:0}.hub-page .hub-card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:18px}.hub-page .hub-card h3{margin-bottom:12px;font-size:17px;font-weight:800}.hub-page .hub-muted{color:var(--muted);font-size:13px}.hub-page .hub-err{color:#dc2626;font-size:13px}.hub-page .hub-ok{color:var(--ok);font-size:13px;font-weight:700}.hub-page .hub-btn{border:1px solid var(--line);font:inherit;color:#374151;cursor:pointer;white-space:nowrap;background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:700;display:inline-flex}.hub-page .hub-btn:hover:not(:disabled){border-color:var(--red);color:var(--red)}.hub-page .hub-btn:disabled{opacity:.5;cursor:default}.hub-page .hub-btn.primary{background:var(--grad);color:#fff;border-color:#9f3a3e}.hub-page .hub-btn.primary:hover:not(:disabled){color:#fff;filter:brightness(1.06)}.hub-page .hub-btn.gold{color:#78350f;background:linear-gradient(#fbbf24,#f59e0b);border-color:#d97706}.hub-page .hub-btn.green{color:var(--ok);background:#e9f8ec;border-color:#86efac}.hub-page .hub-tabs{flex-wrap:wrap;gap:6px;display:flex}.hub-page .hub-tabs button{border:1px solid var(--line);font:inherit;color:#4b5563;cursor:pointer;background:#fff;border-radius:99px;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:700;display:inline-flex}.hub-page .hub-tabs button em{background:var(--soft);color:var(--red);border-radius:99px;padding:0 7px;font-size:12px;font-style:normal}.hub-page .hub-tabs button:hover{border-color:var(--red);color:var(--red)}.hub-page .hub-tabs button.active{background:var(--grad);color:#fff;border-color:#9f3a3e}.hub-page .hub-tabs button.active em{color:#fff;background:#ffffff40}.hub-page .hub-bar{background:#fbe9e9;border-radius:99px;height:8px;overflow:hidden}.hub-page .hub-bar i{border-radius:inherit;background:var(--grad);height:100%;transition:width .4s;display:block}.hub-page .hub-bar.green i{background:linear-gradient(90deg,#4ade80,#16a34a)}.hub-page .hub-bar.gold i{background:linear-gradient(90deg,#fbbf24,#f59e0b)}.hub-page .hub-empty{text-align:center;border:1px dashed var(--line);color:var(--muted);border-radius:15px;padding:30px}.hub-page .hub-input{border:1px solid var(--line);width:100%;font:inherit;background:#fff;border-radius:10px;padding:9px 12px}.hub-page .hub-input:focus{border-color:var(--red);outline:none}.hub-page .st-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:18px;display:grid}.hub-page .st-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;display:grid}.hub-page .st-item{border:1px solid var(--line-2);text-align:center;background:#fff;border-radius:16px;flex-direction:column;align-items:center;gap:6px;padding:16px 14px 14px;display:flex;position:relative}.hub-page .st-item h4{font-size:15px;font-weight:800}.hub-page .st-item p{color:var(--muted);min-height:32px;font-size:12px}.hub-page .st-item.owned{border-color:#bbf7d0}.hub-page .st-item.equipped{border-color:var(--red);box-shadow:0 0 0 2px #c1272d1f}.hub-page .st-icon{background:var(--soft);border-radius:18px;justify-content:center;align-items:center;width:72px;height:72px;font-size:36px;display:flex}.hub-page .st-title-preview{color:#92400e;background:linear-gradient(90deg,#fef3c7,#fde68a);border-radius:99px;padding:4px 12px;font-size:13px;font-weight:800}.hub-page .st-price{color:var(--gold);align-items:center;gap:4px;font-weight:900;display:inline-flex}.hub-page .st-price .pt-ico{margin:0}.hub-page .st-badge{color:var(--ok);background:#e9f8ec;border-radius:99px;padding:2px 8px;font-size:11px;font-weight:800;position:absolute;top:10px;left:10px}.hub-page .st-preview{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.hub-page .st-preview b{font-size:17px}.hub-page .st-history li{justify-content:space-between;gap:8px;padding:6px 0;font-size:13px;display:flex}.hub-page .st-history li+li{border-top:1px solid var(--line-2)}.hub-page .st-history li span{color:var(--muted)}.hub-page .ev-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}.hub-page .ev-card{border:1px solid var(--line);cursor:pointer;text-align:left;font:inherit;background:#fff;border-radius:18px;flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden}.hub-page .ev-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px #9f3a3e1f}.hub-page .ev-card.ended{opacity:.75}.hub-page .ev-banner{color:#fff;flex-direction:column;justify-content:flex-end;min-height:116px;padding:18px;display:flex;position:relative}.hub-page .ev-banner .ev-icon{opacity:.9;font-size:56px;position:absolute;top:8px;right:14px}.hub-page .ev-banner h3{text-shadow:0 2px 6px #00000040;margin:0;font-size:19px;font-weight:900}.hub-page .ev-banner small{opacity:.95;font-weight:700}.hub-page .ev-state{color:#1f2937;background:#ffffffe6;border-radius:99px;padding:3px 10px;font-size:12px;font-weight:800;position:absolute;top:12px;left:14px}.hub-page .ev-state.live{color:var(--ok)}.hub-page .ev-body{flex-direction:column;gap:8px;padding:14px 16px 16px;display:flex}.hub-page .ev-body p{color:#4b5563;font-size:13px}.hub-page .ev-detail{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:18px;display:grid}.hub-page .ev-hero{border:1px solid var(--line);border-radius:18px;overflow:hidden}.hub-page .ev-hero .ev-banner{min-height:160px;padding:24px}.hub-page .ev-hero .ev-banner h3{font-size:26px}.hub-page .ev-hero .ev-banner .ev-icon{font-size:84px}.hub-page .ev-progress{align-items:center;gap:14px;padding:16px;display:flex}.hub-page .ev-progress b{color:var(--red);font-size:28px;font-weight:900}.hub-page .ev-progress small{color:var(--muted)}.hub-page .ev-progress .hub-bar{flex:1;height:12px}.hub-page .ev-miles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.hub-page .ev-mile{border:1px solid var(--line-2);text-align:center;border-radius:14px;flex-direction:column;align-items:center;gap:4px;padding:14px 10px;display:flex}.hub-page .ev-mile>span{filter:grayscale();opacity:.6;font-size:30px}.hub-page .ev-mile b{font-size:14px}.hub-page .ev-mile small{color:var(--muted);font-size:12px}.hub-page .ev-mile.reached{background:#fffbeb;border-color:#fde68a}.hub-page .ev-mile.reached>span{filter:none;opacity:1}.hub-page .ev-mile.claimed{background:#f0fdf4;border-color:#bbf7d0}.hub-page .ev-rules{flex-direction:column;gap:6px;display:flex}.hub-page .ev-rules li{color:#374151;padding-left:18px;font-size:14px;position:relative}.hub-page .ev-rules li:before{content:"•";color:var(--red);position:absolute;left:4px}.hub-page .ev-board li{align-items:center;gap:10px;padding:8px 6px;display:flex}.hub-page .ev-board li+li{border-top:1px solid var(--line-2)}.hub-page .ev-board li.me{background:var(--soft);border-radius:10px}.hub-page .ev-board li>div{flex:1;min-width:0}.hub-page .ev-board li>div b{text-overflow:ellipsis;white-space:nowrap;font-size:14px;display:block;overflow:hidden}.hub-page .ev-board li>div small{color:var(--muted);font-size:12px}.hub-page .ev-board li em{color:var(--red);font-style:normal;font-weight:900}.hub-page .ev-rank{text-align:center;width:26px;color:var(--muted);font-weight:900}.hub-page .lb-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.hub-page .lb-toolbar .hub-input{max-width:320px}.hub-page .lb-toolbar select{border:1px solid var(--line);font:inherit;background:#fff;border-radius:10px;padding:9px 12px}.hub-page .lb-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:18px;display:grid}.hub-page .lb-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.hub-page .lb-item{border:1px solid var(--line-2);background:#fff;border-radius:16px;flex-direction:column;display:flex;position:relative;overflow:hidden}.hub-page .lb-item:hover{border-color:var(--line);box-shadow:0 8px 18px #9f3a3e14}.hub-page .lb-cover{background:linear-gradient(135deg,#fff5f5,#fff8e6);justify-content:center;align-items:center;height:120px;font-size:48px;display:flex;position:relative}.hub-page .lb-cover img{object-fit:cover;width:100%;height:100%}.hub-page .lb-type{color:var(--red);background:#fff;border-radius:99px;padding:3px 9px;font-size:11px;font-weight:800;position:absolute;top:10px;left:10px;box-shadow:0 2px 6px #0000001a}.hub-page .lb-type.flashcard{color:#7c3aed}.hub-page .lb-type.doc{color:#0369a1}.hub-page .lb-fav{cursor:pointer;background:#fff;border:0;border-radius:50%;width:34px;height:34px;font-size:17px;position:absolute;top:8px;right:8px;box-shadow:0 2px 6px #0000001f}.hub-page .lb-fav.on{color:#f59e0b}.hub-page .lb-body{flex-direction:column;flex:1;gap:4px;padding:12px 14px 14px;display:flex}.hub-page .lb-body small{color:var(--red);font-size:12px;font-weight:700}.hub-page .lb-body h4{font-size:15px;font-weight:800;line-height:1.35}.hub-page .lb-body p{color:var(--muted);font-size:12px}.hub-page .lb-body .hub-btn{margin-top:auto}.hub-page .lb-files{flex-direction:column;gap:4px;margin-top:4px;display:flex}.hub-page .lb-files a{color:#0369a1;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.hub-page .lb-recent li{align-items:center;gap:10px;padding:8px 0;display:flex}.hub-page .lb-recent li+li{border-top:1px solid var(--line-2)}.hub-page .lb-recent li a{flex:1;min-width:0}.hub-page .lb-recent li a b{text-overflow:ellipsis;white-space:nowrap;font-size:14px;display:block;overflow:hidden}.hub-page .lb-recent li a small{color:var(--muted);font-size:12px}.hub-page .se-layout{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:18px;display:grid}.hub-page .se-nav{border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:4px;padding:10px;display:flex;position:sticky;top:16px}.hub-page .se-nav button{font:inherit;color:#374151;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-weight:700;display:flex}.hub-page .se-nav button:hover{background:var(--soft);color:var(--red)}.hub-page .se-nav button.active{background:var(--grad);color:#fff}.hub-page .se-form{grid-template-columns:1fr 1fr;gap:12px 16px;display:grid}.hub-page .se-form label{flex-direction:column;gap:5px;font-size:13px;font-weight:700;display:flex}.hub-page .se-form label.wide{grid-column:1/-1}.hub-page .se-form label small{color:var(--muted);font-weight:400}.hub-page .se-actions{align-items:center;gap:12px;margin-top:14px;display:flex}.hub-page .se-profile{background:var(--soft);border-radius:14px;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:16px;padding:14px;display:flex}.hub-page .se-profile b{font-size:18px;display:block}.hub-page .se-profile small{color:var(--muted)}.hub-page .se-toggle-row{justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.hub-page .se-toggle-row+.se-toggle-row{border-top:1px solid var(--line-2)}.hub-page .se-toggle-row b{font-size:14px;display:block}.hub-page .se-toggle-row small{color:var(--muted);font-size:12px}.hub-page .se-toggle{cursor:pointer;background:#e5e7eb;border:0;border-radius:99px;flex-shrink:0;width:46px;height:26px;padding:0;position:relative}.hub-page .se-toggle i{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.hub-page .se-toggle.on{background:var(--grad)}.hub-page .se-toggle.on i{transform:translate(20px)}.hub-page .se-seg{border:1px solid var(--line);border-radius:10px;gap:4px;padding:3px;display:flex}.hub-page .se-seg button{font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 10px;font-size:13px;font-weight:700}.hub-page .se-seg button.active{background:var(--grad);color:#fff}@media (max-width:1150px){.hub-page .st-layout,.hub-page .ev-detail,.hub-page .lb-layout,.hub-page .ms-grid{grid-template-columns:minmax(0,1fr)}.hub-page .se-layout{grid-template-columns:1fr}.hub-page .se-nav{flex-direction:row;position:static;overflow-x:auto}}@media (max-width:760px){.hub-page .se-form{grid-template-columns:1fr}.hub-page .hub-hero{flex-wrap:wrap}}.se-avatar-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-left:auto;display:flex}.se-avatar-actions label.hub-btn{cursor:pointer}.se-avatar-actions .disabled{opacity:.6;pointer-events:none}@media (max-width:640px){.se-avatar-actions{justify-content:flex-start;width:100%;margin-left:0}}.ev-admin-bar{border:1px dashed var(--line,#e5e7eb);background:var(--soft,#f8fafc);border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;font-weight:800;display:flex}.ev-drafts{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;display:grid}.ev-draft{text-align:left;border:1px dashed var(--line,#d1d5db);background:var(--card,#fff);color:inherit;cursor:pointer;border-radius:14px;grid-template-rows:auto auto;grid-template-columns:44px 1fr;align-items:center;column-gap:10px;padding:10px;display:grid}.ev-draft .ev-draft-ico{border-radius:12px;grid-row:span 2;place-items:center;width:44px;height:44px;font-size:22px;display:grid}.ev-draft small{opacity:.7}.ev-modal{z-index:1000;background:#0f172a8c;justify-content:center;align-items:flex-start;padding:32px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.ev-editor{flex-direction:column;gap:12px;width:min(760px,100%);display:flex}.ev-editor header,.ev-editor footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.ev-editor footer{justify-content:flex-end}.ev-editor h4{margin:4px 0 0;font-size:15px;font-weight:800}.ev-editor label{flex-direction:column;gap:4px;font-size:13px;font-weight:700;display:flex}.ev-editor textarea{resize:vertical;font:inherit}.ev-editor input[type=color]{height:38px;padding:2px}.ev-preview{color:#fff;text-shadow:0 1px 2px #00000059;border-radius:14px;align-items:center;gap:12px;padding:14px 16px;display:flex}.ev-preview span{font-size:30px}.ev-preview b{font-size:18px}.ev-form{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.ev-form .wide{grid-column:1/-1}.ev-mile-edit{flex-direction:column;gap:6px;display:flex}.ev-mile-edit>.hub-btn{align-self:flex-start}.ev-mile-row{grid-template-columns:1fr 2fr .8fr .8fr .7fr 40px;align-items:center;gap:6px;display:grid}.ev-mile-row.head span{opacity:.7;font-size:12px;font-weight:700}.ev-mile-row input{min-width:0}@media (max-width:640px){.ev-form{grid-template-columns:1fr 1fr}.ev-mile-row{grid-template-columns:1fr 1.6fr 1fr 1fr 1fr 34px}.ev-mile-row.head{display:none}}.st-bag h3{justify-content:space-between;align-items:center;gap:8px;display:flex}.st-bag h4{color:var(--muted,#6b7280);margin:12px 0 6px;font-size:13px;font-weight:800}.st-bag ul{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.st-bag li{border:1px solid var(--line-2,#f6e6e6);border-radius:12px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 8px;display:grid}.st-bag li.on{background:#f0fdf4;border-color:#86efac}.st-bag li.on small{color:#15803d;font-weight:700}.st-bag li>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.st-bag li>span:nth-child(2) b{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.st-bag li>span:nth-child(2) small{color:var(--muted,#6b7280);font-size:11px}.st-bag li .hub-btn{padding:5px 12px;font-size:12px}.st-bag li em{color:#92400e;font-size:13px;font-style:normal;font-weight:800}.st-bag-ico{background:#fff7ed;border-radius:10px;place-items:center;width:38px;height:38px;font-size:20px;display:grid}.st-bag-all{color:var(--red,#c1272d);cursor:pointer;background:0 0;border:0;font-size:13px;font-weight:700}.se-wall{border:1px solid var(--line,#ffd9d9);background:#fffaf5;border-radius:14px;grid-template-columns:1fr 1fr;gap:10px 14px;margin-bottom:12px;padding:14px;display:grid}.se-wall>div{grid-column:1/-1}.se-wall>div b{display:block}.se-wall>div small{color:var(--muted,#6b7280)}.se-wall>div small a{color:var(--red,#c1272d);font-weight:700}.se-wall label{flex-direction:column;gap:4px;font-size:13px;font-weight:700;display:flex}@media (max-width:640px){.se-wall{grid-template-columns:1fr}}.se-wall-link{grid-column:1/-1}.hub-page .tfa-set{border-top:1px dashed #ead9c8;flex-direction:column;gap:12px;margin-top:26px;padding-top:20px;display:flex}.hub-page .tfa-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.hub-page .tfa-head h3{margin:0 0 4px}.hub-page .tfa-badge{color:#6b7280;background:#f3f4f6;border-radius:99px;flex-shrink:0;padding:3px 10px;font-size:12.5px;font-weight:800}.hub-page .tfa-badge.on{color:#15803d;background:#dcfce7}.hub-page .tfa-msg{color:#b91c1c;background:#fef2f2;border-radius:10px;margin:0;padding:8px 12px;font-size:13.5px}.hub-page .tfa-msg.ok{color:#047857;background:#ecfdf5}.hub-page .tfa-steps{color:#4b5563;flex-direction:column;gap:4px;margin:0;padding-left:20px;font-size:14px;list-style:decimal;display:flex}.hub-page .tfa-setup{flex-direction:column;gap:14px;display:flex}.hub-page .tfa-qr{background:#fffaf3;border:1px solid #f3e2cf;border-radius:14px;flex-wrap:wrap;align-items:center;gap:18px;padding:14px;display:flex}.hub-page .tfa-qr img{background:#fff;border:1px solid #eee;border-radius:10px;padding:6px}.hub-page .tfa-qr small{color:#6b7280;margin-bottom:4px;font-size:12px;display:block}.hub-page .tfa-qr code{letter-spacing:.06em;word-break:break-all;background:#fff;border:1px solid #eadfd2;border-radius:8px;padding:6px 10px;font-size:14px;font-weight:700;display:inline-block}.hub-page .tfa-confirm{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.hub-page .tfa-confirm .hub-input{text-align:center;letter-spacing:.25em;width:150px;font-size:18px;font-weight:800}.hub-page .tfa-codes{background:#fffaf3;border:1px solid #f3e2cf;border-radius:14px;flex-direction:column;gap:8px;padding:16px;display:flex}.hub-page .tfa-codes ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px;margin:4px 0;padding-left:22px;display:grid}.hub-page .tfa-codes code{letter-spacing:.05em;font-size:15px;font-weight:700}.hub-page .hub-btn.danger{color:#b91c1c;background:#fef2f2;border-color:#fecaca}html[data-theme=dark] .hub-page .tfa-set{border-color:#ffffff1a}html[data-theme=dark] .hub-page .tfa-qr,html[data-theme=dark] .hub-page .tfa-codes{background:#ffffff0a;border-color:#ffffff1a}html[data-theme=dark] .hub-page .tfa-qr code,html[data-theme=dark] .hub-page .tfa-codes code{color:#f3f1ff;background:#ffffff0f;border-color:#ffffff1f}html[data-theme=dark] .hub-page .tfa-steps{color:#c9c6ea}
