:root{font-family:"Malgun Gothic","Apple SD Gothic Neo",system-ui,sans-serif;color:#e8d8bf;background:#130e0b;font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,select,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #e5c38c;outline-offset:3px}[hidden]{display:none!important}
.table-scene{position:relative;min-height:100vh;min-height:100svh;background:linear-gradient(90deg,#0d0906aa,transparent 21%,transparent 79%,#0d09068c),linear-gradient(#0b080547,#0b08051f 48%,#0b080565),url("table-bg.png") center top/cover fixed no-repeat;overflow:hidden}.table-scene:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 49% 43% at 50% 43%,#130e0b24,#0d090631 78%,#0d09065c);pointer-events:none}.site-header,.side-nav,.table-main{position:relative;z-index:1}.site-header{padding:30px 34px}.brand{display:inline-flex;align-items:center;gap:14px;color:#f0e1c9;text-decoration:none;font-family:"Noto Serif KR","Nanum Myeongjo","Batang",serif;font-size:2rem;letter-spacing:.1em;text-shadow:0 2px 12px #000}.brand-seal{display:grid;place-items:center;width:50px;height:58px;border:1px solid #bf9f75;border-radius:28px 28px 5px 5px;color:#d9b988;font-size:1.65rem;letter-spacing:0;box-shadow:inset 0 0 0 4px #1b120c,inset 0 0 0 5px #8a694d}.side-nav{position:absolute;top:140px;left:0;width:124px;display:grid}.side-nav a{display:block;padding:11px 24px;color:#cbb9a0;text-decoration:none;font-size:.91rem;letter-spacing:.05em;background:#100a0799;border-left:3px solid transparent}.side-nav a:hover,.side-nav a.active{color:#fff0d4;background:linear-gradient(90deg,#842719ab,#180d08c9);border-left-color:#cd5137}
.table-main{width:min(900px,calc(100% - 270px));margin:0 auto;padding:48px 0 42px}.home-view,.draw-view{text-align:center}.home-view h1,.draw-view h2,.result-view h2{font-family:"Noto Serif KR","Nanum Myeongjo","Batang",serif;font-size:clamp(1.65rem,2.2vw,2.15rem);font-weight:500;letter-spacing:.06em;text-shadow:0 3px 15px #000;margin:0 0 23px}.topic-field{display:grid;gap:9px;width:min(570px,100%);margin:0 auto}.topic-field label,.count-group h2,.meaning-group h2{font-family:"Noto Serif KR","Nanum Myeongjo","Batang",serif;font-size:1rem;font-weight:500;letter-spacing:.08em;margin:0}.topic-field label{text-align:left;color:#d8b88f}.topic-field select{width:100%;height:54px;padding:0 18px;color:#f5e9d4;background:#150e0bc9;border:1px solid #cbb18a;border-radius:6px;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#d0b58d 50%),linear-gradient(135deg,#d0b58d 50%,transparent 50%);background-position:calc(100% - 24px) 23px,calc(100% - 18px) 23px;background-size:6px 6px;background-repeat:no-repeat}.topic-field option{color:#291d15;background:#f2e7d5}.count-group{margin:38px auto 0}.count-group h2:before,.count-group h2:after{content:"◇";font-family:serif;color:#ad4936;font-size:.8rem;margin:0 16px}.count-options{display:grid;grid-template-columns:repeat(6,44px);justify-content:center;gap:8px;margin:17px auto 0}.count-button{height:39px;border:1px solid #8f7860;border-radius:5px;background:#1a110dcc;color:#efe0c9}.count-button:hover{border-color:#ead2aa}.count-button.active{background:#752315;border-color:#d25d44;color:#fff;box-shadow:0 0 15px #a12e205c}.meaning-group{max-width:670px;margin:29px auto 0}.meaning-title{display:flex;align-items:baseline;justify-content:center;gap:12px;margin-bottom:12px}.meaning-title h2 span{font-family:"Malgun Gothic",sans-serif;font-size:.76rem;color:#c1a78b;letter-spacing:0}.meaning-title p{font-size:.8rem;color:#b9a996;margin:0}.meanings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.meaning-label{display:grid;gap:5px;text-align:left;color:#d8c4a7;font-size:.78rem}.meaning-input{width:100%;height:37px;padding:0 10px;background:#150e0bc9;border:1px solid #8d765e;border-radius:5px;color:#f2e6d0}.meaning-input::placeholder{color:#9c8975}.ornate-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:24px;min-width:280px;min-height:67px;margin-top:29px;padding:13px 25px;background:linear-gradient(#732719,#47160f);border:1px solid #b64a32;border-radius:12px;color:#fff1db;font-family:"Noto Serif KR","Nanum Myeongjo","Batang",serif;font-size:1.25rem;letter-spacing:.1em;box-shadow:inset 0 0 0 4px #4c170fa6,inset 0 0 0 5px #a94430,0 9px 26px #0008}.ornate-button:hover:not(:disabled){filter:brightness(1.17)}.ornate-button:disabled{filter:grayscale(.7);cursor:not-allowed;opacity:.58}.ornate-button span{font-family:serif;font-size:1.35rem;color:#d7a576}
.history-view{margin:80px auto 0;padding:0 16px;border:1px solid #8d71589e;border-radius:6px;background:#100b09d9;box-shadow:0 12px 35px #0008;backdrop-filter:blur(5px)}.history-head{min-height:42px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #7560478a}.history-head h2{font-size:.88rem;font-weight:500;letter-spacing:.04em;margin:0;color:#ead1ad}.history-head h2 span{font-size:.78rem;color:#ad9075;margin-left:5px}.text-button{border:0;background:none;color:#e3c39a;font-size:.82rem;padding:8px 2px}.text-button:hover{color:#fff}.history-entry{border-bottom:1px solid #6d574347}.history-entry:last-child{border-bottom:0}.history-entry summary{list-style:none;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;min-height:45px;cursor:pointer}.history-entry summary::-webkit-details-marker{display:none}.history-entry summary strong{color:#e9d8bc;font-weight:400;font-size:.89rem}.history-entry summary span{color:#a9967e;font-size:.78rem}.history-entry summary:after{content:"⌄";color:#c7a87b;grid-column:2;grid-row:1}.history-entry[open] summary:after{transform:rotate(180deg)}.history-inner{padding:12px 0 16px;border-top:1px solid #5c4a3980}.history-cards{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:10px}.history-chip{border:1px solid #725c44;border-radius:4px;padding:6px 9px;color:#e4d0b4;background:#2c1b14;font-size:.8rem}.history-tools{display:flex;gap:12px}.history-tools button{padding:5px 0;border:0;background:none;color:#d2ad7e;font-size:.79rem}.history-tools .delete{color:#d28c78}.history-note{text-align:right;color:#a18d75;font-size:.73rem;margin:10px 0}.history-empty{padding:19px 0;text-align:center;color:#ab977d;font-size:.87rem}
.draw-view,.result-view{padding-top:15px}.view-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.view-head span{color:#d6b891;font-size:.85rem}.draw-view h2{margin-bottom:12px}.help{color:#c9b49a;font-size:.9rem;line-height:1.6}.draw-progress{color:#e4c398;font-size:.94rem;margin:22px 0 16px}.deck{display:grid;grid-auto-flow:column;grid-template-rows:repeat(3,94px);grid-auto-columns:48px;gap:9px 0;overflow-x:auto;overflow-y:hidden;padding:19px 26px 15px 10px;border:1px solid #765b44;border-radius:7px;background:#0d0908ad;scrollbar-color:#9c7150 #241710}.card-back{position:relative;z-index:1;width:72px;height:94px;border:1px solid #af9272;border-radius:5px;background:linear-gradient(125deg,#d2b99b,#aa896d);box-shadow:0 3px 9px #0009;transition:transform .16s,filter .16s;color:#80291e}.card-back:before{content:"";position:absolute;inset:5px;border:1px solid #845d47;border-radius:2px}.card-back:after{content:"☰";position:absolute;inset:0;display:grid;place-items:center;font-size:1.45rem}.card-back:hover{z-index:2;transform:translateY(-4px)}.card-back.selected{z-index:3;transform:translateY(-9px);filter:sepia(.3) brightness(1.2);border-color:#de9e71}.card-back.selected:after{content:attr(data-order);font-weight:800}.draw-view .ornate-button{margin-top:22px}
.result-view h2{text-align:center;margin-bottom:9px}.result-meta{text-align:center;color:#c8ad8e;font-size:.9rem;margin:0 0 23px}.result-cards{display:grid;gap:14px}.result-item{display:grid;grid-template-columns:130px minmax(0,1fr);gap:21px;padding:18px;background:#120c0be8;border:1px solid #8b6a4c;border-radius:8px;box-shadow:0 8px 28px #0006}.face{height:195px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;text-align:center;padding:16px 8px;background:linear-gradient(135deg,#dbbfa0,#a78468);border:2px solid #714638;border-radius:5px;color:#5c1d17;box-shadow:inset 0 0 0 5px #d4af8b,inset 0 0 0 6px #95624e}.face-no{font-size:.82rem;font-weight:800}.face-symbol{font-size:2rem}.face-name{font-family:"Noto Serif KR","Batang",serif;font-size:1.05rem;font-weight:800}.result-body{min-width:0;text-align:left}.position{color:#d49c6e;font-size:.8rem}.result-body h3{margin:2px 0 9px;color:#f2ddbd;font-family:"Noto Serif KR","Batang",serif;font-size:1.15rem}.description-title{margin:14px 0 4px;color:#d9ae81;font-size:.83rem;font-weight:700}.description-text{margin:0;color:#e3d4bf;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;font-size:.87rem}.meaning-note{padding:8px 11px;border-left:2px solid #a54a35;background:#3b2119;color:#ecd5b6;font-size:.85rem}.direction{display:inline-block;padding:3px 8px;border:1px solid #66513c;border-radius:30px;color:#c6ac89;font-size:.76rem}.direction.reversed{color:#e1a088;border-color:#a54734}.reverse-note{color:#d29b82;font-size:.81rem}.notice{position:fixed;z-index:5;left:50%;bottom:18px;transform:translateX(-50%);padding:10px 16px;background:#17100d;border:1px solid #a27856;border-radius:5px;color:#f5e1c3;opacity:0;pointer-events:none;transition:opacity .2s}.notice.show{opacity:1}
@media(max-width:1100px){.table-main{width:min(900px,calc(100% - 190px));margin-left:150px;margin-right:20px}}@media(max-width:700px){.table-scene{background:linear-gradient(#0d0906a8,#0d090675),url("table-bg.png") center top/auto 100vh fixed no-repeat}.site-header{padding:17px 17px 8px}.brand{font-size:1.45rem}.brand-seal{width:38px;height:43px;font-size:1.3rem}.side-nav{position:relative;top:auto;left:auto;width:auto;display:flex;padding:0 12px}.side-nav a{padding:9px 16px;font-size:.85rem}.table-main{width:calc(100% - 28px);margin:0 auto;padding:36px 0 28px}.home-view h1,.draw-view h2,.result-view h2{font-size:1.65rem}.count-group{margin-top:28px}.meaning-group{margin-top:24px}.meaning-title{display:block}.meaning-title p{margin-top:4px}.meanings{grid-template-columns:repeat(2,minmax(0,1fr))}.history-view{margin-top:48px}.deck{grid-template-rows:repeat(3,85px);grid-auto-columns:43px;gap:7px 0}.card-back{width:63px;height:85px}.result-item{grid-template-columns:1fr}.face{width:125px;height:180px;justify-self:center}}@media(max-width:390px){.count-options{grid-template-columns:repeat(6,1fr);gap:5px}.count-button{min-width:0}.meanings{grid-template-columns:1fr}.history-entry summary{grid-template-columns:1fr}.history-entry summary span{grid-column:1}.history-entry summary:after{grid-column:2;grid-row:1 / span 2}}

/* Keep the full tabletop width visible instead of cropping its side props. */
.table-scene{background:#130e0b url("table-bg-v2.png") center top/100% auto no-repeat}
.table-scene:before{background:radial-gradient(ellipse 49% 43% at 50% 43%,#130e0b24,#0d090631 78%,#0d09065c),linear-gradient(to bottom,transparent 50vw,#130e0b 56vw)}
.ornate-button{min-width:300px;min-height:76px;border:0;border-radius:0;background:transparent url("button-frame.svg") center/100% 100% no-repeat;box-shadow:0 12px 25px #0008;text-shadow:0 2px 5px #230805}
.ornate-button:hover:not(:disabled){filter:brightness(1.2);transform:translateY(-2px)}
.ornate-button:focus-visible{outline-offset:5px}
@media(max-width:700px){.table-scene{background-size:100% auto}.ornate-button{min-width:min(300px,100%)}}

:root{font-family:"Noto Serif KR","Batang",serif}
.brand,.home-view h1,.draw-view h2,.result-view h2,.topic-field label,.count-group h2,.meaning-group h2,.ornate-button{font-family:"MaruBuriSemiBold","MaruBuri","Noto Serif KR",serif}
.meaning-title h2 span{font-family:"Noto Serif KR",serif}
.ad-space{width:100%;min-height:120px;margin:16px auto 0}
@media(min-width:1101px){.table-main{padding-top:38px;padding-bottom:16px}.history-view{margin-top:60px;max-height:150px;display:flex;flex-direction:column}.history-head,.history-note{flex-shrink:0}#history-list{min-height:0;overflow-y:auto}}
