
:root{
 --bg:#0A0E1A;--card:#141A2B;--card2:#1B2236;--border:#242C42;
 --text:#ECE8DF;--muted:#8E94AC;--dim:#5D6480;
 --accent:#F6B23C;--accent2:#FF4635;--gold:#E9B44C;--signal:#FF4635;--amber:#F6B23C;
 --mono:ui-monospace,"SFMono-Regular","Cascadia Mono","Consolas","Courier New",monospace;
 --sans:"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic UI","Noto Sans JP",sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--text);font-family:var(--sans);line-height:1.8;background-image:radial-gradient(1200px 400px at 50% -120px,rgba(246,178,60,.06),transparent 70%)}
a{color:var(--accent);text-decoration:none}
.wrap{max-width:880px;margin:0 auto;padding:0 20px}
header{border-bottom:1px solid var(--border);padding:22px 0 0;position:relative}
header::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--signal),var(--amber) 60%,transparent)}
.mast{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.logo{font-size:1.85rem;font-weight:900;letter-spacing:-.01em;color:var(--text)}
.logo span{color:var(--amber)}
.mast-tag{font-family:var(--mono);font-size:.62rem;letter-spacing:.22em;color:var(--amber);border:1px solid var(--border);border-radius:4px;padding:3px 8px;text-transform:uppercase;white-space:nowrap}
.tagline{color:var(--muted);font-size:.86rem;margin-top:6px;letter-spacing:.01em}
nav{display:flex;gap:2px;margin-top:14px;overflow-x:auto;scrollbar-width:none}
nav::-webkit-scrollbar{display:none}
nav a{font-family:var(--mono);color:var(--muted);font-size:.8rem;letter-spacing:.04em;padding:9px 13px;border-bottom:2px solid transparent;white-space:nowrap;transition:color .15s}
nav a:hover{color:var(--text)}
nav a.on{color:var(--text);border-bottom-color:var(--amber)}
main{margin-top:24px}
.livewire{background:linear-gradient(180deg,var(--card2),var(--card));border:1px solid var(--border);border-left:3px solid var(--signal);border-radius:12px;padding:14px 18px;margin-bottom:22px;box-shadow:0 10px 30px -18px rgba(255,70,53,.5)}
.lw-status{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:.74rem;letter-spacing:.06em;color:var(--muted);margin-bottom:10px;flex-wrap:wrap}
.lw-dot{width:9px;height:9px;border-radius:50%;background:var(--signal);animation:lwpulse 1.8s infinite}
@keyframes lwpulse{0%{box-shadow:0 0 0 0 rgba(255,70,53,.55)}70%{box-shadow:0 0 0 8px rgba(255,70,53,0)}100%{box-shadow:0 0 0 0 rgba(255,70,53,0)}}
.lw-live{color:var(--signal);font-weight:700}
.lw-status b{color:var(--amber);font-weight:600}
.lw-head a{display:block;color:var(--text);padding:5px 0;font-size:.98rem;line-height:1.6;border-top:1px dashed var(--border)}
.lw-head a:first-child{border-top:none}
.lw-head a:hover{color:var(--amber)}
.lw-head .arw{color:var(--signal);font-family:var(--mono);margin-right:8px}
.date-head{font-family:var(--mono);font-size:.82rem;color:var(--amber);letter-spacing:.06em;margin:28px 0 14px;display:flex;align-items:center;gap:10px}
.date-head::before{content:"";width:6px;height:6px;background:var(--signal);border-radius:50%;flex:none}
.date-head a{color:inherit}
.date-head a:last-child{color:var(--dim)}
.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:22px 24px;margin-bottom:14px;transition:border-color .2s,transform .2s,background .2s}
.card:hover{border-color:var(--amber);background:var(--card2);transform:translateY(-2px)}
.card h2{font-size:1.22rem;font-weight:800;line-height:1.5;margin-bottom:8px;letter-spacing:-.005em}
.card h2 a{color:var(--text)}
.card:hover h2 a{color:#fff}
.card .lead{color:var(--muted);font-size:.92rem;line-height:1.7}
.meta{font-family:var(--mono);font-size:.72rem;color:var(--dim);margin-top:12px;letter-spacing:.03em}
.ctime{color:var(--amber);font-weight:700;margin-right:8px}
.tag{display:inline-block;color:var(--muted);margin-right:8px;font-size:.74rem}
.tag::before{content:"#";color:var(--dim)}
.cat{display:inline-block;font-family:var(--mono);color:var(--amber);border:1px solid rgba(246,178,60,.35);border-radius:4px;padding:1px 8px;margin-right:8px;font-size:.68rem;letter-spacing:.08em;font-weight:600;vertical-align:middle}
.newb{display:inline-flex;align-items:center;gap:5px;font-family:var(--mono);color:var(--signal);font-size:.68rem;font-weight:700;letter-spacing:.12em;margin-right:9px;vertical-align:middle}
.newb::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--signal);animation:lwpulse 1.6s infinite}
article h1{font-size:1.85rem;font-weight:900;line-height:1.45;margin-bottom:14px;letter-spacing:-.01em}
article .lead{color:var(--muted);font-size:1.02rem;border-left:3px solid var(--amber);padding-left:14px;margin:18px 0}
article p{margin:16px 0;font-size:1.02rem}
.source{background:var(--card);border:1px solid var(--border);border-left:3px solid var(--dim);border-radius:8px;padding:12px 16px;font-size:.85rem;margin-top:30px}
.sum3{background:var(--card2);border:1px solid var(--border);border-left:3px solid var(--amber);border-radius:10px;padding:14px 18px;margin:18px 0}
.sum3 .s3h{font-family:var(--mono);color:var(--amber);font-size:.72rem;letter-spacing:.1em;font-weight:700;margin-bottom:8px}
.sum3 ul{list-style:none}
.sum3 li{font-size:.94rem;padding:3px 0}
.sum3 li::before{content:"4  ";color:var(--amber)}
.likebar{margin:18px 0 4px}
.likebtn{background:transparent;border:1.5px solid var(--signal);color:var(--signal);border-radius:24px;padding:8px 22px;font-size:.92rem;font-weight:700;cursor:pointer;transition:all .15s;font-family:var(--sans)}
.likebtn:hover{transform:scale(1.04)}
.likebtn.liked{background:var(--signal);color:#fff}
.rankp{display:flex;gap:14px;align-items:center;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:14px 18px;margin-bottom:12px;transition:border-color .2s}
.rankp:hover{border-color:var(--amber)}
.rankp .no{font-family:var(--mono);font-size:1.4rem;font-weight:800;color:var(--gold);min-width:2rem;text-align:center}
.rankp .lk{color:var(--signal);font-weight:700;white-space:nowrap;font-family:var(--mono)}
.rank-card{display:flex;gap:16px;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:14px;align-items:center;transition:border-color .2s,transform .2s}
.rank-card:hover{border-color:var(--amber);transform:translateY(-2px)}
.rank-no{font-family:var(--mono);font-size:1.7rem;font-weight:800;color:var(--gold);min-width:2.2rem;text-align:center}
.rank-thumb{width:160px;min-width:160px;border-radius:8px;display:block}
.rank-body h2{font-size:1rem;line-height:1.5;margin-bottom:4px}
.rank-body h2 a{color:var(--text)}
.rank-meta{font-family:var(--mono);font-size:.76rem;color:var(--muted)}
.rank-comment{font-size:.85rem;color:var(--amber);margin-top:4px}
.person{color:var(--accent);border-bottom:1px dashed var(--accent);cursor:pointer}
.person:hover{color:#fff;border-color:#fff}
.person[data-kind="company"]{color:#6FD3A8;border-color:#6FD3A8}
.person[data-kind="ai"]{color:var(--amber);border-color:var(--amber)}
#pkind{display:inline-block;font-family:var(--mono);background:var(--card2);border-radius:4px;padding:1px 8px;margin-right:8px;font-size:.68rem;letter-spacing:.06em;color:var(--muted);vertical-align:middle}
#pbox{display:none;position:fixed;left:50%;bottom:24px;transform:translateX(-50%);width:min(92vw,480px);background:var(--card2);border:1px solid var(--amber);border-radius:14px;padding:16px 20px;z-index:99;box-shadow:0 12px 40px rgba(0,0,0,.65)}
#pbox .prow{display:flex;gap:14px;align-items:flex-start}
#pimg{display:none;width:72px;height:72px;object-fit:cover;border-radius:50%;border:2px solid var(--amber);flex-shrink:0}
#pbox b{color:var(--text);font-size:1.05rem}
#pbox p{margin:6px 0 0;font-size:.9rem;color:var(--muted)}
#plink{display:none;font-size:.78rem;margin-top:6px}
#pbox .pclose{position:absolute;top:8px;right:12px;color:var(--muted);cursor:pointer;font-size:1.1rem}
#pbox .pnote{margin-top:8px;font-size:.72rem;color:var(--dim)}
footer{border-top:1px solid var(--border);margin-top:52px;padding:26px 0;color:var(--dim);font-size:.8rem;text-align:center}
footer a{color:var(--muted)}
.back{display:inline-block;margin:20px 0;font-family:var(--mono);font-size:.82rem;color:var(--muted)}
.back:hover{color:var(--amber)}
@media(prefers-reduced-motion:reduce){*{animation:none!important}}
@media(max-width:600px){.rank-thumb{width:110px;min-width:110px}.rank-no{font-size:1.3rem;min-width:1.7rem}.logo{font-size:1.55rem}article h1{font-size:1.5rem}}
