/* 30 塔罗牌在线抽牌 · 神秘紫金：牌背翻转 + 凯尔特十字真布局 */
.trt{
  --ink:#2c2140; --sub:#6f6385; --card:#fffdfa; --line:#e7ddf0;
  --pri:#7146a8; --pri-soft:#f2eafb; --ok:#3f7c61; --warn:#b3882f; --bad:#b04a6a; --bg:#f8f5fb;
  --gold:#c49a45;
  color:var(--ink);background:var(--bg);font-size:15px;line-height:1.82;padding:26px 0 54px;min-height:60vh;
}
:root[data-theme="dark"] .trt{
  --ink:#f0e8fb; --sub:#b2a4ca; --card:#1d1630; --line:#382b4e;
  --pri:#c6a4ff; --pri-soft:rgba(198,164,255,.13); --ok:#79d3a6; --warn:#f0cd83; --bad:#ff9fb9; --bg:#120e1f;
  --gold:#f0cd83;
}
.trt *{box-sizing:border-box;}
.trt-wrap{max-width:1180px;margin:0 auto;padding:0 18px;}
.trt h1,.trt h2,.trt h3{margin:0;line-height:1.38;}
.trt b{font-weight:700;} .trt em{font-style:normal;}
.trt h1,.trt-h2,.trt-spreadhead h2,.trt-panel .trt-h2{font-family:Georgia,"Songti SC","Noto Serif SC",serif;}
.trt-hero{display:grid;grid-template-columns:1fr 220px;gap:24px;align-items:center;padding:30px 32px;
  border:1px solid var(--line);border-radius:18px;background:linear-gradient(118deg,var(--card) 55%,var(--pri-soft));
  box-shadow:0 3px 16px rgba(90,50,140,.08);}
