/* Ivory facets and recessed pips over a woven felt tray with joined oak edges. */
.table{padding:25px;background:repeating-linear-gradient(3deg,#dfbb8e11 0 4px,#8c603122 5px 6px,transparent 7px 13px),linear-gradient(105deg,#ebcfa4,#cda779 48%,#f1d6a9);border:3px solid #a37e59;border-top-color:#cfad7e;border-left-color:#caab84;border-radius:25px;box-shadow:inset 0 3px #ffe5b9,inset 2px 0 #f9deb6,inset 0 -2px #9a7353,0 6px #9c7658,0 10px #d8bc9a,0 15px 25px #8b674025;isolation:isolate}.table:before{content:'';inset:13px;border:2px solid #9b86b1;border-radius:15px;background:repeating-linear-gradient(0deg,#ffffff0d 0 1px,#6c568c08 1px 2px,transparent 2px 4px),repeating-linear-gradient(90deg,#ffffff0c 0 1px,transparent 1px 3px),radial-gradient(ellipse at 45% 25%,#e5dced,#c7badc);box-shadow:inset 0 3px 6px #584d7433,inset 0 -1px #f3eafa;z-index:-1}.table:after{content:'';position:absolute;inset:20px;border:1px dashed #f7eefba6;border-radius:12px;transform:none;background:none;pointer-events:none;z-index:-1}.tableTop{border-color:#ad97bf88;color:#88709b;padding-bottom:13px}.tableTitle{margin:25px 0 28px}.tableTitle h2{color:#68517e}.tableTitle p{color:#7d668f}.dice{gap:10px;min-height:127px;padding:0 2px}.dieWrap{max-width:88px}.die,.die.held{position:relative;border:0;padding:0;background:none;box-shadow:none;border-radius:18px;isolation:auto}.die:before,.die.held:before{display:none}.die .pip{visibility:hidden}.detailDie{position:absolute;left:-7%;top:-9%;width:114%;height:125%;overflow:visible;pointer-events:none}.die.held{transform:translateY(-5px)}.die.held .detailDie{filter:drop-shadow(0 0 2px #ffedbd)}.dieWrap small{margin-top:24px;color:#7c668c;font-size:11px;background:#e8dff080;border:1px solid #ab95c233;padding:3px 7px;border-radius:8px}.dieWrap:has(.held) small{margin-top:24px;color:#8c542f;background:#ffe0ac;border:1px solid #d4a163;padding:3px 7px;box-shadow:0 2px #b9906633}.rollArea{padding-top:14px}.rollDots{margin-bottom:14px}.rollArea p{color:#7a628c}.tableBottom{color:#7e678f;border-color:#ab91bc80}.tableBottom a{color:#7e586d}.scorecard{box-shadow:1px 2px #fef7e5,3px 4px 0 #d8bf97,6px 7px 0 #f8e8cf,0 11px 20px #ac8f6520}.scorecard:after{content:'';position:absolute;right:9px;bottom:9px;width:20px;height:20px;border-radius:2px 0 8px 0;background:linear-gradient(135deg,transparent 47%,#e8d6b4 49%,#fff7e5 55%,#f0dfc0);pointer-events:none}.scoreRow.selected{box-shadow:inset 3px 0 #d39466,0 2px #e1be9338}.rolling .die:not(.held){animation:ivoryTumble .36s cubic-bezier(.2,.6,.35,1)}@keyframes ivoryTumble{0%{transform:translateY(0) rotate(0)}28%{transform:translateY(-18px) rotate(-17deg) scale(.96)}58%{transform:translateY(-5px) rotate(12deg)}80%{transform:translateY(3px) rotate(-3deg) scale(1.03,.96)}100%{transform:none}}
@media(max-width:760px){.table{padding:22px 19px;border-radius:23px}.table:before{inset:10px;border-radius:15px}.table:after{inset:16px}.tableTitle{margin:22px 0 27px}.dice{gap:10px;min-height:109px;padding:0}.dieWrap small,.dieWrap:has(.held) small{font-size:9px;margin-top:21px;padding:2px 4px}.rollArea{padding-top:7px}.detailDie{left:-6%;width:112%}.tableTop{font-size:9px}}
@media(min-aspect-ratio:13/10) and (max-height:620px){.table{padding:13px;border-radius:16px;border-width:2px;box-shadow:inset 0 2px #ffe3b8,0 4px #9c7658,0 7px 13px #8b674025}.table:before{inset:7px;border-radius:10px}.table:after{inset:12px;border-radius:8px}.tableTitle{margin:0 0 13px}.tableTitle h2{font-size:12px}.dice{padding:0;gap:7px;min-height:68px}.dieWrap{max-width:58px}.dieWrap small,.dieWrap:has(.held) small{font-size:8px;margin-top:14px;padding:1px 3px}.die.held{transform:translateY(-3px)}.rollArea{padding-top:6px}.rollDots{margin-bottom:7px}.rollArea p{font-size:8px;margin-top:7px}.detailDie{left:-5%;width:110%;height:123%;top:-8%}.scorecard:after{display:none}}
@media(prefers-reduced-motion:reduce){.rolling .die:not(.held){animation:none}}
@media(min-width:761px) and (min-height:621px){.app{padding-top:16px}header{padding-bottom:10px}.heading{margin:14px 0 10px}.heading h1{font-size:32px}.heading .eyebrow{margin-bottom:4px}.heading h1 span{font-size:11px;margin-top:6px}.contentControls{margin-bottom:16px}.scorecard{padding:20px}.scoreRows{gap:4px}.scoreRow{min-height:35px}.tableTitle{margin:18px 0 20px}.rollArea{margin-bottom:20px}}
