/* Lucaria additional portal sections. Deliberately small, no remote assets. */
.tn-masthead .tn-tagline {
  color: #e1c68f;
  letter-spacing: .19em;
  font-weight: 700;
  font-size: 11px;
  opacity: .9;
}
.tn-portal-sidebar-body { padding: 15px 18px 18px; display: grid; gap: 10px; }
.tn-portal-sidebar-body p { margin: 0; color: #c5d1df; font-size: 12px; line-height: 1.6; }
.tn-portal-sidebar-body small { color: #8fa2b8; line-height: 1.45; font-size: 11px; }
.tn-premium-panel { border-color: #796043; background: linear-gradient(160deg,rgba(36,33,40,.97),#121c2b); }
.tn-premium-panel .tn-panel-heading { color: #f4ce83; background: linear-gradient(115deg,#3a2b22,#1a2433); }
.tn-premium-panel .tn-panel-heading::before { background: #e0b76c; }
.tn-shop-panel { border-color: #4e5a70; }
.tn-shop-main-link, .tn-sidebar-feature-link {
  display: flex; align-items: center; justify-content: space-between; gap: 6px;
  padding: 9px 10px; min-height: 34px; border: 1px solid #5b6b7c;
  border-radius: 3px; background: #19293f; color: #eac888 !important;
  font-size: 12px; font-weight: 700; text-align: left;
}
.tn-shop-main-link { background: linear-gradient(#e5c47e,#bd924b); color: #162034 !important; border-color: #dbb66b; }
.tn-shop-main-link:hover { color: #132034 !important; background: #f7d794; }
.tn-sidebar-feature-link:hover { border-color: #d6b16d; background: #253b56; }
.tn-streamers-panel { border-color: #3f5269; }
.tn-streamers-list { display: grid; gap: 6px; padding: 10px; }
.tn-streamer-item {
  display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center;
  gap: 9px; padding: 9px 7px; border: 1px solid #344860;
  border-radius: 3px; background: #17283d;
}
.tn-streamer-item:hover { background: #213650; border-color: #b58e53; }
.tn-streamer-platform { border: 1px solid #495a72; border-radius: 2px; padding: 4px 5px; font-size: 9px; letter-spacing: .04em; color: #dfcaab; }
.tn-streamer-platform-kick { border-color: #4c8e55; color: #9ddd9c; }
.tn-streamer-platform-youtube { border-color: #a65959; color: #e7a2a2; }
.tn-streamer-platform-twitch { border-color: #7a63a9; color: #c5afe8; }
.tn-streamer-profile { min-width: 0; display: grid; gap: 2px; overflow-wrap: anywhere; }
.tn-streamer-profile strong { color: #f0cf97; font-size: 12px; }
.tn-streamer-profile small { color: #aabbd0; font-size: 10px; line-height: 1.4; }
.tn-streamer-live { color: #95e3a9; font-size: 10px; font-weight: 700; white-space: nowrap; }
.tn-streamers-empty { margin: 0; padding: 14px 15px; color: #a7b9cc; font-size: 12px; line-height: 1.6; }
.tn-inner-content .tn-portal-page { display: grid; gap: 18px; color: #c8d5e4; font-size: 13px; line-height: 1.7; }
.tn-portal-page p { margin: 0; }
.tn-inner-content .tn-portal-lead { font-size: 14px; line-height: 1.75; color: #c8d7e6; }
.tn-feature-list { display: grid; gap: 15px; }
.tn-feature-entry {
  display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0, .9fr);
  border: 1px solid #364861; border-radius: 4px;
  background: linear-gradient(145deg,#15253a,#101a2c);
  overflow: hidden;
}
.tn-feature-copy { display: flex; flex-direction: column; padding: 22px 23px; gap: 9px; }
.tn-feature-count { font: 700 10px/1.5 Arial,sans-serif; letter-spacing: .13em; color: #bb9b60; }
.tn-feature-copy h2, .tn-portal-intro h2 { margin: 3px 0 0; font: normal 25px/1.25 Georgia,serif; color: #f1d19b; }
.tn-feature-subtitle { color: #e0ccac; font-style: italic; }
.tn-feature-copy > p:not(.tn-feature-subtitle) { color: #b8c9d9; }
.tn-feature-state { display: inline-block; width: fit-content; margin-top: auto; border-top: 1px solid #46556a; padding-top: 9px; color: #d0b074; font-weight: 700; font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.tn-feature-media { min-width: 0; min-height: 218px; background: #101a29; border-left: 1px solid #35475b; }
.tn-feature-media img { display:block; width:100%; height:100%; object-fit:contain; background:#09111d; }
.tn-feature-image-pending { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; height:100%; min-height:218px; padding: 20px; text-align:center; background: repeating-linear-gradient(135deg,#122238,#122238 10px,#14263d 10px,#14263d 11px); }
.tn-feature-image-pending span { color: #8f9db2; letter-spacing: .25em; font-size: 9px; }
.tn-feature-image-pending strong { color: #a9bdd0; font: 22px/1.4 Georgia,serif; }
.tn-feature-image-pending small { color:#889bb1; }
.tn-portal-note { border-left: 2px solid #ba9254; padding: 12px 15px; background: #1b2a3d; color: #dbc49f; }
.tn-portal-intro { padding: 22px 23px; border: 1px solid #41536a; background: linear-gradient(135deg,#1b2d43,#102032); display: grid; gap: 12px; }
.tn-portal-statline { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 15px 19px; border: 1px solid #3c4e65; }
.tn-portal-statline span { text-transform: uppercase; letter-spacing: .07em; font-size: 10px; color: #a7b9cf; }
.tn-portal-statline strong { color: #efcd8d; }
.tn-portal-outline { display: grid; gap: 10px; border: 1px solid #374960; padding: 19px 21px; background: #142337; }
.tn-portal-outline h3 { margin:0; font:normal 21px Georgia,serif; color:#e9c787; }
.tn-portal-outline a { width:fit-content; color:#e6c481 !important; border-bottom:1px solid #a58450; }
.tn-benefit-list { display: grid; gap: 8px; list-style: none; padding: 0; margin: 0; }
.tn-benefit-list li { display:flex; align-items:center; gap:17px; padding:15px 17px; background:#18293f; border:1px solid #35465e; }
.tn-benefit-list li span { font:normal 25px Georgia,serif; color:#c39f5c; }
.tn-benefit-list li strong { color:#ecdbbd; font-size:13px; font-weight:500; }
.tn-portal-cta { width:fit-content; border:1px solid #d9b166; color:#101b2b !important; padding:10px 15px; background:linear-gradient(#edce8a,#ba8e44); font-weight:bold; }
@media (max-width: 1100px) { .tn-feature-entry { grid-template-columns: 1fr; } .tn-feature-media { min-height: 160px; border-left:0; border-top:1px solid #35475b; } }
@media (max-width: 600px) {
  .tn-masthead .tn-tagline { letter-spacing:.07em; font-size:9px; }
  .tn-feature-copy { padding: 17px; } .tn-feature-copy h2, .tn-portal-intro h2 { font-size:23px; }
  .tn-feature-media, .tn-feature-image-pending { min-height:155px; }
  .tn-portal-intro { padding:16px; }
}


/* Actual embedded stream, with only one player loaded at a time. */
.tn-streamer-player { padding: 10px 10px 5px; }
.tn-streamer-screen { position: relative; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; background: radial-gradient(ellipse at 50% 45%, #1d3752, #07111f 77%); border: 1px solid #435471; border-radius: 3px; }
.tn-streamer-screen iframe { display: block; width: 100%; height: 100%; border: 0; }
.tn-streamer-screen-play { position: absolute; inset: 0; z-index: 1; border: 0; width: 100%; padding: 8px; background: transparent; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; color: #ebcc8e; font-size: 11px; cursor: pointer; }
.tn-streamer-screen-play:hover { background: #1a304888; color: #f6d894; }
.tn-streamer-screen-play[hidden] { display: none; }
.tn-streamer-play-symbol { display: grid; place-items: center; padding-left: 3px; border: 1px solid #d5af6b; width: 43px; height: 43px; border-radius: 50%; font-size: 18px; background: #0a1829cc; }
.tn-streamer-featured { display: grid; grid-template-columns: auto 1fr; align-items: baseline; gap: 3px 8px; padding-top: 10px; min-width: 0; }
.tn-streamer-live-indicator { font-size: 9px; font-weight: bold; color: #90dc9c; }
.tn-streamer-featured strong { color: #f2d399; font-size: 14px; min-width: 0; overflow-wrap: anywhere; }
.tn-streamer-featured > a { grid-column: 1/-1; width: fit-content; font-size: 11px; color: #afc7e0; }
.tn-streamer-featured-description { color: #a3b7cd; font-size: 10px; line-height: 1.5; margin: 6px 0 0; overflow-wrap: anywhere; }
.tn-streamer-expand { border: 1px solid #5f7690; color: #e2bc77; border-radius: 2px; background: #192c41; padding: 7px 10px; margin: 10px 0 2px; font: bold 11px/1.25 Arial,sans-serif; cursor: pointer; width: 100%; }
.tn-streamer-expand:hover { border-color: #d8af66; background: #263c54; }
.tn-streamer-expand[hidden] { display: none; }
.tn-streamer-smallprint { margin: 6px 0 4px; color: #869bb3; font-size: 9px; line-height: 1.45; }
.tn-streamer-picks { display: grid; gap: 4px; padding: 7px 10px 11px; border-top: 1px solid #2c3d54; }
.tn-streamer-pick { width: 100%; min-width: 0; text-align: left; display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 8px; align-items: center; border: 1px solid transparent; border-radius: 2px; background: #132338; padding: 8px 5px; color: inherit; cursor: pointer; }
.tn-streamer-pick:hover, .tn-streamer-pick.is-active { background: #20334b; border-color: #536680; }
.tn-streamer-pick.is-active { box-shadow: inset 2px 0 #c59b54; }
.tn-streamer-pick .tn-streamer-platform { font-size: 9px; padding: 4px; }
.tn-streamer-pick .tn-streamer-profile strong { font-size: 11px; }
.tn-streamer-pick .tn-streamer-profile small { font-size: 9px; }
.tn-streamer-pick .tn-streamer-live { color: #96e2a4; font-size: 12px; }
.tn-streamer-dialog { padding: 14px; background: #0c1829; color: #d8e3ef; border: 1px solid #b3915b; border-radius: 5px; width: min(850px, calc(100vw - 32px)); max-width: calc(100vw - 32px); max-height: calc(100vh - 28px); box-shadow: 0 20px 80px #000d; }
.tn-streamer-dialog::backdrop { background: #02070be8; }
.tn-streamer-dialog-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 10px; }
.tn-streamer-dialog-header h2 { font: normal 22px Georgia,serif; color: #edca8c; margin: 0; overflow-wrap: anywhere; }
.tn-streamer-dialog-header button { background: #17273b; color: #e7c48b; border: 1px solid #59708a; font-size: 24px; line-height: 1; padding: 2px 10px; cursor: pointer; }
.tn-streamer-dialog-video { width: 100%; min-height: 300px; height: min(65vh, 480px); background: #000; }
.tn-streamer-dialog-video iframe { display: block; width: 100%; height: 100%; border: 0; }
.tn-streamer-dialog > a { display: inline-block; color: #e1c083; margin-top: 9px; font-size: 12px; }
@media (max-width: 480px) { .tn-streamer-dialog-video { min-height: 210px; height: 50vh; } .tn-streamer-dialog { padding: 9px; } }

/* Clear fallback if Twitch rejects embeds on an HTTP/IP test website. */
.tn-streamer-embed-note { margin: 8px 0 0; padding: 9px 10px; color: #ddc5a0; font-size: 10px; line-height: 1.5; background: #1d2a3c; border-left: 2px solid #bd985c; }
.tn-streamer-embed-note[hidden] { display: none !important; }


/* Premium Features: benefits, systems and custom hunting minimaps */
.tn-premium-page .tn-premium-section{display:grid;gap:16px}
.tn-premium-page .tn-premium-section-title>span{font-size:11px;letter-spacing:.14em;color:#cba96f}
.tn-premium-page .tn-premium-section-title h3{margin:4px 0 0;color:#f1dfbf;font:normal 25px Georgia,serif}
.tn-premium-page .tn-premium-section-title p{margin:7px 0 0;color:#aabacc}
.tn-premium-benefits{list-style:none;counter-reset:benefits;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.tn-premium-benefits li{display:flex;align-items:flex-start;gap:13px;min-width:0;padding:17px;background:linear-gradient(150deg,#1c3046,#142336);border:1px solid #40506a}
.tn-premium-number{font:normal 25px Georgia,serif;color:#d5ae70;line-height:1}
.tn-premium-page h4{margin:0;color:#f0dec0;font-size:14px}
.tn-premium-page .tn-premium-benefits p,.tn-premium-page .tn-premium-systems p,.tn-premium-page .tn-premium-spawns p{margin:6px 0 0;color:#b6c4d6;line-height:1.6}
.tn-premium-systems{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.tn-premium-system{padding:18px;border:1px solid #43536b;background:#17283c}
.tn-premium-system:before{content:'✦';display:block;color:#cba96f;font-size:21px;margin-bottom:7px}
.tn-premium-spawns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.tn-premium-spawn{background:#17283b;border:1px solid #40536a;min-width:0;overflow:hidden}
.tn-premium-map{position:relative;display:grid;place-items:center;aspect-ratio:4/3;background:radial-gradient(circle,#203853,#0d1826);border-bottom:1px solid #45526a}
.tn-premium-map img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
.tn-premium-map-fallback{display:none;position:absolute;padding:10px;color:#afc0d0;text-align:center;font-size:12px}
.tn-premium-map-missing .tn-premium-map-fallback{display:block}
.tn-premium-spawn-copy{padding:15px}
.tn-premium-spawn-location{display:block;color:#cfae76;font-size:10px;font-weight:bold;letter-spacing:.1em;text-transform:uppercase;margin-bottom:7px}
.tn-premium-quest{display:inline-block;margin-top:12px;padding:3px 9px;border:1px solid #937c4c;color:#f0d49d;font-size:11px}
@media(max-width:840px){.tn-premium-spawns{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.tn-premium-benefits,.tn-premium-systems,.tn-premium-spawns{grid-template-columns:1fr}.tn-premium-map{aspect-ratio:16/9}}
