/* TRILLION ALPHA — isolated selectors preserve the existing theme. */
.trn-shell,.trn-news{--trn-gold:#ead093;--trn-pink:#efa0be;--trn-ink:#08111d;--trn-muted:#c5c9d0;box-sizing:border-box;font-family:"Noto Sans JP",-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:#f2efea;line-height:1.9}
.trn-shell *,.trn-news *{box-sizing:border-box}
.trn-shell{width:calc(100% - 32px);max-width:1000px;margin:30px auto 70px;padding:clamp(16px,4vw,42px);background:radial-gradient(ellipse at 0 0,#3a1c3044,transparent 36%),linear-gradient(145deg,#06101b,#0d0e16);border:1px solid #aa8c5366;border-radius:4px;overflow-wrap:anywhere}
.trn-shell a,.trn-news a{color:var(--trn-gold);text-decoration:none}
.trn-shell a:hover,.trn-news a:hover{text-decoration:underline;text-underline-offset:4px}
.trn-shell :focus-visible,.trn-news :focus-visible{outline:3px solid var(--trn-pink);outline-offset:4px}
.trn-shell h1,.trn-shell h2,.trn-shell h3,.trn-news h2,.trn-news h3{padding:0;background:none;border:0;color:var(--trn-gold);line-height:1.55;font-weight:600;letter-spacing:.04em}
.trn-shell h1::before,.trn-shell h1::after,.trn-shell h2::before,.trn-shell h2::after,.trn-shell h3::before,.trn-shell h3::after,.trn-news h2::before,.trn-news h2::after,.trn-news h3::before,.trn-news h3::after{display:none}
.trn-shell h1,.trn-shell h2,.trn-news h2{font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif}
.trn-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--trn-muted);margin-bottom:24px}
.trn-hero{position:relative;text-align:center;padding:34px 12px 44px;border-bottom:1px solid #ad8e56;background:radial-gradient(ellipse at center,#24334a66,transparent 70%)}
.trn-hero:after{content:"◆";position:absolute;bottom:-14px;left:calc(50% - 14px);width:28px;background:#0b111b;color:var(--trn-gold);font-size:16px}
.trn-kicker{font-family:Georgia,serif;font-size:14px;letter-spacing:.16em;margin:0 0 20px;color:var(--trn-gold)}
.trn-eyebrow{font-size:11px;font-weight:600;letter-spacing:.2em;color:var(--trn-pink);margin:0 0 10px}
.trn-hero h1{font-size:clamp(30px,5vw,52px);margin:4px 0 14px;word-break:normal}
.trn-lead{font-size:15px;color:var(--trn-muted);margin:0}
.trn-prose{font-size:15px;line-height:2.15;overflow-wrap:anywhere}
.trn-prose p{margin:0 0 1.4em}
.trn-intro{margin:40px auto;max-width:820px;color:#dee0e3}
.trn-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:36px 0 22px}
.trn-section-heading h2{font-size:24px;margin:0}
.trn-filter{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:16px;background:#152234;border:1px solid #9a825745;margin-bottom:24px;border-radius:4px;font-size:14px}
.trn-filter label{color:#f1e6d1;font-weight:600}
.trn-filter select{flex:1;min-width:100px;max-width:100%;min-height:44px;background:#0b1420;border:1px solid #9e8a68;border-radius:3px;color:#f5eddb;padding:8px 12px;font:inherit}
.trn-filter button{min-height:44px;border:1px solid #edd198;border-radius:3px;background:#e8ce99;color:#181719;padding:8px 20px;font:inherit;font-weight:700;cursor:pointer}
.trn-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.trn-card{min-width:0;border:1px solid #9a805361;border-radius:5px;background:linear-gradient(160deg,#141d2b,#090f17);transition:border-color .2s}
.trn-card:hover{border-color:var(--trn-gold)}
.trn-card-link{display:flex;flex-direction:column;height:100%;border-radius:5px;overflow:hidden}
.trn-card-link:hover{text-decoration:none!important}
.trn-card-image{height:220px;background:radial-gradient(ellipse at center,#23374c,#02060c);border-bottom:1px solid #9a805344;display:flex;align-items:center;justify-content:center;padding:10px}
.trn-card-image .trn-image{display:block;width:100%;height:100%;max-height:100%;object-fit:contain;object-position:center}
.trn-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;border:1px solid #a18b5f50;background:radial-gradient(ellipse at 65% 25%,#c14e7a29,transparent 70%);color:var(--trn-gold)}
.trn-placeholder span{font:italic 52px Georgia,serif;letter-spacing:-.1em}
.trn-placeholder small{font-size:10px;letter-spacing:.13em;margin-top:8px}
.trn-card-copy{display:flex;flex:1;flex-direction:column;padding:20px}
.trn-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:var(--trn-muted);font-size:12px;letter-spacing:.02em;margin:0 0 12px}
.trn-hero .trn-meta{justify-content:center;margin:18px 0 0}
.trn-category,.trn-tags span{color:#ffd5e5;background:#652c4866;border:1px solid #c1769644;padding:1px 8px;border-radius:3px;font-size:11px}
.trn-card h3{font-size:18px;letter-spacing:.02em;margin:0 0 12px}
.trn-card-excerpt{font-size:13px;line-height:1.9;margin:0 0 20px;color:var(--trn-muted)}
.trn-read-more{display:flex;justify-content:space-between;gap:8px;margin-top:auto;border-top:1px solid #a38b5944;padding-top:12px;color:var(--trn-gold);font-size:13px}
.trn-pagination ul{display:flex;gap:10px;list-style:none;justify-content:center;flex-wrap:wrap;padding:0;margin:32px 0}
.trn-pagination li{margin:0;list-style:none}
.trn-pagination a,.trn-pagination span{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:6px 12px;border:1px solid #9a805361}
.trn-pagination .current{background:#ead093;color:#121923}
.trn-empty{text-align:center;border:1px solid #9a805355;background:#102032;padding:38px 20px}
.trn-empty h3{font-size:20px;margin:0 0 14px}
.trn-empty p{font-size:14px;margin:0}
.trn-footer-text{margin-top:54px;padding-top:32px;border-top:1px solid #9a805355;color:#d0d4db}
.trn-footer-text h2{font-size:23px;margin:0 0 26px}
.trn-footer-text h3,.trn-body h2{font-size:19px;padding-left:16px;border-left:3px solid var(--trn-pink);margin:32px 0 16px}
.trn-article{margin:36px auto;max-width:850px}
.trn-tags{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}
.trn-full-image{margin:24px auto 36px;text-align:center}
.trn-full-image a{display:block}
.trn-full-image .trn-image{display:block;max-width:100%;width:auto;height:auto;max-height:none;object-fit:contain;margin:0 auto}
.trn-full-image figcaption{color:var(--trn-muted);font-size:12px;margin-top:10px}
.trn-prose img,.trn-prose video{max-width:100%;height:auto}
.trn-prose figure{max-width:100%;margin:24px 0}
.trn-prose .alignwide,.trn-prose .alignfull{width:100%;max-width:100%;margin-left:0;margin-right:0}
.trn-prose .wp-block-gallery{display:flex;flex-wrap:wrap;gap:12px}
.trn-prose .wp-block-gallery figure{flex:1 1 200px;margin:0}
.trn-prose .wp-block-gallery img{height:auto!important;object-fit:contain!important}
.trn-prose iframe{max-width:100%}
.trn-prose table{border-collapse:collapse;max-width:100%;width:100%;font-size:14px}
.trn-prose td,.trn-prose th{border:1px solid #a28b6055;padding:12px;color:inherit;background:#0d1c2d}
.trn-prose th{color:var(--trn-gold)}
.trn-expired{padding:20px;border:1px solid #e9a1ba;background:#5c29443d;color:#ffd3e3}
.trn-deadline{padding:12px 18px;border-left:3px solid var(--trn-gold);background:#17283c;font-size:14px}
.trn-contact{text-align:center;margin:48px 0 0;padding:32px 22px;border:1px solid #c8a962;border-radius:6px;background:radial-gradient(ellipse at top,#56304155,transparent 70%),#0a1522}
.trn-contact h2{font-size:24px;margin:0 0 18px}
.trn-contact>p:not(.trn-eyebrow){color:var(--trn-muted);font-size:14px;margin:0 0 22px}
.trn-shell .trn-button{display:inline-block;padding:12px 30px;background:linear-gradient(120deg,#e9cf95,#b78d45);border:1px solid #f2dba8;border-radius:4px;color:#121923;font-weight:700;font-size:16px;min-height:48px;text-decoration:none;max-width:100%}
.trn-shell .trn-button:hover{background:#f5dfb1;color:#101725}
.trn-text-link{font-size:13px;white-space:normal}
.trn-contact .trn-text-link{display:block;margin-top:20px}
.trn-compact{max-width:1000px;margin:30px auto;padding:26px;background:#0a1421;border:1px solid #b0945d66;border-radius:5px}
@media(max-width:850px){.trn-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trn-card-image{height:240px}.trn-section-heading h2{font-size:22px}}
@media(max-width:540px){.trn-shell{width:calc(100% - 20px);padding:20px 14px;margin-top:16px}.trn-hero{padding:26px 2px 30px}.trn-kicker{font-size:11px;letter-spacing:.12em}.trn-hero h1{font-size:30px}.trn-lead{font-size:13px}.trn-grid{grid-template-columns:1fr;gap:18px}.trn-card-image{height:260px}.trn-card-copy{padding:20px}.trn-card h3{font-size:20px}.trn-card-excerpt{font-size:14px}.trn-section-heading{align-items:flex-start;gap:12px}.trn-section-heading h2{font-size:20px}.trn-filter{gap:10px;padding:12px}.trn-filter label{flex-basis:100%}.trn-filter button{padding:8px 12px}.trn-prose{font-size:14px}.trn-intro{margin:30px 0}.trn-contact{padding:24px 14px}.trn-contact h2{font-size:20px}.trn-contact .trn-button{display:block;padding:12px 10px}.trn-compact{padding:18px 12px}.trn-breadcrumb{font-size:11px}.trn-footer-text h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.trn-card{transition:none}}
