.sol-app{--sol-ink:#f5f0df;--sol-gold:#ecd191;--sol-card:#fffdf5;max-width:1000px;margin:0 auto;padding:18px 14px 100px;color:var(--sol-ink);font-family:system-ui,sans-serif}.sol-app *{box-sizing:border-box}.sol-app button,.sol-app select{font:inherit;min-height:42px;border:1px solid #688473;border-radius:9px;padding:8px 12px;color:#f5f0df!important;background:#193d33!important;cursor:pointer;box-shadow:none}.sol-app button:hover:not(:disabled):not(.sol-card):not(.sol-stock):not(.sol-empty):not(.sol-primary){background:#285344!important}.sol-app .sol-primary:hover:not(:disabled){background:#f5dfb3!important;color:#182a21!important}.sol-app button:disabled{opacity:.45;cursor:default}.sol-app button:focus-visible,.sol-board-scroll:focus-visible{outline:3px solid #f9d777;outline-offset:3px}.sol-app a{color:#ecd191!important}.sol-nav{display:flex;justify-content:space-between;font-size:.85rem;gap:12px}.sol-hero{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:24px 4px}.sol-eyebrow{font-size:.7rem;letter-spacing:.18em;color:#c7d6c6;font-weight:750;margin:0 0 8px}.sol-hero h1{font-family:Georgia,serif;font-size:clamp(2.3rem,7vw,3.9rem);line-height:1.05;margin:0;color:#f5e3b6!important}.sol-hero h1 span{display:block;font:italic 1rem Georgia,serif;margin-top:12px;color:#d3d9cb}.sol-hero p:not(.sol-eyebrow){max-width:540px;color:#cdd6cd;font-size:.9rem;line-height:1.6;margin-bottom:0}.sol-hero-mark{font:110px Georgia,serif;color:#e7d09a;opacity:.85;transform:rotate(12deg)}.sol-panel{padding:18px;background:#112e26!important;border:1px solid #4b6857;border-radius:18px;box-shadow:0 10px 36px #0003;margin-bottom:18px}.sol-toolbar,.sol-actions,.sol-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.sol-app label{display:flex;align-items:center;gap:8px;font-size:.8rem;color:#d4ddcc!important}.sol-app .sol-primary{background:#ead097!important;color:#182a21!important;border-color:#ead097;font-weight:800}.sol-small{font-size:.76rem;color:#c0cdbf;line-height:1.55;margin:12px 0}.sol-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:16px 0}.sol-stats>div{padding:9px;border:1px solid #4f6c5b;border-radius:10px;background:#0a231c}.sol-stats small{display:block;font-size:.65rem;color:#b6c9b8;white-space:nowrap}.sol-stats strong{display:block;font-size:1.3rem;margin-top:4px;font-variant-numeric:tabular-nums}.sol-message{min-height:42px;line-height:1.5;padding:10px 12px;border-left:3px solid #dfca91;background:#ffffff08;font-size:.83rem}.sol-board-scroll{overflow:auto;max-width:100%;border-radius:12px;scrollbar-width:thin}.sol-board{--card-height:clamp(67px,13vw,126px);--step-up:30px;--step-down:16px;padding:14px 10px 24px;min-width:310px;position:relative;background:radial-gradient(ellipse at 45% 5%,#2a6650,#174732 65%,#123626);border:1px solid #548468;border-radius:12px;min-height:380px}.sol-board.sol-zoom{min-width:640px;--card-height:122px;--step-up:34px;--step-down:18px}.sol-top,.sol-tableau{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.sol-top{margin-bottom:25px}.sol-homes{grid-column:4/8;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.sol-cell{min-width:0}.sol-pile-label{display:block;font-size:.52rem;letter-spacing:.07em;font-weight:750;margin-bottom:6px;white-space:nowrap;color:#d7e5ce}.sol-drop{position:relative;height:var(--card-height);border:1px dashed #cce3cb60;border-radius:7px}.sol-drop.sol-column{height:var(--column-height,var(--card-height));min-height:var(--card-height);border:0}.sol-app .sol-empty{position:absolute;inset:0 0 auto;height:var(--card-height);width:100%;padding:0;border:1px dashed #d1dec373;background:#ffffff05!important;border-radius:7px;color:#d8e5cc!important;font:26px Georgia,serif;min-height:0}.sol-app .sol-stock{position:relative;height:var(--card-height);width:100%;min-height:0;padding:0;display:flex;flex-direction:column;justify-content:center;align-items:center;background:repeating-linear-gradient(45deg,#183f39,#183f39 5px,#244f43 5px,#244f43 7px)!important;border:2px solid #e9dbc1;color:#f3d7a3!important;font:30px Georgia,serif}.sol-stock small{font:11px system-ui,sans-serif;background:#163e34;padding:1px 4px;border-radius:3px}.sol-app .sol-card{position:absolute;left:0;top:0;width:100%;height:var(--card-height);min-height:0;padding:0!important;background:var(--sol-card)!important;color:#172a22!important;border:1px solid #dedbd0;border-radius:7px;box-shadow:0 2px 3px #00170935;cursor:pointer;overflow:hidden;user-select:none;touch-action:manipulation;font-family:Georgia,serif;transition:outline-color .1s}.sol-app .sol-card:hover{background:#fffdf5!important}.sol-app .sol-card.sol-red{color:#af2939!important}.sol-card .sol-corner{position:absolute;top:3px;left:4px;display:flex;gap:2px;align-items:center;font-size:clamp(13px,3vw,21px);line-height:1;font-weight:800}.sol-card .sol-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-42%);font-size:clamp(21px,5vw,47px)}.sol-card .sol-bottom{position:absolute;right:5px;bottom:4px;font-size:12px;transform:rotate(180deg)}.sol-app .sol-card.sol-back{background:repeating-linear-gradient(45deg,#244b6b,#244b6b 4px,#345975 4px,#345975 6px)!important;border:2px solid #e9dbc1;cursor:default}.sol-card.sol-back::after{content:'♠';position:absolute;inset:0;display:grid;place-items:center;color:#ecd2a0;font-size:28px}.sol-app .sol-card.sol-selected{outline:3px solid #ffc65b;outline-offset:-3px;background:#fff2cd!important}.sol-app .sol-hint{outline:3px solid #b2f591!important;outline-offset:2px}.sol-app .sol-target{outline:3px dashed #f9dba1;outline-offset:3px}.sol-idle{padding:30px 5px;text-align:center}.sol-idle>span{font:32px Georgia,serif;letter-spacing:.15em;color:#dec894}.sol-idle h2{font:1.4rem Georgia,serif;color:#f5e3b6!important}.sol-idle p{font-size:.85rem;color:#d7e2cf}.sol-actions{margin-top:14px}.sol-actions button{font-size:.8rem}.sol-rules{border-top:1px solid #506653;padding-top:14px;margin-top:16px;color:#d6dfd0}.sol-rules summary{cursor:pointer;font-weight:750;color:#ecdaaf}.sol-rules p{font-size:.85rem;line-height:1.65}.sol-result{padding:20px;margin-top:15px;text-align:center;border:1px solid #e1c279;border-radius:12px;background:#ceb55e15}.sol-result h2{font-family:Georgia,serif;color:#f0d49b!important}.sol-result p{font-size:.9rem}.sol-rank-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.sol-rank h2{font:1.8rem Georgia,serif;color:#f2dfb0!important;margin:4px 0 18px}.sol-rank-heading>p{font-size:.78rem;text-align:right;max-width:190px;color:#cedac6}.sol-rank-list{list-style:none;padding:0!important;margin:12px 0!important}.sol-rank-list li{display:grid;grid-template-columns:35px minmax(0,1fr) auto;align-items:center;gap:8px;padding:13px 2px;border-top:1px solid #476050}.sol-rank-list .sol-rank-name{overflow-wrap:anywhere}.sol-rank-list .sol-rank-info{text-align:right;font-size:.83rem}.sol-rank-info small{display:block;color:#b9cdb9;font-size:.7rem;margin-top:3px}.sol-rank-pages{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.8rem}.sol-rank-pages button{font-size:.75rem}.sol-footer{text-align:center;color:#c8d2be;font-size:.8rem}.sol-footer code{color:#efd597;background:#153629;padding:3px 7px}.sol-app [hidden]{display:none!important}#solRecovery{padding:12px;background:#492f22;border-radius:8px;margin-bottom:12px}#solRecovery span{display:block;font-size:.8rem;margin-top:9px}.sol-app.sol-busy .sol-board{opacity:.8}.sol-app.sol-busy .sol-board button{pointer-events:none}@media(max-width:520px){.sol-app{padding:12px 7px 110px}.sol-panel{padding:10px}.sol-hero{padding:20px 4px}.sol-hero-mark{font-size:65px}.sol-board{padding:10px 5px 20px;--step-up:25px;--step-down:12px}.sol-top,.sol-tableau,.sol-homes{gap:4px}.sol-top{margin-bottom:18px}.sol-stats>div{padding:7px 5px}.sol-stats strong{font-size:1.05rem}.sol-rank-heading{display:block}.sol-rank-heading>p{text-align:left;max-width:none}.sol-card .sol-bottom{display:none}.sol-zoom .sol-corner{font-size:21px}.sol-zoom .sol-center{font-size:39px}.sol-toolbar button,.sol-toolbar select{font-size:.8rem}.sol-actions{gap:6px}.sol-actions button{padding:8px;font-size:.75rem}}
