:root{--bg: #0a0a0c;--bg-raise: #131315;--bg-panel: rgba(255, 255, 255, .025);--gold: #c9a24b;--gold-bright: #e9cf8a;--gold-dim: #8d7a54;--gold-faint: rgba(201, 162, 75, .14);--line: rgba(201, 162, 75, .22);--line-strong: rgba(201, 162, 75, .45);--text: #d8cdb4;--text-dim: #a3906a;--ink: #3b2f1b;--ink-dim: #6d5326;--parchment: #e6d7ae;--danger: #8a4a3a;--danger-text: #d9a08a;--serif: "Noto Serif KR", serif;--display: "Cormorant", "Noto Serif KR", serif;--ease: cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box}html{color-scheme:dark;scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:var(--serif);font-size:15px;line-height:1.7;color:var(--text);background-color:var(--bg);background-image:radial-gradient(ellipse 130% 100% at 50% 50%,transparent 55%,rgba(0,0,0,.6) 100%),radial-gradient(ellipse 90% 55% at 50% -12%,rgba(255,255,255,.045),transparent),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.045 0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E");background-attachment:fixed}::selection{background:#c9a24b59;color:#f6ecd2}.gold-text{background:linear-gradient(105deg,#8a6a2a,#d4af5e 28%,#f3e3a8,#c69a44 72%,#8a6a2a);-webkit-background-clip:text;background-clip:text;color:transparent}.orn{display:flex;align-items:center;justify-content:center;gap:12px;margin:18px auto 0;max-width:320px}.orn-line{flex:1;height:1px;background:linear-gradient(to right,transparent,var(--line-strong))}.orn-line:last-child{background:linear-gradient(to left,transparent,var(--line-strong))}.orn-gem{width:7px;height:7px;background:var(--gold);transform:rotate(45deg);box-shadow:0 0 10px #d4af5e8c;flex:none}.abyss{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;z-index:-1;pointer-events:none;opacity:0;transition:opacity 1.4s ease}.abyss.is-ready{opacity:1}.top-sentinel{position:absolute;top:0;width:1px;height:1px}.topbar{display:flex;align-items:center;gap:24px;padding:20px 36px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#08080aad;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;transition:padding .4s var(--ease),background .4s var(--ease),box-shadow .4s var(--ease)}.topbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(to right,transparent 8%,rgba(233,207,138,.55) 50%,transparent 92%);pointer-events:none}.topbar-gem{position:absolute;bottom:-4px;left:50%;width:7px;height:7px;margin-left:-3.5px;background:var(--gold);transform:rotate(45deg);box-shadow:0 0 9px #d4af5ebf;pointer-events:none;transition:opacity .3s var(--ease)}.topbar.scrolled{padding:11px 36px;background:#070709f0;box-shadow:0 16px 44px #0009}.topbar.scrolled .topbar-gem{opacity:0}.brand{font-size:18px;font-weight:700;letter-spacing:.08em;text-decoration:none;display:inline-flex;align-items:center;gap:11px;text-shadow:0 0 22px rgba(233,207,138,.25)}.brand-gem{width:9px;height:9px;background:linear-gradient(135deg,#f3e3a8,#c9a24b);transform:rotate(45deg);box-shadow:0 0 9px #e9cf8a99;flex:none;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}.brand:hover .brand-gem{transform:rotate(225deg);box-shadow:0 0 14px #e9cf8af2}.topnav{margin-left:auto;display:flex;gap:26px;flex-wrap:wrap}.topnav a{position:relative;color:var(--text-dim);text-decoration:none;font-size:14px;letter-spacing:.06em;padding:4px 0;transition:color .25s var(--ease)}.topnav a:after{content:"";position:absolute;left:50%;right:50%;bottom:-2px;height:1px;background:var(--gold);transition:left .3s var(--ease),right .3s var(--ease)}.topnav a:hover{color:var(--gold-bright)}.topnav a:hover:after,.topnav a.active:after{left:0;right:0}.topnav a.active{color:var(--gold-bright);text-shadow:0 0 16px rgba(233,207,138,.45)}.page{max-width:1060px;margin:0 auto;padding:56px 28px 40px;min-height:calc(100vh - 260px)}.page-head{text-align:center;margin-bottom:52px}.page-title{font-size:clamp(34px,5vw,44px);font-weight:700;letter-spacing:.14em;line-height:1.25;margin:0}.page-sub{font-size:13px;color:var(--text-dim);letter-spacing:.16em;margin:12px 0 0}.footer{text-align:center;padding:30px 24px 46px;border-top:1px solid rgba(201,162,75,.12);margin-top:40px}.footer .orn{margin:0 auto 18px;max-width:220px}.footer-name{font-size:15px;font-weight:700;letter-spacing:.18em;margin:0 0 6px}.footer-note{font-size:12px;color:var(--text-dim);margin:0;letter-spacing:.08em}.loading,.empty{text-align:center;color:var(--text-dim);padding:56px 0;font-size:15px;letter-spacing:.06em}.panel{background:linear-gradient(160deg,#ffffff09,#ffffff04);border:1px solid var(--line);border-radius:2px;padding:20px 22px}.plaque{position:relative}.plaque:before,.plaque:after{content:"";position:absolute;width:14px;height:14px;pointer-events:none}.plaque:before{top:5px;left:5px;border-top:1px solid var(--line-strong);border-left:1px solid var(--line-strong)}.plaque:after{bottom:5px;right:5px;border-bottom:1px solid var(--line-strong);border-right:1px solid var(--line-strong)}.status-line{display:flex;align-items:center;justify-content:center;gap:10px;margin:-20px 0 34px;font-size:15px;letter-spacing:.08em}.status-dot{width:9px;height:9px;border-radius:50%}.status-dot.on{background:var(--gold-bright);box-shadow:0 0 10px #e9cf8ae6;animation:breathe 3.2s ease-in-out infinite}.status-dot.off{background:var(--danger)}@keyframes breathe{0%,to{box-shadow:0 0 6px #e9cf8a80}50%{box-shadow:0 0 14px #e9cf8a}}.status-host{color:var(--text-dim);font-size:13px;font-family:var(--display);letter-spacing:.04em}.motd-frame{text-align:center;padding:30px 34px;margin-bottom:18px}.motd{margin:0;font-size:19px;font-style:italic;line-height:1.9;color:var(--gold-bright)}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin-bottom:16px}.metric{padding:22px 24px;transition:border-color .3s var(--ease),transform .3s var(--ease)}.metric:hover{border-color:var(--line-strong);transform:translateY(-2px)}.metric-label{font-size:12px;color:var(--gold-dim);letter-spacing:.18em;margin-bottom:10px}.metric-value{font-family:var(--display);font-size:34px;font-weight:600;color:var(--gold-bright);font-variant-numeric:tabular-nums;line-height:1.25}.metric-value-small{font-size:19px;font-family:var(--serif);font-weight:600}.metric-sub{font-size:14px;font-family:var(--serif);font-weight:400;color:var(--text-dim)}.players-panel{margin-bottom:16px}.players-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.player-chip{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--gold-bright);border:1px solid var(--line);padding:5px 12px 5px 6px;border-radius:2px;background:#00000040}.preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-top:36px}.preview{display:flex;flex-direction:column;padding:22px 24px 18px}.preview .section-h{margin:0 0 14px}.preview-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.preview-item{display:flex;align-items:center;gap:12px;padding:10px 2px;border-bottom:1px solid rgba(201,162,75,.1)}.preview-item:last-child{border-bottom:none}.preview-gem{width:7px;height:7px;background:var(--gold-dim);transform:rotate(45deg);margin:0 10px;flex:none}.preview-body{display:flex;flex-direction:column;min-width:0}.preview-title{font-size:14px;font-weight:600;color:var(--gold-bright);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-meta{font-size:12px;color:var(--text-dim)}.preview-more{margin-top:14px;align-self:flex-end;font-size:13px;color:var(--gold-dim);text-decoration:none;letter-spacing:.08em;border-bottom:1px solid transparent;transition:color .25s var(--ease),border-color .25s var(--ease)}.preview-more:hover{color:var(--gold-bright);border-bottom-color:var(--gold)}button,.btn{font-family:inherit;position:relative;background:transparent;color:var(--gold-bright);border:1px solid var(--gold);border-radius:2px;padding:10px 24px;cursor:pointer;font-size:14px;letter-spacing:.08em;text-decoration:none;display:inline-block;overflow:hidden;white-space:nowrap;transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease)}button:hover,.btn:hover{background:var(--gold-faint);border-color:var(--gold-bright)}button:active,.btn:active{transform:translateY(1px)}button:disabled{opacity:.35;cursor:default}button:disabled:hover{background:transparent;border-color:var(--gold)}.btn-sm{padding:5px 14px;font-size:12px}.btn-danger{border-color:var(--danger);color:var(--danger-text)}.btn-danger:hover{background:#8a4a3a26;border-color:#a86450}label{display:block;font-size:12px;color:var(--gold-dim);letter-spacing:.14em;margin-bottom:7px}input,select{font-family:inherit;width:100%;background:#00000059;border:1px solid rgba(201,162,75,.35);color:var(--text);padding:10px 13px;border-radius:2px;font-size:14px;transition:border-color .25s var(--ease),box-shadow .25s var(--ease)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23c9a24b' stroke-width='1.2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;cursor:pointer}select option{background:#17171a;color:var(--text)}input:focus,select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 1px #c9a24b4d,0 0 18px #c9a24b14}input::placeholder{color:#6d5f45}input[type=number]{font-family:var(--display);font-size:15px}.stat-strip{display:flex;justify-content:center;gap:16px;margin:-16px 0 40px;flex-wrap:wrap}.stat-chip{display:flex;align-items:baseline;gap:10px;border:1px solid var(--line);background:#00000040;padding:10px 22px;border-radius:2px}.stat-num{font-family:var(--display);font-size:24px;font-weight:600;color:var(--gold-bright)}.stat-cap{font-size:12px;color:var(--text-dim);letter-spacing:.14em}.goals-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:26px;align-items:start}.goal-form{display:flex;flex-direction:column;gap:18px;padding:26px 26px 28px;position:sticky;top:92px}.form-h{font-size:15px;font-weight:600;color:var(--gold-bright);letter-spacing:.2em;margin:0;text-align:center}.goal-form button[type=submit]{margin-top:4px}.form-field.narrow{flex:0 0 96px}.form-field.grow{flex:1;min-width:0}.combo{position:relative}.combo-list{position:absolute;top:calc(100% + 6px);left:0;right:0;max-height:280px;overflow-y:auto;background:#17171a;border:1px solid var(--line);z-index:20;margin:0;padding:0;list-style:none;box-shadow:0 14px 34px #000000a6}.combo-item{padding:10px 14px;cursor:pointer;font-size:14px;display:flex;justify-content:space-between;align-items:flex-start;gap:10px;transition:background .15s}.combo-item:hover,.combo-item[aria-selected=true]{background:var(--gold-faint)}.combo-item .done{color:var(--gold-dim);font-size:12px;white-space:nowrap}.combo-title{display:block;color:var(--text)}.combo-desc{display:block;color:var(--text-dim);font-size:12px;line-height:1.45;margin-top:3px}.section-h{font-size:13px;font-weight:600;color:var(--gold-dim);letter-spacing:.22em;border-bottom:1px solid var(--line);padding-bottom:9px;margin:0 0 16px}.goals-lists section+section{margin-top:38px}.goal-list{display:flex;flex-direction:column;gap:12px}.goal{position:relative;border:1px solid var(--line);border-left:2px solid var(--line-strong);background:var(--bg-panel);padding:15px 18px;border-radius:0 2px 2px 0;display:flex;flex-direction:column;gap:9px;transition:border-color .3s var(--ease),background .3s var(--ease),transform .3s var(--ease)}.goal:hover{border-color:var(--line-strong);transform:translate(2px)}.goal.completed{border-left-color:var(--gold-bright);background:#c9a24b0f}.goal.archived{opacity:.6}.goal-gem{width:7px;height:7px;background:transparent;border:1px solid var(--gold-dim);transform:rotate(45deg);flex:none}.goal-gem.lit{background:var(--gold-bright);border-color:var(--gold-bright);box-shadow:0 0 7px #e9cf8ab3}.goal-gem.dim{border-color:var(--text-dim)}.goal-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.goal-title{font-size:16px;font-weight:600;color:var(--gold-bright)}.goal-meta{font-size:12px;color:var(--text-dim);margin-left:auto}.goal-note{margin:0;font-size:14px;line-height:1.7;color:var(--text)}.goal-desc{margin:-2px 0 0;font-size:12px;line-height:1.55;color:var(--text-dim)}.goal-actions{display:flex;gap:8px;flex-wrap:wrap}.goal-done-by{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--gold-bright)}.note-edit{display:flex;gap:8px;align-items:center}.note-edit input{flex:1}.empty-panel{padding:10px 20px}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%);background:#241611;border:1px solid var(--danger);color:var(--danger-text);padding:12px 24px;border-radius:2px;font-size:14px;z-index:50;max-width:min(90vw,480px);box-shadow:0 10px 30px #0009;animation:rise .4s var(--ease) both}.player-face{image-rendering:pixelated;border:2px solid #7a5f2b;background:#17171a;display:block;flex:none}.face-fallback{display:inline-flex;align-items:center;justify-content:center;background:#17171a;border:2px solid #7a5f2b;color:var(--gold-bright);font-weight:700;flex:none}.timeline{position:relative;max-width:880px;margin:0 auto;padding:10px 0 8px}.timeline:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;margin-left:-.5px;background:linear-gradient(to bottom,transparent,var(--gold) 4%,var(--gold) 96%,transparent);box-shadow:0 0 12px #c9a24b59}.t-era{position:relative;display:flex;justify-content:center;margin:4px 0 34px;z-index:1}.t-era span{font-family:var(--serif);font-size:12.5px;font-weight:600;letter-spacing:.2em;line-height:1.5;color:#46351a;background-color:#e0cfa2;background-image:radial-gradient(ellipse 120% 130% at 50% 40%,transparent 52%,rgba(84,60,22,.25) 86%,rgba(62,42,14,.5) 100%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0.45 0 0 0 0 0.35 0 0 0 0 0.18 0 0 0 0.14 0'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23p)'/%3E%3C/svg%3E");padding:7px 24px 5px;border-radius:2px 10px 4px 12px/10px 3px 12px 4px;box-shadow:inset 0 0 16px #5c421866,0 6px 18px #0000008c;transform:rotate(-.9deg)}.t-era:nth-of-type(2n) span{transform:rotate(.7deg)}.t-entry{position:relative;width:calc(50% - 42px);margin-bottom:var(--gap, 44px)}.t-entry.reveal{opacity:1;transform:none;transition:none}.t-entry.side-l{margin-right:auto}.t-entry.side-r{margin-left:auto}.t-entry:before{content:"";position:absolute;top:26px;width:9px;height:9px;background:#d4af5e;transform:rotate(45deg);box-shadow:0 0 10px #d4af5ecc;z-index:1;opacity:0;transition:opacity .6s var(--ease) .15s}.t-entry:after{content:"";position:absolute;top:30px;width:30px;height:1px;background:linear-gradient(to right,var(--line-strong),transparent);opacity:0;transition:opacity .6s var(--ease) .15s}.t-entry.shown:before,.t-entry.shown:after{opacity:1}.t-entry.side-l:before{right:-46.5px}.t-entry.side-l:after{right:-40px;transform:scaleX(-1)}.t-entry.side-r:before{left:-46.5px}.t-entry.side-r:after{left:-40px}.t-end{position:relative;width:9px;height:9px;margin:0 auto;background:var(--gold);transform:rotate(45deg);box-shadow:0 0 12px #d4af5ecc}.ink-wrap{width:calc(var(--w, 1) * 100%);transform:rotate(var(--tilt, 0deg));border-radius:6px;box-shadow:0 8px 24px #0000;transition:transform .45s var(--ease),box-shadow .9s var(--ease)}.t-entry.shown .ink-wrap{box-shadow:0 8px 24px #0000008c;transition-delay:0s,calc(var(--ink-delay, 0s) + .3s)}.t-entry.side-l .ink-wrap{margin-left:auto}.t-entry.side-r .ink-wrap{margin-right:auto}.t-entry:hover .ink-wrap{transform:rotate(calc(var(--tilt, 0deg) * .4)) translateY(-3px)}.parchment{position:relative;background-color:#e3d2a6;color:var(--ink);border-radius:3px;padding:18px 20px 17px;box-shadow:inset 0 0 0 1px #6d532638,inset 0 0 34px #5c42186b;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:2500% 100%;mask-size:2500% 100%;-webkit-mask-position:0 0;mask-position:0 0}.t-entry.shown .parchment{animation:ink-reveal var(--ink-dur, .9s) steps(24) var(--ink-delay, 0s) forwards}@keyframes ink-reveal{0%{-webkit-mask-position:0 0;mask-position:0 0}to{-webkit-mask-position:100% 0;mask-position:100% 0}}.parchment:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:radial-gradient(ellipse 60% 55% at 32% 24%,rgba(40,28,9,.5),rgba(40,28,9,.14) 55%,transparent 82%),radial-gradient(ellipse 45% 45% at 72% 74%,rgba(40,28,9,.36),transparent 75%);mix-blend-mode:multiply;opacity:0;pointer-events:none}.t-entry.shown .parchment:after{animation:ink-dry calc(var(--ink-dur, .9s) * 2) ease-out var(--ink-delay, 0s) forwards}@keyframes ink-dry{0%{opacity:.85}40%{opacity:.5}to{opacity:0}}.parch-body{transform:rotate(var(--scrawl, 0deg))}.parch-head{display:flex;align-items:center;gap:11px}.parch-head .player-face,.parch-head .face-fallback{border-color:#5a4520;box-shadow:0 1px #fffae659,0 2px 6px #3c280a66;transform:rotate(var(--stamp, -1.2deg))}.parch-name{font-weight:700;font-size:14px;color:#33270f}.parch-date{margin-left:auto;font-size:11px;color:var(--ink-dim);text-align:right}.parch-adv{font-size:12px;letter-spacing:.18em;color:var(--ink-dim);padding-bottom:8px;margin:12px 0 10px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='5'%3E%3Cpath d='M0 3.2 Q 11 1.4 22 2.8 T 45 2.6 T 68 3.1 T 90 2.7' fill='none' stroke='%236d5326' stroke-width='1' opacity='0.55'/%3E%3C/svg%3E");background-repeat:repeat-x;background-position:left bottom;background-size:90px 5px}.parch-desc{margin:-3px 0 9px;color:var(--ink-dim);font-size:12px;line-height:1.55}.parch-text{margin:0;font-size:14px;font-style:italic;line-height:1.85;color:#2e2310;text-shadow:0 0 1px rgba(46,35,16,.25)}.fine-print{font-size:12px;color:var(--text-dim);margin-top:12px}.fine-print summary{cursor:pointer;letter-spacing:.08em}.fine-print a{color:var(--gold-dim);word-break:break-all}.fine-print.ink{color:var(--ink-dim)}.fine-print.center{text-align:center;margin-top:16px}.anvil-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:26px;align-items:start}.anvil-builder{display:flex;flex-direction:column;gap:16px}.slot{padding:20px 22px}.slot-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.slot-no{font-size:13px;font-weight:600;letter-spacing:.2em;color:var(--gold-bright)}.slot-idx{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin-right:10px;border:1px solid var(--line-strong);font-family:var(--display);font-size:12px;transform:translateY(-1px)}.anvil-bar{display:flex;align-items:flex-end;gap:22px;flex-wrap:wrap;margin:-20px 0 28px;padding-bottom:18px;border-bottom:1px solid var(--line)}.bar-group{display:flex;flex-direction:column;gap:7px}.bar-group label{margin:0}.bar-inline{display:flex;gap:8px}.bar-inline select{min-width:150px}.bar-inline .btn-sm{height:41px;flex:none}.anvil-bar select{min-width:190px}.bar-note{margin:0 0 3px auto;font-size:12px;color:var(--text-dim);letter-spacing:.06em}.ench-list{list-style:none;margin:0 0 4px;padding:0;display:flex;flex-direction:column}.ench-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(201,162,75,.1)}.ench-row:last-child{border-bottom:none}.ench-name{font-size:14px;color:var(--text);flex:1;min-width:0}.ench-row.curse .ench-name{color:var(--danger-text)}.ench-level{width:64px;flex:none;padding:5px 8px}.ench-preserve{display:inline-flex;align-items:center;gap:5px;margin:0;font-size:12px;color:var(--gold-dim);letter-spacing:0;cursor:pointer;white-space:nowrap}.ench-preserve input{width:auto;accent-color:var(--gold);cursor:pointer}.ench-x{border:none;background:transparent;color:var(--text-dim);font-size:16px;padding:0 4px;line-height:1;cursor:pointer;flex:none}.ench-x:hover{background:transparent;color:var(--danger-text)}.slot-foot{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid rgba(201,162,75,.12);padding-top:14px;margin-top:12px}.slot-foot .ench-add{flex:1;min-width:160px}.ench-none{flex:1;font-size:13px;color:var(--text-dim)}.penalty-field{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:12px;color:var(--gold-dim);letter-spacing:.06em;white-space:nowrap}.penalty-field input{width:60px;padding:6px 8px;text-align:center}.calc-status.muted{color:var(--text-dim);border-color:transparent;background:transparent;padding:10px 0}.anvil-result{position:sticky;top:92px}.result-panel{padding:24px 26px}.result-h{text-align:center}.calc-idle{font-size:13px;color:var(--text-dim);text-align:center;margin:26px 0;line-height:1.8}.calc-status{font-size:13px;color:var(--danger-text);border:1px solid var(--danger);background:#8a4a3a1f;padding:12px 14px;border-radius:2px;margin:10px 0;line-height:1.7}.result-totals{display:grid;grid-template-columns:1fr 1fr;gap:14px;text-align:center;margin-bottom:20px}.result-final{border-top:1px solid rgba(201,162,75,.15);padding-top:16px;margin-bottom:20px}.result-item-name{font-size:16px;font-weight:600;color:var(--gold-bright);margin:2px 0 6px}.result-penalty{font-size:12px;font-weight:400;color:var(--text-dim);margin-left:8px}.result-enchants{font-size:13px;color:var(--text);margin:0;line-height:1.8}.result-steps{border-top:1px solid rgba(201,162,75,.15);padding-top:16px}.step-list{list-style:none;margin:4px 0 0;padding:0;counter-reset:step}.step{counter-increment:step;padding:12px 0 12px 34px;position:relative;border-bottom:1px solid rgba(201,162,75,.1)}.step:last-child{border-bottom:none;padding-bottom:2px}.step:before{content:counter(step);position:absolute;left:0;top:13px;width:22px;height:22px;border:1px solid var(--line-strong);color:var(--gold-bright);font-family:var(--display);font-size:13px;display:flex;align-items:center;justify-content:center}.step-line{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.step-items{font-size:14px;font-weight:600;color:var(--gold-bright)}.step-cost{font-family:var(--display);font-size:15px;font-weight:600;color:var(--gold-bright);white-space:nowrap}.step-cost.over{color:var(--danger-text)}.step-detail{font-size:12px;color:var(--text-dim);margin:4px 0 0;line-height:1.7}.step-warn{font-size:12px;color:var(--danger-text);margin:5px 0 0}.offline-banner{border:1px solid var(--danger);background:#8a4a3a1a;color:var(--danger-text);padding:18px 22px;text-align:center;border-radius:2px;line-height:1.8}.rise{animation:rise .7s var(--ease) both;animation-delay:var(--d, 0s)}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0;transform:translateY(20px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.shown{opacity:1;transform:translateY(0)}.progress-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-bottom:24px}.progress-card{display:flex;flex-direction:column;align-items:stretch;text-align:left;white-space:normal;font-size:15px;letter-spacing:normal;color:var(--text);border-color:var(--line);padding:20px 22px;transition:border-color .3s var(--ease),transform .3s var(--ease),box-shadow .3s var(--ease)}.progress-card:hover{background:linear-gradient(160deg,#ffffff0d,#ffffff05);border-color:var(--line-strong);transform:translateY(-2px)}.progress-card.selected{border-color:var(--line-strong);box-shadow:0 0 18px #c9a24b2e,inset 0 0 24px #c9a24b0f}.progress-card-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.progress-name{color:var(--gold-bright);letter-spacing:.04em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-crown{margin-left:auto;flex-shrink:0;font-size:11px;color:var(--gold-bright);border:1px solid var(--line-strong);background:var(--gold-faint);padding:2px 8px;border-radius:2px;letter-spacing:.12em}.progress-count{font-size:13px;color:var(--text-dim);font-variant-numeric:tabular-nums}.progress-bar{display:block;height:6px;margin-top:12px;background:#00000073;border:1px solid var(--line);border-radius:2px;overflow:hidden}.progress-bar.slim{height:4px;margin-top:6px}.progress-fill{display:block;height:100%;background:linear-gradient(90deg,#8a6a2a,#d4af5e 60%,#f3e3a8);transition:width .6s var(--ease)}.progress-detail{padding:26px 28px}.progress-detail-head{display:flex;align-items:center;gap:16px;margin-bottom:6px;padding-bottom:18px;border-bottom:1px solid var(--line)}.progress-detail-name{margin:0;font-size:22px;font-weight:600;color:var(--gold-bright)}.progress-kinds{margin:4px 0 0;font-size:13px;color:var(--text-dim);letter-spacing:.06em}.progress-detail-percent{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;text-align:right}.progress-cat{margin-top:24px}.progress-cat-title{display:flex;align-items:baseline;justify-content:space-between;margin:0;font-size:15px;font-weight:600;color:var(--gold);letter-spacing:.12em}.progress-cat-count{font-family:var(--display);font-size:14px;color:var(--text-dim);font-variant-numeric:tabular-nums}.adv-grid{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.adv-chip{font-size:12px;color:var(--text-dim);border:1px solid var(--line);background:#00000040;padding:3px 10px;border-radius:2px;letter-spacing:.02em}.adv-chip.done{color:var(--gold-bright);border-color:var(--line-strong);background:var(--gold-faint)}@media(max-width:900px){.goals-layout,.anvil-layout{grid-template-columns:1fr}.goal-form,.anvil-result{position:static}}@media(max-width:720px){.topbar{padding:14px 18px;gap:14px}.topbar.scrolled{padding:9px 18px}.topnav{gap:16px}.page{padding:36px 18px 56px}.timeline:before{left:15px;margin-left:0}.t-era{justify-content:flex-start;padding-left:40px}.t-entry,.t-entry.side-l,.t-entry.side-r{width:calc(100% - 48px);margin-left:48px;margin-right:0}.t-entry.side-l:before,.t-entry.side-r:before{left:-37.5px;right:auto}.t-entry.side-l:after,.t-entry.side-r:after{left:-30px;right:auto;transform:none}.t-entry.side-l .ink-wrap,.t-entry.side-r .ink-wrap{margin-left:0;margin-right:auto}.t-end{margin-left:11px}.anvil-bar{gap:14px}.bar-note{margin:4px 0 0}.slot-foot{flex-direction:column;align-items:stretch}.form-field.narrow{flex:1 1 96px}.progress-grid{grid-template-columns:1fr 1fr;gap:12px}.progress-detail{padding:20px 16px}.progress-detail-head{flex-wrap:wrap}.adv-chip{font-size:11px;padding:2px 8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.rise,.reveal{opacity:1;transform:none}.t-entry .parchment{-webkit-mask-image:none!important;mask-image:none!important}.t-entry .parchment:after{display:none}.t-entry:before,.t-entry:after{opacity:1}}
