*{box-sizing:border-box;margin:0;padding:0}body{background:#060606;color:#f2f2f2;font-family:MS PGothic,メイリオ,Hiragino Kaku Gothic Pro,sans-serif;font-size:13px;min-height:100vh}#header{background:linear-gradient(180deg,#1e1e1e,#080808 55%,#1e1e1e);border-bottom:2px solid #dadada;padding:8px 16px;text-align:center}#header h1{font-size:22px;color:#fff;text-shadow:0 0 8px #777,2px 2px 0 #000;letter-spacing:2px}#header .sub{color:#b8b8b8;font-size:11px;margin-top:2px}#nav{background:#111;border-bottom:1px solid #454545;padding:4px 16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}#nav a{color:#f2f2f2;text-decoration:none;font-size:12px;border:1px solid #666;padding:2px 8px}#nav a:visited{color:#f2f2f2}#nav a:hover{background:#f2f2f2;color:#000}#nav .spacer{flex:1}#main{display:grid;grid-template-columns:220px 1fr;gap:0;max-width:1000px;margin:0 auto;padding:12px 8px}@media(max-width:700px){#main{grid-template-columns:1fr}}#sidebar{padding-right:12px;border-right:1px solid #2f2f2f}.sidebar-box{background:#101010;border:1px solid #505050;margin-bottom:10px}.sidebar-box .box-title{background:linear-gradient(90deg,#313131,#171717);color:#fff;font-size:11px;font-weight:700;padding:3px 8px;border-bottom:1px solid #575757}.sidebar-box .box-body{padding:8px}.round-number{color:#fff;font-size:18px;font-weight:700;text-align:center;text-shadow:0 0 6px #6d6d6d;margin-bottom:4px}.round-period{color:#b1b1b1;font-size:10px;text-align:center;margin-bottom:8px}.time-left{color:#efefef;font-size:11px;text-align:center;margin-bottom:8px}.target-song{margin-bottom:6px;padding:4px;border:1px solid #393939;background:#070707}.target-song .lv-badge{display:inline-block;background:#ececec;color:#000;font-size:10px;padding:0 4px;margin-right:4px;font-weight:700}.target-song .kara{color:#d1d1d1;font-size:10px}.target-song .song-title{color:#fff;font-size:11px;word-break:break-all;margin-top:2px}.target-song .song-genre{color:#a4a4a4;font-size:10px}#content{padding-left:12px}.tab-bar{display:flex;gap:2px;margin-bottom:-1px;flex-wrap:wrap}.tab-btn{background:#111;border:1px solid #555;border-bottom:none;color:#afafaf;font-size:12px;padding:4px 12px;cursor:pointer;font-family:inherit}.tab-btn.active{background:#1d1d1d;color:#fff;border-bottom:1px solid #1d1d1d;position:relative;z-index:1}.ranking-panel{display:none;border:1px solid #555;background:#101010}.ranking-panel.active{display:block}.ranking-chart-info{background:linear-gradient(90deg,#242424,#111);border-bottom:1px solid #4a4a4a;padding:6px 10px;font-size:11px;color:#d0d0d0}.ranking-chart-info strong{color:#fff}table.ranking{width:100%;border-collapse:collapse;font-size:12px}table.ranking th{background:linear-gradient(180deg,#313131,#171717);color:#fff;padding:4px 6px;text-align:left;border-bottom:1px solid #575757;white-space:nowrap;font-weight:400;font-size:11px}table.ranking td{padding:3px 6px;border-bottom:1px solid #232323;vertical-align:top;white-space:nowrap}table.ranking tr:hover td{background:#1a1a1a}table.ranking tr:nth-child(2n) td{background:#0b0b0b}.rank-1 td{color:#fff}.rank-2 td{color:#ddd}.rank-3 td{color:#c5c5c5}.score-num{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}.notes-tiny{color:#a8a8a8;font-size:10px}.poptomo{color:#d0d0d0;font-size:10px}.result-link{color:#f3f3f3;text-decoration:underline;font-size:10px}.result-link:visited{color:#f3f3f3}.result-link:hover{text-decoration:underline}.name-link{background:none;border:none;color:#f2f2f2;font:inherit;cursor:pointer;text-decoration:underline;padding:0}.name-link:hover{color:#fff}.no-data{color:#717171;padding:16px;text-align:center;font-size:12px}.loading{color:#717171;padding:12px;text-align:center;font-size:11px}#footer{text-align:center;color:#7a7a7a;font-size:10px;padding:8px;border-top:1px solid #303030;margin-top:16px}#modal-backdrop{display:none;position:fixed;inset:0;background:#000000b0;z-index:1000}#modal-backdrop.active{display:block}#user-modal{width:min(92vw,520px);margin:80px auto;background:#101010;border:1px solid #505050}#user-modal h2{background:linear-gradient(90deg,#313131,#171717);color:#fff;font-size:13px;padding:4px 8px}#user-modal .modal-body{padding:12px}#user-modal .close-row{text-align:right;margin-bottom:8px}#user-modal .close-btn{background:linear-gradient(180deg,#2c2c2c,#111);border:1px solid #666;color:#fff;padding:4px 8px;cursor:pointer}#user-modal .profile-line{color:#d0d0d0;font-size:12px;margin-bottom:8px;word-break:break-all}
