@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--gold:#ddbd7c;--muted:#aaafa5;--line:#ffffff20;--bg:#14241f}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 0,#334d3b 0,transparent 55%),#101d19;color:#f1eee2;font:14px 'DM Sans',system-ui,sans-serif;min-height:100vh}body:before{content:'';position:fixed;inset:0;pointer-events:none;opacity:.07;background:repeating-linear-gradient(115deg,transparent 0 5px,#9ca58b 6px,transparent 7px)}header{max-width:1400px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:25px 42px;border-bottom:1px solid var(--line)}a{color:inherit}.brand{display:flex;gap:12px;align-items:center;color:var(--gold);text-decoration:none;font:32px Georgia}.brand>span{font:600 16px system-ui;letter-spacing:3px}.small{display:block;font:8px system-ui;letter-spacing:1.5px;margin-top:5px;color:var(--muted)}button{font:600 12px 'DM Sans',system-ui;cursor:pointer;background:#ffffff0a;color:#edeadf;border:1px solid var(--line);border-radius:7px;padding:11px 14px;transition:background .2s,transform .2s}button:hover:not(:disabled){background:#ffffff20;transform:translateY(-1px)}button:focus-visible,a:focus-visible{outline:3px solid #f4cf86;outline-offset:4px}button:disabled{opacity:.4;cursor:not-allowed}.primary{background:var(--gold);color:#18251e;border-color:var(--gold)}.outline{border-color:#bea26966}nav{display:flex;gap:10px}main{max-width:1320px;padding:0 42px;margin:auto}.intro{display:flex;justify-content:space-between;align-items:center;padding:35px 0 25px}.eyebrow{font-size:10px;letter-spacing:2.4px;color:var(--gold);font-weight:600;margin:0 0 12px}h1{font:500 clamp(36px,4.8vw,66px)/1.05 'Cormorant Garamond',Georgia;margin:0}h1 em{color:var(--gold);font-weight:500}.intro>div>p:last-child{color:#c0c6b9;font-size:13px}.verse{font:italic 19px Georgia;color:#dfdbc9;text-align:right;max-width:285px;line-height:1.6}.verse small{display:block;font:9px system-ui;letter-spacing:2px;color:var(--muted);margin-top:8px}.health{display:flex;gap:20px;background:#0d1915b0;padding:20px 26px;border:1px solid var(--line);border-radius:12px;align-items:center;margin-bottom:24px}.heart{font-size:36px;color:#d99b87}.healthbody{flex:1}.healthlabels{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px}.healthlabels strong{letter-spacing:2px;font-size:10px}#hp{font-size:26px;letter-spacing:0;margin-left:10px}#lifeMessage{color:var(--muted);font-size:12px}.meter{height:6px;background:#ffffff12;border-radius:4px;overflow:hidden}#bar{height:100%;background:linear-gradient(90deg,#a7775a,#e3b49a);transition:width .4s}.roomcounter{border-left:1px solid var(--line);padding-left:25px;text-align:center}.roomcounter span{font-size:9px;letter-spacing:2px;color:var(--muted)}.roomcounter strong{display:block;font:30px Georgia;margin-top:3px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:22px}.table{background:radial-gradient(ellipse at center,#304c3b88,#142820aa),repeating-linear-gradient(90deg,#24403144 0 2px,#20382e55 3px 50px);border:1px solid #bfa97640;border-radius:14px;padding:25px;box-shadow:inset 0 0 60px #0004}.tabletop{display:flex;justify-content:space-between;align-items:center}h2{font:500 27px 'Cormorant Garamond',Georgia;margin:0}.pill{border:1px solid var(--line);padding:7px 10px;border-radius:20px;color:#c3cbbd;font-size:10px}.instruction{color:#b4c0b0;font-size:12px;min-height:30px;line-height:1.5}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;min-height:300px}.card{background:linear-gradient(140deg,#fcf6e7,#ddd3bb);color:#283630;border-radius:9px;box-shadow:0 7px 14px #0005;position:relative;padding:13px 10px 10px;display:flex;flex-direction:column;text-align:center;border:1px solid #e8dbbf;overflow:hidden}.card:before{content:'';position:absolute;inset:5px;border:1px solid #b7a77c66;border-radius:5px;pointer-events:none}.card .rank{align-self:flex-start;font:bold 21px Georgia;padding-left:3px}.card .symbol{font:56px Georgia;line-height:1.1;margin:8px 0}.card .type{font-size:8px;letter-spacing:2px;text-transform:uppercase;opacity:.7}.card h3{font:600 21px 'Cormorant Garamond',Georgia;margin:7px 0}.card .detail{font-size:10px;min-height:28px;margin:0 0 10px;line-height:1.4}.card button{background:#263e32;color:#f8f1df;border:0;padding:9px 4px;font-size:10px;margin-top:5px;width:100%;z-index:1}.card .buttons{margin-top:auto}.card button.alt{background:transparent;color:#41483b;border:1px solid #6d775b55}.card.blessing{background:linear-gradient(145deg,#fbede2,#e6cab9);color:#8a493f}.card.equip{background:linear-gradient(145deg,#e8eee6,#b7cbc4);color:#315951}.card.empty{background:#0b1b1540;border:1px dashed #d3c39033;box-shadow:none;justify-content:center;color:#b5bca466;font-size:30px}.tablebottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:23px}#remaining{font-size:11px;color:#bbc4b3}.tablebottom>div{display:flex;gap:7px}.tablebottom button{font-size:10px;padding:10px}.equipment,.legend{background:#101e19c0;border:1px solid var(--line);border-radius:12px;padding:23px;text-align:center}.shield{font-size:65px;color:var(--gold);line-height:1;margin:14px}.equipment h2{font-size:25px}.equipment p:not(.eyebrow){line-height:1.6;font-size:12px}.limit{background:#ffffff07;border:1px solid var(--line);border-radius:7px;padding:12px;font-size:12px;color:#e3cf9f}.legend{text-align:left;margin-top:15px;padding:17px 21px}.legend h3{font:20px Georgia;margin:0 0 14px}.legend p{font-size:11px;color:#afbbaa;line-height:1.6}.legend b{font-size:17px;padding-right:4px}.gold{color:var(--gold)}.blue{color:#a1c9bf}.pink{color:#e2aa9c}.muted{color:var(--muted)}.journal{display:flex;gap:45px;border-top:1px solid var(--line);margin-top:28px;padding:25px 0}.journal h2{font-size:23px}.journal ol{margin:0;max-height:90px;overflow:auto;flex:1;color:#b9c1b1;font-size:12px;line-height:1.9;padding-left:25px}.journal li:first-child{color:#e8debc}footer{border-top:1px solid var(--line);padding:20px 0 30px;font-size:10px;color:#98a494;line-height:1.8}footer span{float:right}footer small{display:block}.hint{padding:13px;border-left:2px solid var(--gold);background:#0002;line-height:1.6;color:#e6d9bb;font-size:12px}#result{margin-top:20px;background:#0e2019;border:1px solid var(--gold);padding:20px;border-radius:9px}dialog{max-width:640px;width:calc(100% - 30px);background:#192c23;border:1px solid #d8bd7866;border-radius:14px;color:#e7eadd;padding:32px;box-shadow:0 20px 100px #0009}dialog::backdrop{background:#020e09b8;backdrop-filter:blur(6px)}dialog p,dialog li{font-size:13px;line-height:1.8}dialog li{margin-bottom:12px}dialog ol{padding-left:19px}.close{float:right;font-size:20px;padding:1px 9px}.actions{display:flex;justify-content:flex-end;gap:10px}[hidden]{display:none!important}@media(max-width:1050px){main{padding:0 22px}.layout{grid-template-columns:1fr}.layout aside{display:grid;grid-template-columns:1fr 1fr;gap:15px}.legend{margin:0}.equipment .shield{display:none}.equipment{padding:18px}.cards{min-height:280px}.verse{display:none}}@media(max-width:620px){header{padding:18px}.brand>span{font-size:12px}.small{display:none}nav button{padding:9px;font-size:10px}main{padding:0 14px}.intro{padding:28px 3px 17px}.eyebrow{font-size:8px;letter-spacing:1.6px}.health{padding:14px;gap:10px}.heart{font-size:24px}.healthlabels{display:block}#lifeMessage{display:block;font-size:10px;margin-top:5px}.roomcounter{padding-left:13px}.table{padding:17px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card{min-height:265px}.card.empty{min-height:265px}.tablebottom{align-items:flex-start;flex-direction:column}.tablebottom>div{width:100%;flex-wrap:wrap}.layout aside{grid-template-columns:1fr}.journal{gap:18px;flex-direction:column}.journal ol{max-height:100px;flex:auto}footer span{float:none;display:block}.tabletop h2{font-size:24px}}