.trt-badge{display:inline-block;padding:5px 13px;border-radius:999px;background:var(--pri);color:#fff;font-size:12px;font-weight:700;letter-spacing:.06em;}
.trt h1{font-size:32px;font-weight:800;margin:13px 0 12px;letter-spacing:.01em;}
.trt h1 em{display:block;font-family:inherit;font-size:18px;font-weight:600;color:var(--pri);margin-top:6px;}
.trt-hero p{margin:0 0 16px;max-width:780px;color:var(--sub);font-size:15px;line-height:1.88;}
.trt-hero p b{color:var(--ink);}
.trt-hero-meta{display:flex;flex-wrap:wrap;gap:8px;}
.trt-hero-meta span{padding:5px 11px;border:1px solid var(--line);border-radius:7px;background:var(--card);font-size:12.5px;font-weight:650;color:var(--sub);}
.trt-cards{position:relative;height:170px;display:grid;place-items:center;}
.trt-cards i{position:absolute;width:92px;height:146px;border-radius:11px;border:3px double var(--gold);
  background:repeating-linear-gradient(45deg,var(--pri-soft) 0 8px,var(--card) 8px 16px);
  box-shadow:0 6px 18px rgba(60,30,100,.18);}
.trt-cards i:after{content:"✦";position:absolute;inset:0;display:grid;place-items:center;color:var(--gold);font-size:32px;}
.trt-cards i:nth-child(1){transform:rotate(-18deg) translateX(-26px);}
.trt-cards i:nth-child(2){transform:rotate(0);z-index:2;}
.trt-cards i:nth-child(3){transform:rotate(18deg) translateX(26px);}

.trt-card,.trt-panel,.trt-empty,.trt-kpi,.trt-spreadhead{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 2px 10px rgba(80,50,130,.05);}
.trt-card{margin-top:18px;padding:22px 24px;}
.trt-card-h{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:16px;}
.trt-card-h h2{font-size:20px;font-weight:750;} .trt-card-h span{font-size:12.5px;color:var(--sub);} .trt-card-h b{color:var(--bad);}
.trt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.trt-field{display:flex;flex-direction:column;gap:6px;font-size:13.5px;font-weight:650;color:var(--sub);}
.trt-field b{color:var(--bad);margin-left:3px;}
.trt-in,.trt-ta{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--ink);font-size:14px;font-family:inherit;transition:border-color .16s,box-shadow .16s;}
.trt-in:focus,.trt-ta:focus{outline:none;border-color:var(--pri);box-shadow:0 0 0 3px var(--pri-soft);}
.trt-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px;}
.trt-btn{padding:10px 17px;border:1px solid var(--line);border-radius:9px;background:var(--card);color:var(--ink);font-size:14px;font-weight:650;cursor:pointer;transition:transform .14s,border-color .14s,box-shadow .14s;}
.trt-btn:hover{border-color:var(--pri);transform:translateY(-1px);box-shadow:0 3px 10px rgba(80,50,130,.1);}
.trt-btn:disabled{opacity:.5;cursor:not-allowed;}
.trt-btn-main{background:var(--pri);border-color:var(--pri);color:#fff;} .trt-btn-main:hover{filter:brightness(1.12);}
.trt-btn-ghost{background:transparent;color:var(--sub);}
.trt-msg{margin:12px 0 0;font-size:13.5px;color:var(--sub);min-height:20px;}
.trt-msg.is-err{color:var(--bad);font-weight:600;} .trt-msg.is-ok{color:var(--ok);font-weight:600;}
.trt-disclaimer{margin:10px 0 0;padding:9px 12px;border-left:3px solid var(--warn);border-radius:7px;background:var(--bg);font-size:12.5px;color:var(--sub);}
.trt-empty{margin-top:18px;padding:38px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;}
.trt-empty-ic{font-size:34px;} .trt-empty b{font-size:17px;}
.trt-empty em{max-width:620px;font-size:13.5px;color:var(--sub);line-height:1.8;}

.trt-out{margin-top:18px;}
.trt-spreadhead{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px;padding:16px 22px;margin-bottom:14px;}
.trt-spreadhead h2{font-size:22px;font-weight:750;} .trt-spreadhead span{font-size:12.5px;color:var(--sub);}
.trt-layout{padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--card);display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:14px;}
.trt-tile{width:130px;display:flex;flex-direction:column;align-items:center;gap:8px;}
.trt-face{position:relative;width:118px;height:182px;border-radius:11px;border:2px solid var(--gold);
  background:linear-gradient(160deg,var(--card),var(--pri-soft));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  box-shadow:0 5px 16px rgba(70,40,120,.16);animation:trtFlip .55s ease both;}
