/* Compass Cards: editorial card table inside the modern TroXinh UI. */
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500 700;font-display:swap;src:url('/assets/fonts/cormorant-garamond-vietnamese.woff2') format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500 700;font-display:swap;src:url('/assets/fonts/cormorant-garamond-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--compass-card-font:"Cormorant Garamond",Georgia,serif}
.compass-rich-row,.compass-rich-row *,.compass-transition,.compass-transition *,.cat-app-surface[data-compass],.cat-app-surface[data-compass] *{font-family:var(--compass-card-font)!important}
.compass-rich-row{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important}.compass-rich-row>.message-more{display:none}
.compass-game-host,.cc-restored{display:block;width:min(100%,800px);max-width:100%;min-width:0;margin:14px auto;box-sizing:border-box;overflow:visible}
.cc-scene,.cc-restored{--cc-paper:#fff9ee;--cc-ink:#4a2f3b;--cc-muted:#7d6b69;--cc-line:rgba(158,112,83,.25);--cc-accent:#914561;--cc-gold:#b98249;position:relative;isolation:isolate;color:var(--cc-ink);background:#fff9ee;border:1px solid var(--cc-line);border-radius:26px;overflow:hidden;box-shadow:0 18px 50px rgba(77,43,39,.12);font-family:var(--compass-card-font);text-align:left}
.cc-scene::before,.cc-restored::before{content:"";position:absolute;inset:0;z-index:-2;background-image:url('/assets/compass-cards/compass-chat-bg-desktop.webp');background-position:center top;background-size:cover;background-repeat:no-repeat;opacity:.78}.cc-scene::after,.cc-restored::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(255,250,242,.16),rgba(255,250,242,.06) 48%,rgba(255,248,237,.12));pointer-events:none}
.cc-scene{container-type:inline-size;scroll-margin-top:16px}.cc-scene *,.cc-restored *{box-sizing:border-box}.cc-scene [hidden]{display:none!important}
.cc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:26px 32px 0}.cc-head h2{font-family:var(--compass-card-font);font-size:38px;line-height:.98;margin:5px 0 0;font-weight:600;letter-spacing:-.02em}.cc-eyebrow{display:block;font-size:10px;letter-spacing:.18em;line-height:1.5;font-weight:700;color:var(--cc-muted)}
.cc-status{padding:0 32px;margin:13px 0 18px;font-size:13px;line-height:1.5;color:var(--cc-muted);min-height:20px}.cc-body{padding:0 32px 30px}
.cc-scene button,.cc-restored button{font:inherit;min-height:44px;touch-action:manipulation;cursor:pointer}.cc-scene button:disabled{cursor:default}.cc-scene button:focus-visible,.cc-restored button:focus-visible,.cc-scene summary:focus-visible{outline:3px solid #bd7891;outline-offset:4px}
.cc-primary{width:100%;padding:12px 18px;border:0;border-radius:14px;background:linear-gradient(180deg,#a15170,#873e5a);box-shadow:0 8px 20px rgba(119,47,75,.16);color:#fff;font-size:14px!important;font-weight:700!important;transition:filter .15s,transform .15s}.cc-primary:hover{filter:brightness(.96)}.cc-primary:active{transform:translateY(1px)}.cc-primary:disabled{opacity:.55}
.cc-secondary,.cc-exit{padding:9px 15px;border:1px solid var(--cc-line);border-radius:999px;background:rgba(255,251,245,.62);color:var(--cc-ink);font-size:12px!important;box-shadow:0 3px 12px rgba(89,56,49,.05)}.cc-exit{flex:none}
.cc-summary:empty{display:none}.cc-summary{margin:0 32px 20px;padding:12px 0;border-top:1px solid var(--cc-line);border-bottom:1px solid var(--cc-line)}.cc-primary-numbers,.cc-all-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;text-align:center}.cc-primary-numbers b,.cc-all-numbers b{display:block;font-size:22px;font-weight:650;color:var(--cc-accent)}.cc-primary-numbers small,.cc-all-numbers small{display:block;font-size:10px;color:var(--cc-muted);line-height:1.6}.cc-numbers summary{font-size:11px;text-align:center;color:var(--cc-muted);cursor:pointer;padding:10px 0 0;min-height:32px}.cc-all-numbers{padding:12px 0}
.cc-profile{position:relative;max-width:520px;margin:0 auto;border-top:1px solid var(--cc-line);padding:22px 132px 22px 0;min-height:330px}.cc-profile h3{font-size:19px;margin:0 0 16px}.cc-profile label{display:block;font-size:12px;color:var(--cc-muted);margin:14px 0;min-width:0;overflow:hidden}.cc-profile input{box-sizing:border-box;min-width:0;max-width:100%;display:block;width:100%;min-height:48px;margin-top:6px;padding:12px 14px;font:inherit;font-size:16px;line-height:1.3;background:rgba(255,253,248,.88);color:var(--cc-ink);border:1px solid rgba(177,91,123,.28);border-radius:12px;inline-size:100%;min-inline-size:0;max-inline-size:100%;appearance:none;-webkit-appearance:none}.cc-profile input[readonly]{background:rgba(255,255,255,.32);border-color:transparent;padding-left:0;font-weight:600}.cc-profile-actions{display:flex;gap:10px;margin:18px 0}.cc-error{color:#a23450;font-size:12px;line-height:1.5;margin:8px 0}.cc-error:empty{display:none}.cc-disclaimer{display:block;font-size:10px;line-height:1.6;color:var(--cc-muted);margin-top:16px}
.cc-cat{position:relative;width:100%;height:100%;pointer-events:none}.cc-cat-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block;opacity:0;transition:opacity 160ms ease}.cc-cat-layer.is-active{opacity:1}.cc-profile>.cc-cat{position:absolute;width:126px;height:126px;right:0;bottom:36px}.cc-mascot-zone{width:190px;height:190px;place-self:center;position:relative}.cc-scene[data-state="profile_confirmation"] .cc-profile>.cc-cat{animation:cc-cat-breathe 3.8s ease-in-out infinite}@keyframes cc-cat-breathe{50%{transform:translateY(-2px)}}
.cc-stage{position:relative;border-top:1px solid var(--cc-line);padding-top:24px;min-height:356px}.cc-reading-layout{display:grid;grid-template-columns:minmax(280px,310px) minmax(300px,1fr);gap:40px;align-items:start;justify-content:center}.cc-card-zone{min-width:0;min-height:316px;display:grid;place-items:center;position:relative}.cc-reading-rail{min-width:0;display:grid;grid-template-rows:190px auto;align-content:start;gap:8px}.cc-interpretation:empty{display:none}.cc-interpretation{min-width:0;padding:20px 22px;border:1px solid rgba(163,115,91,.2);border-radius:18px;background:rgba(255,251,244,.72);box-shadow:0 12px 32px rgba(87,56,45,.08);backdrop-filter:blur(5px)}.cc-interpretation p{font-size:16px;font-weight:400;font-style:italic;line-height:1.55;margin:10px 0 18px;color:#59414a}.cc-interpretation .cc-conditional{font-size:11px;font-style:normal;line-height:1.5;color:var(--cc-muted);margin-top:-6px}.cc-preparing .cc-card-zone{min-height:230px}.cc-preparation-mark{font-family:var(--compass-card-font);font-size:42px;color:var(--cc-gold);filter:drop-shadow(0 0 14px rgba(209,151,80,.35))}
.cc-deck{position:relative;width:116px;height:154px;z-index:2}.cc-half{position:absolute;inset:0;border:1px solid rgba(166,123,87,.44);border-radius:12px;background:#6f3e57;box-shadow:0 2px 0 #f2debd,0 5px 0 #6f3e57,0 15px 28px rgba(73,42,51,.16)}.cc-half:nth-child(2){top:-5px;bottom:5px}.cc-back-art{height:100%;width:100%;display:grid;place-items:center;color:#ecd29c;overflow:hidden;border-radius:inherit}.cc-back-art svg,.cc-back-art img{display:block;width:100%;height:100%;object-fit:cover}
.cc-spread{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}.cc-slot{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.cc-slot-number{font-family:var(--compass-card-font);font-size:14px;line-height:1;margin-bottom:7px;color:#6f4c52}.cc-slot-role{order:3;margin-top:9px;text-align:center;font-size:9px;line-height:1.25;letter-spacing:.08em;color:var(--cc-muted)}.cc-card{width:100%;max-width:168px;aspect-ratio:3/4;border:0;background:transparent;padding:0;perspective:1100px;position:relative;border-radius:16px}.cc-card-inner{display:block;position:relative;width:100%;height:100%;transform-style:preserve-3d}.cc-card-back,.cc-card-front{display:flex;flex-direction:column;position:absolute;inset:0;border:1px solid rgba(157,111,78,.28);border-radius:16px;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden;box-shadow:0 12px 28px rgba(84,47,42,.14)}.cc-card-back{background:#6b3a52}.cc-card-front{transform:rotateY(180deg);background:linear-gradient(180deg,#fffaf0,#f9efde);font-family:var(--compass-card-font);padding:12px}.cc-revealed .cc-card-inner{transform:rotateY(180deg)}.cc-card-number{position:absolute;z-index:2;top:5px;left:50%;transform:translateX(-50%);min-width:36px;padding:1px 10px 3px;border-radius:0 0 14px 14px;background:#fff8eb;border:1px solid rgba(157,111,78,.2);font-size:16px;line-height:1.1;text-align:center}.cc-illustration{flex:1;min-height:0;width:100%;overflow:hidden;border:1px solid rgba(166,120,84,.22);border-radius:10px;background:#f5eadb}.cc-illustration svg,.cc-illustration img{display:block;width:100%;height:100%;object-fit:cover}.cc-card-role{font-size:10px;font-weight:600;color:var(--cc-muted);padding:10px 3px 1px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;text-align:center}.cc-card-title{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:16px;line-height:1.04;padding:4px 2px 3px;font-weight:700;text-align:center}.cc-enabled .cc-card{outline:2px solid #b75479;outline-offset:5px;filter:drop-shadow(0 9px 14px rgba(139,55,86,.12))}
.cc-focused .cc-spread{display:block}.cc-focused .cc-slot:not(.cc-active){display:none}.cc-focused .cc-active{width:100%;align-items:center;scroll-margin-top:16px}.cc-focused .cc-active>.cc-slot-number,.cc-focused .cc-active>.cc-slot-role{display:none}.cc-focused .cc-active .cc-card{width:100%;max-width:300px}.cc-focused .cc-active .cc-card-front{padding:16px}.cc-focused .cc-active .cc-card-role{font-size:12px;padding-top:12px}.cc-focused .cc-active .cc-card-title{font-size:28px;line-height:1.02;padding:5px 3px 6px}.cc-focused .cc-active .cc-card-number{font-size:17px;min-width:42px}.cc-focused .cc-card-zone{min-height:400px}.cc-focused .cc-reading-rail{grid-template-rows:190px auto}.cc-collected .cc-card{opacity:1}
.cc-dealt:not(.cc-focused) .cc-card-zone{grid-column:1/-1;min-height:250px}.cc-dealt:not(.cc-focused) .cc-reading-rail{grid-column:1/-1;grid-template-rows:120px}.cc-dealt:not(.cc-focused) .cc-mascot-zone{width:120px;height:120px;place-self:end}.cc-dealt:not(.cc-focused) .cc-interpretation{display:none}
.cc-journey{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,130px));justify-content:center;gap:58px;margin:28px auto 0;padding:22px 70px 0;border-top:1px solid rgba(167,119,83,.2)}.cc-journey::before{content:"";position:absolute;left:20%;right:20%;top:75px;height:1px;background:linear-gradient(90deg,transparent,rgba(176,122,69,.52) 12%,rgba(176,122,69,.52) 88%,transparent)}.cc-journey-item{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;min-width:0;text-align:center;color:var(--cc-muted)}.cc-journey-number{font-family:var(--compass-card-font);font-size:14px;color:var(--cc-ink);margin-bottom:6px}.cc-journey-card{width:70px;aspect-ratio:3/4;border-radius:9px;overflow:hidden;border:1px solid rgba(156,108,76,.28);background:#6b3a52;box-shadow:0 7px 15px rgba(74,45,46,.12)}.cc-journey-card>.cc-illustration{height:100%;border:0;border-radius:0}.cc-journey-role{margin-top:8px;font-size:8px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase}.cc-journey-title{font-family:var(--compass-card-font);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin-top:4px;font-size:14px;line-height:1.08;color:var(--cc-ink)}.cc-journey-item.is-current .cc-journey-card{outline:2px solid #b75479;outline-offset:4px}.cc-stage:not(.cc-focused) .cc-journey{display:none}
.cc-result{position:relative;padding:8px 0 18px}.cc-result-hero{display:grid;grid-template-columns:minmax(0,1fr) 170px;align-items:center;gap:24px;margin-bottom:25px}.cc-result-hero>.cc-cat{width:170px;height:170px}.cc-mini-spread{display:flex;justify-content:center;gap:12px;margin:0}.cc-mini-card{width:calc((100% - 24px)/3);max-width:122px;overflow:hidden;border-radius:12px;background:#fffaf0;border:1px solid var(--cc-line);box-shadow:0 7px 18px rgba(73,60,67,.08);font-family:var(--compass-card-font);padding:7px}.cc-mini-card .cc-illustration{aspect-ratio:1.05}.cc-mini-card small{display:block;padding:6px 2px 0;font-size:9px;font-weight:600;color:var(--cc-muted);line-height:1.2;letter-spacing:.08em;text-transform:uppercase}.cc-mini-card b{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;padding:5px 2px 3px;font-size:15px;line-height:1.08;font-weight:700}.cc-result>h3{font-family:var(--compass-card-font);font-size:38px;line-height:1.05;font-weight:600;margin:8px 0 10px;letter-spacing:-.02em}.cc-result h4{font-size:12px;margin:22px 0 7px;font-weight:700}.cc-result p{font-size:13px;line-height:1.7;margin:0;color:var(--cc-muted)}.cc-result .cc-keywords{font-family:var(--compass-card-font);font-size:18px;color:var(--cc-accent);margin-bottom:13px}.cc-palette{display:flex;gap:24px;margin:12px 0}.cc-palette span{font-size:10px;line-height:1.5;color:var(--cc-muted)}.cc-palette span:before{content:'';display:block;background:var(--swatch);width:34px;height:34px;border-radius:50%;border:1px solid rgba(73,60,67,.08);margin-bottom:5px}.cc-result>.cc-primary{margin-top:24px}.cc-completed-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;min-height:48px;font-family:var(--compass-card-font);font-size:21px;font-weight:700;border-top:1px solid var(--cc-line);padding-top:10px}.cc-completed-details>summary>span{font-family:inherit;font-size:11px;color:var(--cc-accent);font-weight:500}.cc-completed-details[open]>.cc-result{padding-top:24px}.cc-completed .cc-head .cc-exit{display:none}.cc-restored{padding:24px}
@container(max-width:600px){.cc-head{padding:18px 18px 0}.cc-head h2{font-size:31px}.cc-status{padding:0 18px;margin:10px 0 15px}.cc-body{padding:0 18px 22px}.cc-summary{margin-inline:18px}.cc-stage{padding-top:18px}.cc-reading-layout{grid-template-columns:minmax(0,1fr) 88px;gap:14px}.cc-card-zone{min-height:220px}.cc-reading-rail{display:contents}.cc-mascot-zone{grid-column:2;grid-row:1;width:88px;height:88px;align-self:start;margin-top:16px}.cc-interpretation{grid-column:1/-1;grid-row:2;padding:17px;margin-top:15px}.cc-interpretation p{font-size:18px}.cc-preparing .cc-card-zone{min-height:190px}.cc-spread{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.cc-slot-number{font-size:12px}.cc-slot-role{font-size:7px}.cc-card{max-width:100px}.cc-card-front{padding:7px}.cc-card-role{font-size:9px;padding:7px 1px 0}.cc-card-title{font-size:13px;padding:3px 1px}.cc-card-number{font-size:12px;min-width:28px}.cc-dealt:not(.cc-focused) .cc-reading-layout{display:block}.cc-dealt:not(.cc-focused) .cc-mascot-zone{width:82px;height:82px;margin:12px 0 0 auto}.cc-dealt:not(.cc-focused) .cc-interpretation{display:none}.cc-focused .cc-active .cc-card{width:100%;max-width:240px}.cc-focused .cc-card-zone{min-height:320px}.cc-focused .cc-active .cc-card-front{padding:12px}.cc-focused .cc-active .cc-card-role{font-size:10px;padding-top:9px}.cc-focused .cc-active .cc-card-title{font-size:23px}.cc-focused .cc-reading-rail{display:contents}.cc-journey{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:18px 4px 0;margin-top:22px}.cc-journey::before{top:61px;left:12%;right:12%}.cc-journey-card{width:58px}.cc-journey-role{font-size:7px}.cc-journey-title{font-size:12px}.cc-profile{padding:18px 0 116px;min-height:0}.cc-profile>.cc-cat{width:108px;height:108px;right:0;bottom:10px}.cc-profile-actions{flex-wrap:wrap}.cc-result-hero{grid-template-columns:minmax(0,1fr) 98px;gap:10px}.cc-result-hero>.cc-cat{width:98px;height:98px}.cc-mini-spread{gap:7px}.cc-mini-card{padding:4px}.cc-mini-card small{font-size:7px}.cc-mini-card b{font-size:12px}.cc-result>h3{font-size:32px}}
@media(max-width:600px){.compass-rich-row{inline-size:calc(100vw - 24px)!important;max-inline-size:calc(100vw - 24px)!important;margin-inline:calc((100% - (100vw - 24px))/2)!important}.compass-game-host,.cc-restored{inline-size:100%;max-inline-size:100%;margin-inline:0}.cc-scene{border-radius:20px}.cc-scene::before,.cc-restored::before{background-image:url('/assets/compass-cards/compass-chat-bg-mobile.webp');background-position:center top}}
@container(max-width:340px){.cc-head{padding-inline:12px}.cc-status{padding-inline:12px}.cc-body{padding-inline:12px}.cc-summary{margin-inline:12px}.cc-reading-layout{grid-template-columns:minmax(0,1fr) 68px;gap:12px}.cc-mascot-zone{width:68px;height:68px}.cc-focused .cc-active .cc-card{max-width:188px}.cc-focused .cc-card-zone{min-height:251px}.cc-focused .cc-active .cc-card-title{font-size:21px}.cc-focused .cc-active .cc-card-role{font-size:9px}.cc-journey{gap:8px}.cc-journey-card{width:52px}}
@media(prefers-reduced-motion:reduce){.cc-scene *{animation:none!important;transition:none!important}.cc-revealed .cc-card-inner{transform:none!important}.cc-revealed .cc-card-back{display:none}.cc-revealed .cc-card-front{transform:none}}
.drawer-cat-extensions{display:grid;gap:8px;margin:6px 0 14px}.drawer-cat-extensions .cat-game-extension{border:1px solid #dfd6ca;background:#fbf8f0;border-radius:12px;min-height:54px;color:#493c43}.drawer-cat-extensions .cat-game-extension small{color:#807673}.cat-app-surface[data-compass] .cat-app-close{width:auto;flex:0 0 auto;min-width:44px;min-height:44px;font-size:11px;padding:0 10px}.cat-app-surface[data-compass]{border-color:#dfd6ca;background:#fbf8f0}
.cc-profile input[type="date"]::-webkit-date-and-time-value{display:block;width:100%;min-width:0;text-align:left}.cc-profile input[type="date"]::-webkit-datetime-edit{display:block;min-width:0;padding:0}.cc-profile input[type="date"]::-webkit-calendar-picker-indicator{margin-left:auto}
.cc-card:disabled{opacity:1!important}
.cc-card-title{color:var(--cc-ink)}

/* Complete square v2 card faces: frame, number and copy are baked into the artwork. */
.cc-card{aspect-ratio:1/1}
.cc-deck{width:116px;height:116px}
.cc-back-art img{object-fit:contain}
.cc-card-front{padding:0;border:0;background:transparent;box-shadow:none;overflow:visible}
.cc-card-front .cc-card-face-image{width:100%;height:100%;flex:none;border:0;border-radius:5.7%;background:transparent;overflow:hidden}
.cc-card-front .cc-card-face-image img{width:100%;height:100%;object-fit:contain}
.cc-focused .cc-active .cc-card-front{padding:0}
.cc-focused .cc-card-zone{min-height:310px}
.cc-mini-card{padding:0;border:0;background:transparent;box-shadow:none;aspect-ratio:1/1;overflow:visible}
.cc-mini-card .cc-card-face-image{width:100%;height:100%;aspect-ratio:1/1;border:0;border-radius:5.7%;background:transparent}
.cc-mini-card .cc-card-face-image img{object-fit:contain}
.cc-journey-card{aspect-ratio:1/1;width:76px}
.cc-journey-card>.cc-card-face-image{height:100%;aspect-ratio:1/1;border:0;border-radius:5.7%;background:transparent}
.cc-journey-card>.cc-card-face-image img{object-fit:contain}
@container(max-width:600px){.cc-focused .cc-card-zone{min-height:240px}.cc-journey-card{width:64px}}
@container(max-width:340px){.cc-focused .cc-card-zone{min-height:188px}.cc-journey-card{width:56px}}
.cc-profile input[type="date"]::-webkit-datetime-edit,.cc-profile input[type="date"]::-webkit-date-and-time-value{font-family:var(--compass-card-font)!important}

/* Readable Compass typography at full-screen desktop scale. */
.cc-eyebrow{font-size:13px;line-height:1.45}
.cc-status{font-size:16px;min-height:24px}
.cc-primary{font-size:17px!important;min-height:50px}
.cc-secondary,.cc-exit{font-size:15px!important}
.cc-primary-numbers b,.cc-all-numbers b{font-size:27px}
.cc-primary-numbers small,.cc-all-numbers small{font-size:13px}
.cc-numbers summary{font-size:14px}
.cc-profile h3{font-size:25px}.cc-profile label{font-size:16px}.cc-profile input{font-size:18px}.cc-error{font-size:15px}.cc-disclaimer{font-size:13px}
.cc-slot-number{font-size:17px}.cc-slot-role{font-size:12px}
.cc-interpretation p{font-size:20px}.cc-interpretation .cc-conditional{font-size:14px}
.cc-journey-card{width:92px}.cc-journey-number{font-size:17px}.cc-journey-role{font-size:11px}.cc-journey-title{font-size:17px}
.cc-mini-card{max-width:142px}.cc-result>h3{font-size:44px}.cc-result h4{font-size:17px;margin-top:25px}.cc-result p{font-size:17px;line-height:1.65}.cc-result .cc-keywords{font-size:23px}.cc-palette span{font-size:13px}.cc-completed-details>summary{font-size:25px}.cc-completed-details>summary>span{font-size:14px}
.cat-app-surface[data-compass]{font-size:14px}.cat-app-surface[data-compass] .cat-app-close{font-size:14px}
@container(max-width:600px){.cc-eyebrow{font-size:11px}.cc-status{font-size:14px}.cc-primary{font-size:15px!important}.cc-secondary,.cc-exit{font-size:13px!important}.cc-primary-numbers small,.cc-all-numbers small{font-size:11px}.cc-profile h3{font-size:22px}.cc-profile label{font-size:14px}.cc-disclaimer{font-size:11px}.cc-slot-number{font-size:14px}.cc-slot-role{font-size:9px}.cc-interpretation p{font-size:19px}.cc-interpretation .cc-conditional{font-size:12px}.cc-journey-card{width:68px}.cc-journey-number{font-size:14px}.cc-journey-role{font-size:8px}.cc-journey-title{font-size:14px}.cc-mini-card{max-width:112px}.cc-result>h3{font-size:35px}.cc-result h4{font-size:15px}.cc-result p{font-size:15px}.cc-result .cc-keywords{font-size:20px}.cc-palette span{font-size:11px}.cc-completed-details>summary{font-size:22px}.cc-completed-details>summary>span{font-size:12px}}

/* Stable shell: message, progress and action slots never enter or leave the layout. */
.cc-stage{display:grid;grid-template-rows:minmax(0,1fr) auto auto;gap:14px}.cc-reading-layout{min-height:0}.cc-cat-message{align-self:stretch;min-height:120px;padding:14px 16px;border:1px solid rgba(163,115,91,.2);border-radius:16px;background:rgba(255,251,244,.76);box-shadow:0 8px 24px rgba(87,56,45,.07);overflow:hidden}.cc-cat-message p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;margin:7px 0 0;font-size:17px;line-height:1.35}.cc-action-slot{grid-row:3;min-height:50px}.cc-action-slot .cc-primary{height:50px}.cc-journey{grid-row:2;margin-top:0}.cc-result-toggle{min-height:40px;padding:7px 14px;border:1px solid var(--cc-line);border-radius:999px;background:rgba(255,251,245,.75);color:var(--cc-accent);font:inherit;font-size:14px}.cc-result-details{display:none}.cc-result.is-expanded{height:100%;overflow-y:auto}.cc-result.is-expanded .cc-result-details{display:block}
.cc-completed .cc-head .cc-exit{display:inline-flex}
@container(max-width:600px){
 .cc-scene{height:100%;min-height:0;display:grid;grid-template-rows:auto auto auto minmax(0,1fr)}
 .cc-head{min-height:58px;padding:10px 14px 0;align-items:center}.cc-head h2{margin-top:2px;font-size:28px}.cc-head .cc-eyebrow{font-size:9px}.cc-exit{min-height:40px;padding:7px 13px}
 .cc-status{min-height:18px;margin:2px 0 5px;padding:0 14px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .cc-summary{height:52px;min-height:52px;margin:0 14px 5px;padding:5px 0;border-block:1px solid var(--cc-line);position:relative}.cc-primary-numbers{height:39px;align-items:center}.cc-primary-numbers b{font-size:20px;line-height:1}.cc-primary-numbers small{font-size:9px;line-height:1.2}.cc-numbers summary{position:absolute;right:0;bottom:-3px;z-index:3;min-height:0;padding:0;font-size:9px}.cc-all-numbers{position:absolute;inset:48px 0 auto;z-index:8;padding:10px;border:1px solid var(--cc-line);border-radius:12px;background:#fff9ee;box-shadow:0 12px 28px rgba(80,45,45,.16)}
 .cc-body{min-height:0;padding:0 10px 8px;overflow:hidden}.cc-stage{height:100%;min-height:0;padding-top:5px;grid-template-rows:minmax(0,1fr) 74px 46px;gap:6px;border-top:0}.cc-reading-layout{height:100%;grid-template-columns:minmax(0,230px) minmax(82px,1fr);gap:8px;align-items:center}.cc-card-zone{min-height:0;height:100%}.cc-reading-rail{height:100%;min-height:0;grid-template-rows:minmax(72px,42%) minmax(80px,1fr);gap:3px;align-items:center}.cc-mascot-zone{grid-column:auto;grid-row:auto;width:min(94px,100%);height:min(94px,100%);margin:0;place-self:center}.cc-cat-message{min-height:80px;height:100%;padding:8px 9px;border-radius:12px}.cc-cat-message .cc-eyebrow{font-size:8px}.cc-cat-message p{margin-top:4px;font-size:13px;line-height:1.2;-webkit-line-clamp:5}
 .cc-spread{gap:5px}.cc-card{max-width:74px}.cc-dealt:not(.cc-focused) .cc-reading-layout{display:grid}.cc-dealt:not(.cc-focused) .cc-card-zone{grid-column:1;min-height:0}.cc-dealt:not(.cc-focused) .cc-reading-rail{grid-column:2;grid-template-rows:minmax(76px,1fr) 80px}.cc-dealt:not(.cc-focused) .cc-mascot-zone{width:82px;height:82px;margin:0;place-self:center}.cc-dealt:not(.cc-focused) .cc-cat-message{display:block}.cc-focused .cc-active .cc-card{max-width:min(220px,100%)}.cc-focused .cc-card-zone{min-height:0}.cc-focused .cc-reading-rail{display:grid;grid-template-rows:minmax(82px,42%) minmax(86px,1fr)}
 .cc-journey{height:74px;min-height:74px;grid-template-columns:repeat(3,1fr);gap:8px;margin:0;padding:3px 14px 0}.cc-journey::before{top:36px}.cc-journey-card{width:54px}.cc-journey-number{margin-bottom:2px;font-size:11px}.cc-action-slot{min-height:46px}.cc-action-slot .cc-primary{height:46px;min-height:46px;padding-block:7px}
 .cc-result{height:100%;padding:4px 5px;overflow:hidden}.cc-result-hero{grid-template-columns:minmax(0,1fr) 82px;gap:8px;margin-bottom:5px}.cc-result-hero>.cc-cat{width:82px;height:82px}.cc-mini-spread{gap:5px}.cc-mini-card{max-width:72px}.cc-result>.cc-eyebrow{font-size:9px}.cc-result>h3{margin:2px 0 3px;font-size:29px}.cc-result .cc-keywords{margin-bottom:4px;font-size:17px}.cc-result .cc-reason{font-size:13px;line-height:1.3}.cc-result-toggle{min-height:34px;margin:7px 0;padding:4px 12px;font-size:12px}.cc-result>.cc-primary{min-height:44px;margin-top:7px}.cc-result>.cc-disclaimer{display:none}.cc-result.is-expanded{padding-right:8px}
}
@container(max-width:340px){.cc-head{min-height:54px;padding-inline:10px}.cc-head h2{font-size:25px}.cc-status{padding-inline:10px}.cc-summary{height:45px;min-height:45px;margin-inline:10px}.cc-primary-numbers{height:33px}.cc-primary-numbers b{font-size:17px}.cc-primary-numbers small{font-size:8px}.cc-body{padding-inline:8px}.cc-stage{grid-template-rows:minmax(0,1fr) 68px 44px}.cc-reading-layout,.cc-focused .cc-reading-layout{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 82px;gap:2px}.cc-card-zone{grid-column:1;grid-row:1}.cc-reading-rail,.cc-focused .cc-reading-rail{grid-column:1;grid-row:2;display:grid;grid-template-columns:72px minmax(0,1fr);grid-template-rows:1fr;gap:5px}.cc-mascot-zone,.cc-dealt:not(.cc-focused) .cc-mascot-zone{width:68px;height:68px}.cc-cat-message{height:76px;min-height:76px}.cc-cat-message p{font-size:12px;-webkit-line-clamp:4}.cc-focused .cc-active .cc-card{max-width:min(188px,100%)}.cc-spread{max-width:230px;margin:auto}.cc-card{max-width:70px}.cc-dealt:not(.cc-focused) .cc-reading-layout{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 72px}.cc-dealt:not(.cc-focused) .cc-card-zone{grid-column:1;grid-row:1}.cc-dealt:not(.cc-focused) .cc-reading-rail{grid-column:1;grid-row:2;grid-template-columns:68px minmax(0,1fr);grid-template-rows:1fr}.cc-journey{height:68px;min-height:68px;padding-inline:8px}.cc-journey-card{width:48px}.cc-action-slot,.cc-action-slot .cc-primary{height:44px;min-height:44px}}

/* Mobile breathing room comes from the shell grid, not scattered margins. */
@container(max-width:600px){
 .cc-head{min-height:50px;padding-top:7px}.cc-head h2{font-size:27px}.cc-status{min-height:14px;margin-block:0 3px}.cc-summary{height:42px;min-height:42px;margin-bottom:0;padding-block:3px}.cc-primary-numbers{height:34px}.cc-primary-numbers b{font-size:19px}.cc-numbers summary{bottom:-1px}
 .cc-body{padding-top:16px}.cc-stage{padding-top:0;grid-template-rows:minmax(0,1fr) 74px 50px;row-gap:16px}.cc-reading-layout{grid-template-columns:minmax(0,54%) minmax(0,1fr);column-gap:16px}.cc-reading-rail,.cc-focused .cc-reading-rail{grid-template-rows:minmax(78px,38%) minmax(0,1fr);row-gap:12px}.cc-mascot-zone{width:min(96px,100%);height:min(96px,100%)}
 .cc-cat-message{min-height:0;padding:9px 10px}.cc-cat-message p{font-size:16px;line-height:1.24;-webkit-line-clamp:6}.cc-journey{column-gap:12px}.cc-action-slot,.cc-action-slot .cc-primary{height:50px;min-height:50px}
 .cc-result:not(.is-expanded)>.cc-eyebrow,.cc-result:not(.is-expanded)>.cc-keywords{display:none}.cc-result:not(.is-expanded)>.cc-reason{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.cc-result:not(.is-expanded)>.cc-result-toggle{margin-top:9px}
}
@container(max-width:340px){
 .cc-head{min-height:48px}.cc-summary{height:38px;min-height:38px}.cc-primary-numbers{height:30px}.cc-primary-numbers b{font-size:16px}.cc-primary-numbers small{font-size:8px}
 .cc-body{padding-top:14px}.cc-stage{grid-template-rows:minmax(0,1fr) 66px 48px;row-gap:14px}.cc-reading-layout,.cc-focused .cc-reading-layout{grid-template-rows:minmax(0,1fr) 96px;row-gap:10px}.cc-reading-rail,.cc-focused .cc-reading-rail{grid-template-columns:68px minmax(0,1fr);column-gap:12px}.cc-cat-message{height:96px;min-height:96px}.cc-cat-message p{font-size:16px;line-height:1.18;-webkit-line-clamp:4}.cc-journey{height:66px;min-height:66px;column-gap:10px}.cc-journey-card{width:46px}.cc-focused .cc-active .cc-card{max-width:min(188px,100%)}
}
