@font-face{font-family:Montserrat;src:url('./vendor/Montserrat.ttf') format('truetype');font-display:swap}*{box-sizing:border-box} :root{--paper:#f4f2eb;--ink:#283e35;--green:#244f43;--muted:#8a9085;--gold:#a7884e;--line:#dedfd3;--serif:Georgia,'Times New Roman',serif}body{margin:0;background:var(--paper);color:var(--ink);font:13px Montserrat,Arial,sans-serif;-webkit-font-smoothing:antialiased}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:0;background:transparent;transition:background .2s,transform .2s,color .2s}button:hover{color:var(--gold)}button:disabled{cursor:wait;opacity:.6}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:5px}input:focus,textarea:focus{outline:1px solid var(--gold);border-color:var(--gold)}button:active:not(:disabled){transform:translateY(1px)}[hidden]{display:none!important}.header{height:108px;display:flex;align-items:center;justify-content:space-between;padding:0 4.2%;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink)}.brand svg{width:51px;height:51px;color:var(--gold)}.brand>span{font:33px var(--serif);letter-spacing:9px}.brand small{display:block;font:8px Montserrat,Arial,sans-serif;letter-spacing:2.4px;margin-top:8px}nav{display:flex;align-items:center;gap:30px}nav button{font-size:12px;padding:12px 0}nav button span{margin-left:14px}.nav-line{height:24px;width:1px;background:var(--line)}button.outline{border:1px solid #bfc5b5;padding:12px 18px;border-radius:5px}.journal-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--gold);vertical-align:middle}.layout{max-width:1900px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 354px;gap:40px;padding:35px 4.2% 24px}.play-space{min-width:0}.board-heading{display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:9px;letter-spacing:1.8px;font-weight:600;margin:0;color:var(--gold)}h1{font:36px/1.2 var(--serif);font-weight:400;margin:13px 0 0;letter-spacing:-.8px}em{font-weight:400;color:#6f8068}h1 em{white-space:nowrap}.edition{text-align:right;font-size:10px;color:var(--muted);line-height:1.9;letter-spacing:1px}#board{height:clamp(440px,55vw,650px);position:relative;margin-top:0;isolation:isolate;touch-action:none}#board canvas{width:100%;height:100%;display:block;position:absolute;inset:0;outline:none;z-index:1}#loading{position:absolute;top:45%;left:30%;color:var(--muted)}.board-side-label{position:absolute;left:-14px;top:50%;font-size:8px;letter-spacing:2.2px;writing-mode:vertical-rl;transform:rotate(180deg);color:#9d9e8d;z-index:2;pointer-events:none}.board-watermark{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);font:42px var(--serif);color:#b0ad96;opacity:.6;z-index:2;pointer-events:none}.board-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:-7px;padding:0 9px}.legend{display:flex;gap:23px;color:#727b6f;font-size:10px}.legend span{display:flex;align-items:center;gap:9px}.legend i{font-size:23px;font-style:normal}.legend-arrow{color:#ad9559}.legend-snake{color:#b78168}.view-controls{display:flex;border:1px solid var(--line);border-radius:5px;overflow:hidden}.view-controls button{width:34px;height:33px;font-size:19px;border-right:1px solid var(--line)}.view-controls button:last-child{border:0}.view-controls button:hover{background:#e7e9df}.board-hint{margin-top:24px;border-top:1px solid var(--line);padding:17px 2px;display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted)}.board-hint button{margin-left:auto;font-size:10px}.live-dot{height:5px;width:5px;flex:none;background:#77957e;border-radius:50%}.sidebar{border-left:1px solid var(--line);padding-left:30px;display:flex;flex-direction:column}.session-heading{display:flex;justify-content:space-between;align-items:center;margin:3px 0 20px}.session-heading .eyebrow{font-size:8px;letter-spacing:1.3px;color:#7e8879}.session-state{font-size:9px;color:var(--gold)}.players{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}.player-chip{display:flex;gap:7px;align-items:center;border:1px solid var(--line);border-radius:20px;font-size:10px;padding:7px 10px;color:#7e8678;max-width:100%}.player-chip.active{border-color:#94a693;background:#e8ece2;color:var(--green)}.player-chip b{font-weight:400;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-chip i{width:7px;height:7px;border-radius:50%;background:var(--player)}.player-chip small{font-size:9px;color:#919784}.intention{font-size:11px;line-height:1.7;color:#7a8477;margin:0 0 18px;overflow-wrap:anywhere}.intention strong{font-weight:400;color:var(--ink)}.cell-card{background:#fcfbf7;border:1px solid #dddfd2;box-shadow:0 8px 28px #33433005;border-radius:9px;padding:23px 23px 20px;position:relative;overflow:hidden}.cell-meta{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:1.1px;color:var(--gold)}.cell-symbol{font:27px var(--serif);line-height:1}.cell-title-row{display:flex;gap:16px;align-items:center;margin:23px 0 20px}#cell-number{font:54px/1 var(--serif);color:#c5c9b5;letter-spacing:-2px}h2{font:30px/1.2 var(--serif);font-weight:400;margin:0}.cell-title-row h2{font-size:27px}.cell-title-row p{margin:6px 0 0;color:#9b9f8c;font:italic 12px var(--serif)}.cell-description{font-size:12px;line-height:1.85;color:#75806f;margin:0 0 15px}.text-button{padding:0;font-size:10px;color:#7c8b74;display:flex;gap:16px;align-items:center}.text-button span{font-size:15px}.reflection{border-top:1px solid #e5e5da;margin-top:23px;padding-top:19px}.reflection .eyebrow{font-size:8px;letter-spacing:1.4px}.reflection p{font:italic 20px/1.45 var(--serif);margin:13px 0 2px;color:#5e705b}.connection{font-size:10px;margin-top:17px;padding:11px 13px;background:#eeeee2;color:#8f804e;line-height:1.6;border-radius:4px}.note-label{font-size:9px;color:var(--muted);display:block;margin-top:18px}.note-label textarea{display:block;width:100%;resize:vertical;min-height:64px;max-height:160px;font:11px/1.5 Montserrat,Arial,sans-serif;margin-top:7px;border:1px solid var(--line);border-radius:4px;background:#f7f6f0;padding:10px;color:var(--ink)}.turn-area{margin-top:24px}.turn-info{display:flex;align-items:center;gap:15px;margin-bottom:18px}.turn-info strong{font-size:11px;font-weight:500}.turn-info p{font-size:10px;line-height:1.6;color:var(--muted);margin:6px 0 0;min-height:30px}.die{width:49px;height:49px;flex:none;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:11px;gap:4px;border-radius:10px;background:linear-gradient(135deg,#fffef9,#e5e3d5);border:1px solid #d7d7c7;box-shadow:2px 4px 0 #d4d4c4,4px 6px 9px #30462d15;transform:rotate(-9deg)}.die span{width:6px;height:6px;border-radius:50%;background:#8f7540;align-self:center;justify-self:center}.die span:first-child:last-child{grid-area:2/2}.die.rolling{animation:tumble .25s linear infinite}.primary{width:100%;display:flex;align-items:center;justify-content:space-between;background:var(--green);color:#f8f6ec;border:1px solid #204639;border-radius:5px;padding:18px 21px;font-size:12px;box-shadow:0 3px 0 #193b33;transition:background .2s,transform .2s}.primary:hover{color:white;background:#336454}.primary span{font-size:21px;line-height:12px}.save-status{text-align:center;font-size:8px;color:#9b9f91;margin-top:15px;line-height:1.7}.cell-card.landed{animation:landed 1s ease-out}.cell-card.landed:after{content:'';position:absolute;inset:0;border:2px solid #c4a465;border-radius:9px;animation:fade 1s ease-out forwards;pointer-events:none}footer{display:flex;justify-content:space-between;gap:15px;align-items:center;border-top:1px solid var(--line);padding:22px 4.2%;font-size:9px;color:#a0a38f}.footer-mark i{font-size:19px;font-style:normal;color:var(--gold);margin-left:8px}dialog{border:1px solid #d6dacd;border-radius:12px;background:#f9f8f2;color:var(--ink);width:min(630px,calc(100% - 32px));max-height:calc(100dvh - 50px);padding:40px;box-shadow:0 30px 100px #20372b35;overflow:auto}dialog::backdrop{background:#1d302c88;backdrop-filter:blur(7px)}dialog h2{font-size:42px;letter-spacing:-1px;margin:18px 0 20px}dialog .close{position:absolute;right:19px;top:13px;font-size:29px;color:#8d9786;padding:5px;line-height:1}.dialog-intro{font-size:12px;line-height:1.85;color:#7d8876}.count-row{display:flex;justify-content:space-between;align-items:center;padding:22px 0;margin-top:9px;border-top:1px solid var(--line);font-size:12px}.count-row small{display:block;margin-top:6px;font-size:9px;color:var(--muted)}.segmented{display:flex;gap:3px;border:1px solid var(--line);padding:4px;border-radius:6px}.segmented button{width:34px;height:31px;border-radius:3px}.segmented button[aria-pressed=true]{background:var(--green);color:#fff}.player-fields{display:grid;grid-template-columns:135px 1fr;gap:12px;margin-bottom:14px}.player-fields label{display:block;font-size:9px;color:#919c88}.player-fields input{display:block;width:100%;background:transparent;border:1px solid #d9ddcf;border-radius:5px;color:var(--ink);font:12px Montserrat,Arial,sans-serif;padding:12px;margin-top:7px}.setup-dialog .primary{margin-top:25px}.dialog-foot{font-size:9px;text-align:center;color:#969f8c;margin:20px 0 0}#replace-warning{font-size:10px;line-height:1.7;color:#a87b48}#reading-content{font-size:13px;line-height:1.9;color:#6e7b66}#reading-content h3{font-size:11px;color:var(--gold);letter-spacing:1px;margin-top:26px}#reading-content .question{font:italic 25px/1.5 var(--serif);padding:22px 0;border-top:1px solid var(--line);color:#6f8068}#reading-content blockquote{border-left:2px solid #b9a574;margin-left:0;padding-left:17px;overflow-wrap:anywhere}.journal-entry{border-bottom:1px solid var(--line);padding:14px 0}.journal-entry small{font-size:9px;color:#9ca58e}.journal-entry p{margin:6px 0;white-space:pre-wrap;overflow-wrap:anywhere}.cell-index{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.cell-index button{text-align:left;padding:10px;border:1px solid var(--line);border-radius:4px;font-size:10px;line-height:1.5}.cell-index b{color:var(--gold);font-size:15px;display:block;margin-bottom:3px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:var(--green);color:#fff;padding:13px 23px;font-size:11px;border-radius:6px;opacity:0;pointer-events:none;transition:.3s;z-index:20}#toast.show{opacity:1;transform:translate(-50%,0)}@keyframes tumble{to{transform:rotate(351deg)}}@keyframes landed{0%{transform:translateY(5px);box-shadow:0 0 30px #c9ac6555}100%{transform:none;box-shadow:0 8px 28px #33433005}}@keyframes fade{to{opacity:0}}@media(min-width:1600px){.layout{grid-template-columns:minmax(0,1fr) 390px;padding-top:43px}.sidebar{padding-left:35px}.cell-description{font-size:13px}.cell-card{padding:28px}.reflection p{font-size:23px}#board{height:690px}h1{font-size:42px}}@media(max-width:1100px){.layout{gap:24px;grid-template-columns:minmax(0,1fr) 320px;padding-left:3%;padding-right:3%}.sidebar{padding-left:22px}h1{font-size:29px}.edition{display:none}.cell-card{padding:20px}#board{height:520px}.legend{gap:12px;font-size:8px}.board-hint{font-size:8px}.view-controls button{width:29px}}@media(max-width:800px){.header{height:86px;padding:0 5%}.brand svg{width:38px;height:38px}.brand>span{font-size:26px;letter-spacing:6px}.brand small{font-size:6px;letter-spacing:1.5px}.header nav{gap:16px}.header nav button{font-size:10px}.header nav button span,.nav-line{display:none}.header .outline{padding:9px}.layout{display:flex;flex-direction:column;padding:25px 5%;gap:16px}.board-heading h1{font-size:30px}.eyebrow{font-size:8px}#board{height:clamp(370px,76vw,590px);margin-top:-10px}.board-side-label{left:-8px}.board-bottom{margin-top:-5px}.legend{font-size:9px;gap:20px}.board-hint{margin-top:18px;font-size:9px}.sidebar{border-left:0;border-top:1px solid var(--line);padding:24px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}.session-heading{grid-column:1/-1;margin:0}.players{grid-column:1/-1;margin:0}.intention{grid-column:1/-1;margin:0 0 7px}.cell-card{grid-column:1}.turn-area{grid-column:2;margin-top:6px;align-self:center}.cell-title-row{margin-top:15px}.cell-title-row h2{font-size:23px}.reflection p{font-size:20px}footer{font-size:8px;padding:20px 5%;flex-wrap:wrap}footer>span:nth-child(2){display:none}.board-watermark{font-size:30px;bottom:13px}}@media(max-width:520px){nav{gap:12px!important}.header nav #rules-button{display:none}.brand{gap:8px}.sidebar{display:flex;gap:0}.session-heading{margin-bottom:15px}.players{margin-bottom:12px}.intention{margin-bottom:18px}.cell-card{padding:25px}.cell-description{font-size:13px}.turn-area{margin-top:24px;align-self:stretch}.board-heading h1{font-size:27px}#board{height:375px;margin:0 -15px}.board-side-label{display:none}.board-heading .eyebrow{font-size:7px;letter-spacing:1.4px}.board-hint{font-size:8px}.legend{font-size:8px;gap:13px}.board-watermark{bottom:5px}dialog{padding:30px 24px}dialog h2{font-size:36px}.player-fields{grid-template-columns:100px 1fr}.player-fields input{font-size:11px;padding:10px}.cell-index{grid-template-columns:repeat(2,1fr)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Movement stays on the playing surface, including when the controls were below it on mobile. */
.move-banner{position:absolute;z-index:5;left:50%;top:12px;transform:translateX(-50%);width:min(550px,94%);padding:14px 19px;background:#fcfaf0ed;box-shadow:0 6px 30px #29372817;border:1px solid #c9b47b;border-radius:8px;backdrop-filter:blur(9px);pointer-events:none;text-align:center}.move-banner strong{display:block;font:21px/1.25 var(--serif);margin-top:6px}.move-banner p{font-size:10px;line-height:1.65;margin:7px 0 0;color:#728064}.move-banner button{pointer-events:auto;font-size:10px;color:var(--green);margin-top:8px}.move-banner .eyebrow{font-size:8px}.move-progress{height:3px;background:linear-gradient(90deg,#b79a54 var(--progress,0%),#e5e1ce var(--progress,0%));margin-top:10px;border-radius:2px}.move-progress:empty{display:block}.view-controls button{width:36px}.cell-card #zoom-cell{margin-bottom:12px}.player-chip.finished{border-color:#ceb979;background:#efe9d6}.reframe-button{font-size:10px;padding:12px;text-align:left;border:1px solid #bba266;border-radius:5px;margin:0 0 18px;background:#f3eedc;color:#806c3c}.question-label{font-size:12px;display:block;margin:20px 0}.question-label textarea{display:block;width:100%;margin-top:10px;border:1px solid #c9cebc;background:#fffef7;color:var(--ink);font:14px/1.7 Montserrat,Arial,sans-serif;border-radius:6px;padding:14px;resize:vertical}.keep-intention{display:block;width:100%;margin-top:15px;padding:12px;font-size:12px}.transition-route{font:italic 24px/1.5 var(--serif);color:#8f7945;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}#question-error{font-size:11px;color:#a1563f}.connection{font-size:11px;line-height:1.8}.move-banner.done .move-progress{display:none}.board-watermark{color:#9b8855}.legend-arrow{color:#bc9551}.legend-snake{color:#b47b61}
@media(max-width:800px){#reframe-button{grid-column:1/-1}.move-banner{top:0;max-width:94%;padding:10px 13px}.move-banner strong{font-size:17px}.move-banner p{font-size:9px}.move-banner .eyebrow{font-size:7px}.board-hint{gap:5px}.view-controls button{width:31px}}

.psychologist{margin-top:22px;border-top:1px solid var(--line);padding-top:19px}.psychologist>.eyebrow{font-size:8px;letter-spacing:1.2px}.psychologist p{font-size:11px;line-height:1.85;color:#65775f;margin:10px 0 0}#repeat-guidance{padding:14px;background:#eff0e3;border-radius:5px;margin-top:15px}#repeat-guidance strong{font-size:10px;color:#9c7b43}#repeat-guidance blockquote{font:italic 13px/1.6 var(--serif);margin:12px 0 0;padding-left:10px;border-left:2px solid #bcab7a;white-space:pre-wrap;overflow-wrap:anywhere}.draw-help{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:18px;border:1px solid #bea46c;background:#f6f0df;padding:12px;border-radius:5px;text-align:left;font-size:10px;line-height:1.6;color:#8c743f}.draw-help span{font-size:23px}.collection-button{width:100%;display:flex;justify-content:space-between;gap:8px;font-size:10px;margin:0 0 17px;padding:12px 0;border-bottom:1px solid var(--line);color:#807146}.collection-button span{color:var(--muted)}.audio-switch{display:flex;align-items:center;justify-content:space-between;padding:18px 0 10px;font-size:14px}.audio-switch small{display:block;font-size:10px;color:var(--muted);margin-top:6px}.audio-switch input{width:22px;height:22px;accent-color:var(--green)}.audio-range{display:block;font-size:10px;color:#7d876e;margin:12px 0 22px}.audio-range output{float:right}.audio-range input{display:block;width:100%;margin:15px 0 0;accent-color:#a88b4f}.deck-dialog{width:min(860px,calc(100% - 28px))}.deck-dialog h2{margin-bottom:12px}.deck-tabs{display:flex;border-bottom:1px solid var(--line);margin:20px 0}.deck-tabs button{padding:12px 18px;font-size:11px;border-bottom:2px solid transparent}.deck-tabs button[aria-selected=true]{border-color:var(--gold);color:var(--gold)}.card-spread{display:grid;grid-template-columns:repeat(6,1fr);gap:13px}.card-back{aspect-ratio:2/3;border-radius:7px;border:3px double #c9b27a;background:radial-gradient(ellipse at center,#527263,#1b4038);color:#dfca95;box-shadow:0 4px 8px #203a2920;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.card-back:before,.card-back:after{content:'';position:absolute;width:65%;height:65%;border:1px solid #c4ad6a80;border-radius:50%;transform:rotate(35deg)}.card-back:after{transform:rotate(-35deg)}.card-back span{font:38px var(--serif)}.card-back:hover{transform:translateY(-6px);color:#fff5ca;box-shadow:0 9px 15px #203a292b}.card-reading{display:grid;grid-template-columns:minmax(180px,1fr) 1.15fr;gap:30px;align-items:start}.metaphor-image{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:8px;background:#e5e3d5;box-shadow:0 7px 24px #28413124}.card-reading.reveal .metaphor-image{animation:card-reveal .7s ease-out}.card-reading h3{font:32px var(--serif);margin:8px 0 18px}.card-reading .card-prompt{font:italic 21px/1.5 var(--serif);color:#6c805f}.card-reading label{display:block;font-size:10px;color:#7f8d72;margin-top:24px}.card-reading textarea{display:block;width:100%;min-height:100px;margin:9px 0 12px;resize:vertical;padding:12px;border:1px solid var(--line);border-radius:5px;background:#fffdf5;font:12px/1.7 Montserrat,Arial,sans-serif;color:var(--ink)}.card-owner{font-size:9px;color:var(--gold);line-height:1.8}.card-reading .card-saved{font-size:9px;color:#829175;line-height:1.7}.card-collection{display:grid;grid-template-columns:repeat(4,1fr);gap:20px 14px}.card-collection button{text-align:left;padding:0}.card-collection img{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:6px;box-shadow:0 4px 12px #203a2917}.card-collection strong{display:block;font:18px var(--serif);margin-top:8px}.card-collection small{display:block;font-size:8px;color:var(--muted);margin-top:5px;line-height:1.5}.journal-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:15px 0}.journal-cards figure{margin:0}.journal-cards img{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:5px}.journal-cards figcaption{font-size:10px;line-height:1.7}.journal-cards p{font-size:10px;white-space:pre-wrap;overflow-wrap:anywhere}@keyframes card-reveal{from{opacity:.2;transform:perspective(800px) rotateY(-35deg) translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:800px){.collection-button{grid-column:1/-1}.card-spread{grid-template-columns:repeat(4,1fr)}.card-reading{gap:20px}.deck-dialog{padding:32px 22px}}
@media(max-width:520px){.card-spread{grid-template-columns:repeat(3,1fr);gap:12px}.card-reading{grid-template-columns:1fr}.card-reading .metaphor-image{width:min(260px,85%);margin:auto}.card-reading h3{font-size:29px}.card-collection{grid-template-columns:repeat(3,1fr)}.journal-cards{grid-template-columns:repeat(2,1fr)}}

.guidance-panel{margin-top:18px}.guidance-panel>summary{cursor:pointer;color:var(--green);font-size:14px;line-height:1.6;padding:10px 0}.guidance-panel>summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.guidance-panel .psychologist{margin-top:0}.deck-tabs button:disabled{opacity:.45;cursor:not-allowed}

.psychologist .answer-start,.answer-start{padding:12px 14px;border-left:2px solid var(--gold);background:#f6f0df;line-height:1.8}.answer-start strong{font-style:normal}.answer-start{font-style:italic}

.previous-answer{white-space:pre-wrap;overflow-wrap:anywhere}

.language-picker{display:flex;align-items:center;gap:6px;font-size:11px}.language-picker select{font:inherit;font-size:13px;min-height:44px;max-width:110px;padding:8px;border:1px solid #c8bea8;border-radius:8px;background:#faf8f1;color:#344c45}.header nav{flex-wrap:wrap}.language-picker select:focus-visible{outline:2px solid #427e71;outline-offset:3px}@media(max-width:600px){.language-picker>span{display:none}.header nav{gap:8px}.language-picker select{max-width:96px}}

.card-cell-context{margin:18px 0;padding:18px;border:1px solid #c9b77f;border-radius:12px;background:#f5f0e4}.card-cell-context h3{margin-top:0}.card-cell-context h4{font-size:14px;line-height:1.5;letter-spacing:.06em}.card-cell-context .question{font-size:20px;line-height:1.5;font-family:Georgia,serif;color:#264f43}.card-cell-context .answer-start{margin-bottom:0}