.trt-face:before{content:"✦";position:absolute;top:8px;left:10px;color:var(--gold);font-size:14px;}
.trt-face:after{content:"✦";position:absolute;bottom:8px;right:10px;color:var(--gold);font-size:14px;}
.trt-face .trt-glyph{font-size:32px;line-height:1;}
.trt-face .trt-name{font-family:Georgia,"Songti SC",serif;font-size:16px;font-weight:750;text-align:center;padding:0 8px;}
.trt-face .trt-orient{font-size:11.5px;padding:2px 9px;border-radius:999px;background:var(--pri);color:#fff;}
.trt-face.is-reversed{border-color:var(--bad);}
.trt-face.is-reversed .trt-orient{background:var(--bad);}
.trt-face.is-reversed .trt-glyph{transform:rotate(180deg);}
@keyframes trtFlip{from{transform:rotateY(90deg);opacity:.3;}to{transform:rotateY(0);opacity:1;}}
.trt-tile-cap{text-align:center;font-size:12px;color:var(--sub);line-height:1.6;}
.trt-tile-cap b{display:block;font-size:13px;color:var(--ink);}
.trt-layout.is-cross{display:grid;grid-template-columns:repeat(4,minmax(96px,1fr));grid-template-rows:repeat(4,auto);
  grid-template-areas:". c3 . s10" "c5 center c6 s9" ". c4 . s8" ". . . s7";gap:10px;justify-items:center;}
.trt-layout.is-cross .trt-tile{width:100%;max-width:118px;}
.trt-layout.is-cross .trt-face{width:94px;height:140px;}
.trt-layout.is-cross .trt-face .trt-glyph{font-size:24px;}
.trt-layout.is-cross .trt-face .trt-name{font-size:13px;}
.trt-slot-c3{grid-area:c3;} .trt-slot-c4{grid-area:c4;} .trt-slot-c5{grid-area:c5;} .trt-slot-c6{grid-area:c6;}
.trt-slot-s7{grid-area:s7;} .trt-slot-s8{grid-area:s8;} .trt-slot-s9{grid-area:s9;} .trt-slot-s10{grid-area:s10;}
.trt-slot-center{grid-area:center;position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;}
.trt-slot-center .trt-tile{width:auto;}
.trt-crossed{position:absolute;top:24px;left:50%;transform:translateX(-50%) rotate(90deg);opacity:.62;pointer-events:none;}

.trt-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px;}
.trt-kpi{padding:16px;display:flex;flex-direction:column;gap:3px;}
.trt-kpi span{font-size:12.5px;color:var(--sub);}
.trt-kpi b{font:800 24px/1.3 Georgia,ui-monospace,Menlo,monospace;color:var(--pri);}
.trt-kpi small{font-size:11.5px;color:var(--sub);}
.trt-panel{padding:20px 22px;margin-bottom:14px;}
.trt-h2{font-size:20px;font-weight:750;margin-bottom:14px;display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;}
.trt-h2 span{font-family:system-ui,sans-serif;font-size:12.5px;font-weight:400;color:var(--sub);}
.trt-readings{display:flex;flex-direction:column;gap:10px;}
.trt-reading{padding:13px 16px;border:1px solid var(--line);border-left:3px solid var(--pri);border-radius:9px;background:var(--bg);}
.trt-reading h3{font-size:15px;font-weight:750;margin-bottom:5px;}
.trt-reading h3 span{font-size:12px;font-weight:600;color:var(--sub);margin-right:8px;}
.trt-reading p{margin:3px 0;font-size:13.5px;color:var(--sub);line-height:1.8;}
.trt-reading p b{color:var(--ink);}
.trt-overall{padding:16px 18px;border-radius:10px;background:linear-gradient(120deg,var(--pri-soft),var(--card));border:1px solid var(--line);}
.trt-overall p{margin:0 0 10px;font-size:14px;line-height:1.85;}
.trt-overall ul{margin:0;padding-left:20px;font-size:13.5px;color:var(--sub);line-height:1.9;}
.trt-overall .trt-warn{font-size:12.5px;color:var(--bad);font-weight:650;}
.trt-tw{overflow:auto;border:1px solid var(--line);border-radius:10px;}
.trt-tb{width:100%;border-collapse:collapse;font-size:13px;min-width:680px;}
.trt-tb th,.trt-tb td{padding:9px 11px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;}
.trt-tb th{background:var(--pri-soft);font-weight:700;white-space:nowrap;}
.trt-tb tr:last-child td{border-bottom:none;} .trt-tb tr:hover td{background:var(--bg);}
.trt-ta{min-height:110px;resize:vertical;font:13.5px/1.7 ui-monospace,Menlo,monospace;}
.trt-final{margin-top:2px;}
[hidden]{display:none !important;}

@media (max-width:860px){
  .trt{padding:18px 0 40px;}
  .trt-hero{grid-template-columns:1fr;padding:22px 18px;} .trt-cards{display:none;} .trt h1{font-size:26px;}
  .trt-card,.trt-panel{padding:18px 15px;}
  .trt-grid,.trt-kpis{grid-template-columns:repeat(2,1fr);}
  .trt-layout.is-cross{grid-template-columns:repeat(2,1fr);grid-template-areas:"c3 s10" "c5 center" "c6 s9" "c4 s8" ". s7";}
  .trt-tile{width:110px;} .trt-face{width:102px;height:160px;}
}
