/* Amazon風スキン：黒紺のヘッダー＋オレンジのアクセント＋グレー背景 */
body { margin: 0; background: #eaeded; color: #0f1111; font-family: 'BIZ UDPGothic', 'Hiragino Sans', 'Meiryo', sans-serif; font-size: 15px; }
.top { background: #131921; border-bottom: 3px solid #ff9900; color: #fff; padding: 14px 40px; display: flex; align-items: center; gap: 24px; }
.top .brand { color: #fff; text-decoration: none; font-size: 1.4rem; font-weight: 700; letter-spacing: 0.3px; }
.top .status { flex: 1; font-size: 0.9rem; color: #ddd; }
.top .status.warn { color: #febd69; font-weight: 700; }
.top .logout { color: #fff; font-size: 0.85rem; }
.layout { max-width: 1320px; margin: 20px auto; padding: 0 16px; display: flex; gap: 20px; align-items: flex-start; }
.wrap { flex: 1; min-width: 0; }
.side { width: 170px; flex: none; background: #fff; border: 1px solid #d5d9d9; border-radius: 8px; padding: 12px 10px; position: sticky; top: 16px; }
.side h3 { margin: 0 0 8px; font-size: 0.95rem; color: #0f1111; border-bottom: 2px solid #232f3e; padding-bottom: 6px; }
.side-genres { list-style: none; margin: 0; padding: 0; }
.side-genres li a { display: block; padding: 5px 6px; border-radius: 4px; color: #0f1111; text-decoration: none; font-size: 0.92rem; }
.side-genres li a:hover { background: #232f3e; color: #fff; }
@media (max-width: 900px) { .layout { flex-direction: column; } .side { width: auto; position: static; } }
.card { background: #fff; border: 1px solid #d5d9d9; border-radius: 8px; padding: 20px 24px; margin-bottom: 20px; }
h2 { margin: 0 0 12px; font-size: 1.1rem; color: #0f1111; }
.search { display: flex; gap: 0; }
.search input { flex: 1; font-size: 1.1rem; padding: 10px 12px; border: 1px solid #888c8c; border-right: 0; border-radius: 4px 0 0 4px; }
.search input:focus { outline: 2px solid #ff9900; outline-offset: -1px; }
.search button { border-radius: 0 4px 4px 0; padding: 10px 22px; }
button { background: #febd69; color: #0f1111; border: 0; border-radius: 4px; padding: 10px 20px; font-size: 1rem; cursor: pointer; font-family: inherit; font-weight: 700; }
button:hover { background: #f3a847; }
table { width: 100%; border-collapse: collapse; background: #fff; }
th { background: #232f3e; color: #fff; text-align: left; padding: 8px 10px; font-weight: 700; }
td { padding: 8px 10px; border-bottom: 1px solid #e7e7e7; }
tr:hover td { background: #f7f8f8; }
td.num { text-align: right; font-variant-numeric: tabular-nums; }
.band { display: inline-block; padding: 2px 10px; border-radius: 3px; font-size: 0.85rem; }
.band.good { background: #ff9900; color: #0f1111; font-weight: 700; }
.band.wide, .band.narrow { background: #eaeded; color: #565959; }
.band.pending { color: #8d9096; }
.band.failed { background: #eaeded; color: #9e9e9e; }
tr.seen td a { color: #8d9096; }
tr.seen .seen-mark { color: #8d9096; font-size: 0.8rem; }
a { color: #007185; }
a:hover { color: #c7511f; }
.verdict { font-size: 1.3rem; font-weight: 700; padding: 8px 16px; border-radius: 4px; display: inline-block; }
.verdict.穴あり { background: #ff9900; color: #0f1111; }
.verdict.要差別化 { background: #fff3e0; color: #c45500; }
.verdict.NG { background: #fde8e8; color: #b12704; }
.muted { color: #565959; font-size: 0.9rem; }
img.thumb { width: 48px; height: 48px; object-fit: contain; }
.foot { max-width: 1100px; margin: 24px auto 40px; padding: 0 16px; color: #565959; font-size: 0.85rem; }
.error { color: #b12704; }
.notice { color: #565959; }
.login { max-width: 360px; margin: 80px auto; }
@media (max-width: 700px) { .top { padding: 12px 16px; } .hide-sp { display: none; } }
.pager { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 14px; }
button.ghost2 { background: #fff; color: #0f1111; border: 1px solid #888c8c; font-weight: 400; }
button.ghost2:hover { background: #f7fafa; }
