body.luxury-body{--oj-accent:var(--accent);--oj-accent-soft:#7abd9a33;--oj-accent-hover:#6da285;--oj-skeleton:color-mix(in srgb, var(--line) 40%, transparent)}body{margin:0;padding:0;position:relative}.header-placeholder{height:60px}.glass-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:none;color:var(--text-main);margin-bottom:20px;padding:20px;transition:background .24s,border-color .24s,box-shadow .24s}.glass-card h2,.glass-card h3,.glass-card label{color:var(--text-main)}.oj-app-wrapper{box-sizing:border-box;gap:20px;max-width:1600px;min-height:calc(100vh - 60px);margin:0 auto;padding:20px;display:flex}.oj-sidebar-panel{width:250px;min-width:250px;height:fit-content;margin-top:0;padding:20px 15px;position:sticky;top:80px}.oj-sidebar-title{text-align:center;border-bottom:1px solid var(--line);margin-top:0;padding-bottom:10px;font-size:1.6em}.oj-sidebar-nav ul{margin:15px 0;padding:0;list-style:none}.oj-nav-link{color:var(--text-main);border-radius:var(--radius-lg);margin:5px 0;padding:10px 15px;font-weight:500;text-decoration:none;transition:background .24s,border-left .24s,color .24s;display:block}.oj-nav-link:hover{background:var(--oj-accent-soft);border-left:4px solid var(--oj-accent)}.oj-nav-link.active{background:var(--oj-accent);color:#fff;box-shadow:0 2px 5px var(--glass-shadow);font-weight:700}.oj-sidebar-divider{background:var(--line);border:0;height:1px;margin:20px 0}.oj-sidebar-controls{flex-direction:column;gap:15px;display:flex}.oj-search-group{display:flex}.oj-search-input{border-radius:var(--radius-sm) 0 0 var(--radius-sm);border:1px solid var(--line);background:var(--surface-soft);color:var(--text-main);flex-grow:1;padding:8px 10px;transition:border-color .2s,box-shadow .2s}.oj-search-input:focus{border-color:var(--oj-accent);box-shadow:0 0 0 2px var(--oj-accent-soft);outline:none}.oj-search-input::placeholder{color:var(--text-soft)}.oj-search-button{border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--oj-accent);color:#fff;cursor:pointer;border:none;padding:8px 12px;transition:background .24s,transform .24s}.oj-search-button:hover{background:var(--oj-accent-hover);transform:translateY(-1px)}.oj-control-label{font-size:.9em}.oj-main-content{flex-direction:column;flex-grow:1;gap:20px;display:flex}.oj-problem-panel{margin-bottom:0}.oj-problem-panel h3{border-bottom:1px solid var(--line);padding-bottom:5px}.oj-problem-info{border-bottom:1px dashed var(--line);gap:20px;margin-bottom:15px;padding:8px 0;font-size:.9em;display:flex}.oj-problem-panel pre{background:var(--surface-strong);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--text-main);padding:10px;font-family:Consolas,Courier New,monospace;overflow-x:auto}.oj-editor-panel{flex-direction:column;flex:1;margin-top:20px;display:flex}.oj-editor-tools{align-items:center;gap:15px;padding:0 0 15px;display:flex}.oj-code-language-select{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--text-main);cursor:pointer;padding:5px 8px;transition:background .2s}.oj-code-language-select:hover,.oj-code-language-select option{background:var(--surface-strong)}.oj-submit-button{background:var(--oj-accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;box-shadow:0 2px 5px var(--glass-shadow);border:none;padding:8px 20px;font-weight:700;transition:background .24s,transform .24s,box-shadow .24s}.oj-submit-button:hover{background:var(--oj-accent-hover);box-shadow:0 4px 8px var(--glass-shadow);transform:translateY(-1px)}.oj-submit-button:active{transform:translateY(0)scale(.98)}.oj-submit-button:disabled{background:var(--surface-strong);color:var(--text-soft);cursor:not-allowed;box-shadow:none;transform:none}.oj-editor-container{border-radius:var(--radius-lg);min-height:400px;box-shadow:none;flex:1;margin-bottom:20px;overflow:hidden}.oj-result-panel{background:var(--surface-strong);border-radius:var(--radius-lg);border-left:5px solid var(--oj-accent);padding:15px}.oj-problem-list-panel{width:100%}.oj-problem-table{border-collapse:collapse;width:100%;margin-top:15px;font-size:.95em}.oj-problem-table th,.oj-problem-table td{text-align:left;color:var(--text-main);border-bottom:1px solid var(--line);padding:12px 15px;transition:background .2s}.oj-problem-table th{background:var(--surface-strong);color:var(--text-main);font-weight:700}.oj-list-row:hover{background:var(--oj-accent-soft);cursor:pointer}.oj-problem-link{color:var(--accent);font-weight:500;text-decoration:none;transition:color .2s}.oj-problem-link:hover{color:color-mix(in srgb, var(--accent) 80%, #fff);text-decoration:underline 2px}.oj-status-badge{border-radius:var(--radius-sm);text-align:center;color:#fff;padding:3px 8px;font-size:.8em;font-weight:700;display:inline-block}.oj-status-badge-ac{background:#4caf50}.oj-status-badge-wa{background:#ff9800}.oj-status-badge-error{background:#f44336}.oj-status-badge-unattempted{background:#757575}.oj-difficulty-入门{color:#4caf50;font-weight:700}.oj-difficulty-简单{color:#81d4fa}.oj-difficulty-中等{color:#ff9800}.oj-difficulty-困难{color:#f44336}.oj-modal{z-index:2000;background:var(--bg-tint);display:none;position:fixed;inset:0;overflow:auto}.oj-modal-content{background:var(--surface-strong);border:1px solid var(--line);width:80%;max-width:800px;color:var(--text-main);border-radius:var(--radius-sm);box-shadow:none;margin:5% auto;padding:20px}.oj-modal-close{color:var(--text-soft);float:right;cursor:pointer;font-size:28px;font-weight:700;transition:color .2s}.oj-modal-close:hover,.oj-modal-close:focus{color:var(--text-main);text-decoration:none}.oj-code-pre{background:var(--surface-strong);border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-all;border:1px solid var(--line);max-height:50vh;padding:15px;font-family:Consolas,Monaco,monospace;overflow-y:auto}.oj-view-code-btn{background:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;padding:5px 10px;transition:background .2s,transform .2s}.oj-view-code-btn:hover{background:color-mix(in srgb, var(--accent) 80%, #fff);transform:translateY(-1px)}.oj-pagination-controls{background:var(--surface);border-radius:var(--radius-sm);border:1px solid var(--line);box-shadow:none;justify-content:space-between;align-items:center;margin-top:20px;padding:10px 20px;display:flex}.oj-page-selector button,.oj-page-size-select{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-soft);color:var(--text-main);cursor:pointer;margin:0 5px;padding:6px 12px;transition:background .2s,transform .2s}.oj-page-selector button:hover:not(:disabled){background:var(--surface-strong);transform:translateY(-1px)}.oj-page-selector button:disabled{background:var(--surface-strong);color:var(--text-soft);cursor:not-allowed}.oj-page-selector .active-page{background:var(--oj-accent);border-color:var(--oj-accent);font-weight:700}.oj-page-size-select{appearance:none;background-image:url(data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23e3ecfb%22%20d%3D%22M7%2010l5%205%205-5z%22%2F%3E%3C%2Fsvg%3E);background-position:right 8px center;background-repeat:no-repeat;padding-right:30px}.oj-page-size-select option{background:var(--surface-strong);color:var(--text-main)}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}@keyframes skeleton-shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.oj-skeleton{background:var(--surface-strong);border-radius:var(--radius-sm);pointer-events:none;user-select:none;animation:1.8s ease-in-out infinite skeleton-pulse}.oj-skeleton-text{background:linear-gradient(90deg, var(--surface-strong) 25%, var(--surface-strong) 50%, var(--surface-strong) 75%);border-radius:var(--radius-sm);background-size:200px 100%;width:100%;height:1em;margin-bottom:8px;animation:1.8s ease-in-out infinite skeleton-shimmer}.oj-skeleton-text:last-child{width:60%}.oj-skeleton-title{background:linear-gradient(90deg, var(--surface-strong) 25%, var(--surface-strong) 50%, var(--surface-strong) 75%);border-radius:var(--radius-sm);background-size:200px 100%;width:70%;height:1.4em;margin-bottom:12px;animation:1.8s ease-in-out infinite skeleton-shimmer}.oj-skeleton-row{align-items:center;gap:12px;padding:12px 15px;display:flex}.oj-skeleton-cell{border-radius:var(--radius-sm);background:var(--surface-strong);height:1em;animation:1.8s ease-in-out infinite skeleton-pulse}.oj-home-grid{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px;display:grid}.oj-fortune-card{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:250px;display:flex}.oj-fortune-card:hover{box-shadow:none;transform:translateY(-5px)}.oj-fortune-status{text-shadow:none;margin:10px 0;font-size:3em;font-weight:700}.oj-fortune-yi,.oj-fortune-ji{margin:5px 0;font-size:1.1em;font-weight:700}.oj-fortune-button{color:#fff;border-radius:var(--radius-md);cursor:pointer;background:#f443367a;border:none;margin-top:15px;padding:10px 20px;font-size:1.1em;transition:background .24s,transform .24s}.oj-fortune-button:hover:not(:disabled){background:#d32f2fc4;transform:translateY(-1px)}.oj-fortune-button:disabled{cursor:not-allowed;background:#757575}.oj-random-jump{text-align:center;background:var(--oj-accent);cursor:pointer;border:none;padding:40px;transition:opacity .24s,transform .24s}.oj-random-jump:hover{opacity:.9;transform:scale(1.02)}.oj-random-jump h2{color:#fff;margin:0;font-size:2.2em}#announcement-list ul,.oj-stats-panel ul{margin:0;padding-left:0;list-style-type:none}#announcement-list li,.oj-stats-panel li{border-bottom:1px dashed var(--line);padding:8px 0}.oj-stats-panel li a{margin-left:15px;display:block}@media (prefers-reduced-motion:reduce){.glass-card,.oj-nav-link,.oj-submit-button,.oj-fortune-card,.oj-random-jump,.oj-list-row,.oj-search-input,.oj-fortune-button{transition:none!important}.oj-fortune-card:hover,.oj-random-jump:hover,.oj-submit-button:hover,.oj-fortune-button:hover{transform:none!important}.oj-skeleton,.oj-skeleton-text,.oj-skeleton-title{opacity:.5!important;animation:none!important}.oj-skeleton-text,.oj-skeleton-title{background:var(--surface-strong)!important}}body.reduce-motion .glass-card,body.reduce-motion .oj-nav-link,body.reduce-motion .oj-submit-button,body.reduce-motion .oj-fortune-card,body.reduce-motion .oj-random-jump,body.reduce-motion .oj-list-row,body.reduce-motion .oj-search-input,body.reduce-motion .oj-fortune-button{transition:none!important}body.reduce-motion .oj-fortune-card:hover,body.reduce-motion .oj-random-jump:hover,body.reduce-motion .oj-submit-button:hover{transform:none!important}body.reduce-motion .oj-skeleton,body.reduce-motion .oj-skeleton-text,body.reduce-motion .oj-skeleton-title{opacity:.5!important;animation:none!important}@media (width<=1024px){.oj-sidebar-panel{display:none}.oj-app-wrapper{flex-direction:column;gap:10px;padding:10px}}@media (width<=768px){.oj-home-grid{grid-template-columns:1fr}}@media (width<=600px){.oj-pagination-controls{flex-direction:column;gap:15px}.oj-page-selector{flex-wrap:wrap;justify-content:center;display:flex}}body.luxury-body{--oj-accent:var(--accent);--oj-accent-soft:var(--accent-soft);--oj-accent-hover:var(--accent)}.oj-app-wrapper{gap:48px;max-width:1120px;min-height:calc(100vh - 60px);padding:92px 24px 48px}.oj-sidebar-panel{width:190px;min-width:190px;box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:0;position:sticky;top:88px}.oj-sidebar-title{color:var(--text-soft);border-bottom:1px solid var(--line);letter-spacing:.16em;text-align:left;margin:0;padding-bottom:12px;font-size:11px;font-weight:600}.oj-sidebar-nav ul{margin:12px 0}.oj-nav-link{color:var(--text-subtle);background:0 0;border:0;border-radius:0;margin:0;padding:8px 0;font-size:13px;font-weight:500;text-decoration:none;display:block}.oj-nav-link:hover{color:var(--text-main);background:0 0;border:0}.oj-nav-link.active{color:var(--text-main);box-shadow:none;background:0 0;border:0;font-weight:600}.oj-sidebar-divider{background:var(--line);margin:16px 0}.oj-search-group{border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.oj-search-input{background:var(--surface);border:0;border-radius:0;padding:9px 10px;font-size:12.5px}.oj-search-input:focus{box-shadow:none;border:0}.oj-search-button{color:var(--text-subtle);background:var(--surface-soft);cursor:pointer;border:0;padding:0 12px}.oj-main-content{flex:1;min-width:0;padding:0}.glass-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:none;margin:0 0 18px;padding:20px}.oj-random-jump{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);text-align:left;cursor:pointer;padding:32px;transition:background-color .16s,border-color .16s}.oj-random-jump:hover{opacity:1;background:var(--surface-soft);border-color:var(--line-strong);transform:none}.oj-random-jump h2{color:var(--text-main);letter-spacing:-.02em;margin:0 0 6px;font-size:24px;font-weight:650}.oj-random-jump p{color:var(--text-subtle);margin:0;font-size:13px}.oj-stats-panel li a{color:var(--text-subtle);border-bottom:1px solid var(--line-soft);margin-left:0;padding:9px 0;font-size:13px}.oj-stats-panel li a:hover{color:var(--accent);margin-left:0}.oj-stats-panel li:last-child a{border-bottom:0}#announcement-list li,.oj-stats-panel li{border-bottom:1px solid var(--line-soft);color:var(--text-subtle);padding:9px 0;font-size:13px}#announcement-list li:last-child,.oj-stats-panel li:last-child{border-bottom:0}.oj-fortune-card{text-align:left}.oj-fortune-status{text-shadow:none;color:var(--accent)}.oj-fortune-button{color:var(--surface-strong);background:var(--text-main);border-radius:var(--radius-sm);padding:8px 14px;font-size:12.5px;font-weight:600}.oj-fortune-button:hover:not(:disabled){background:var(--text-main);opacity:.84;transform:none}.oj-fortune-button:disabled{background:var(--surface-soft);color:var(--text-soft)}@media (width<=900px){.oj-app-wrapper{flex-direction:column;gap:28px;padding:84px 16px 32px}.oj-sidebar-panel{width:100%;min-width:0;position:static}.oj-sidebar-nav ul{flex-wrap:wrap;gap:4px 16px;display:flex}}.oj-sidebar-panel.glass-card{box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:0}.oj-search-button{white-space:nowrap;flex-shrink:0;padding:0 10px;font-size:11px}.oj-search-input{min-width:0}.oj-main-content .glass-card{background:var(--surface)}.oj-fortune-card{min-height:180px}