:root{--ink:#24231f;--muted:#77736a;--paper:#f7f3e9;--paper2:#eee8da;--red:#a33d32;--red2:#70271f;--gold:#ba9864;--line:#d8d0bf;--dark:#1e201e;--green:#405b4a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#e7e1d4;color:var(--ink);font-family:Noto Sans KR,sans-serif;min-height:100vh}.grain{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.23;z-index:10;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E")}.topbar{height:82px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;background:#1e201ef7;color:#eee9dc;position:sticky;top:0;z-index:20;border-bottom:1px solid #42433e}.brand{display:flex;align-items:center;gap:13px;color:inherit;text-decoration:none}.brand-mark{display:grid;place-items:center;width:39px;height:43px;border:1px solid var(--gold);font:700 25px Gowun Batang;color:var(--gold);clip-path:polygon(50% 0,100% 14%,100% 83%,50% 100%,0 83%,0 14%)}.brand strong{font:700 14px Gowun Batang;letter-spacing:.16em;display:block}.brand small{font-size:10px;color:#9c998f;letter-spacing:.14em}.topbar nav{align-self:stretch;display:flex}.nav-link{border:0;border-bottom:2px solid transparent;background:none;color:#96968f;padding:0 28px;font:500 13px Noto Sans KR;cursor:pointer}.nav-link span{font:12px Gowun Batang;margin-right:9px;color:#6c6e68}.nav-link:hover{color:#eee9dc}.nav-link.active{color:#eee9dc;border-color:var(--red);background:#ffffff06}.system-status{font:10px monospace;color:#83877e;letter-spacing:.1em}.system-status i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#7d9a80;box-shadow:0 0 8px #7d9a80;margin-right:7px}.page{display:none;min-height:calc(100vh - 82px);padding-bottom:100px}.page.active{display:block}.hero{background:var(--dark);color:#ece7da;padding:72px max(6vw,calc((100vw - 1240px)/2));position:relative;overflow:hidden;border-bottom:1px solid #343632}.hero:after{content:"Ⅶ";position:absolute;right:7vw;top:-57px;font:260px Gowun Batang;color:transparent;-webkit-text-stroke:1px rgba(186,152,100,.13);transform:rotate(7deg)}.hero.compact:after{content:"Ⅱ"}.eyebrow{font:600 10px Noto Sans KR;letter-spacing:.26em;color:var(--red);margin:0 0 16px}.hero h1{font:400 clamp(38px,5vw,64px)/1.19 "Gowun Batang";margin:0 0 20px;letter-spacing:-.04em}.hero h1 em{color:#c8a875;font-style:normal}.hero>p:last-of-type{font:400 14px/1.8 Gowun Batang;color:#98988f;margin:0}.workspace{width:min(1240px,90vw);margin:-1px auto 0;position:relative}.paper-card{background:var(--paper);border:1px solid var(--line);box-shadow:0 10px 35px #312a1e14;position:relative}.paper-card:before{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;border:1px solid rgba(121,110,88,.12);pointer-events:none}.validator-layout{display:grid;grid-template-columns:280px 1fr;gap:28px;align-items:start;padding-top:38px}.score-panel{padding:28px 26px;position:sticky;top:120px}.card-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:25px}.card-heading span{font:700 18px Gowun Batang}.card-heading small{font:600 9px monospace;letter-spacing:.12em;color:#9c9589}.score-ring{--progress:0deg;width:142px;height:142px;border-radius:50%;margin:18px auto;background:conic-gradient(var(--red) var(--progress),#ddd5c7 0);display:grid;place-items:center;position:relative}.score-ring:before{content:"";width:118px;height:118px;border-radius:50%;background:var(--paper);position:absolute}.score-ring div{position:relative}.score-ring strong{font:400 42px Gowun Batang}.score-ring span{color:var(--muted);font-size:12px}.score-message{text-align:center;font:700 14px Gowun Batang;padding-bottom:20px;border-bottom:1px solid var(--line)}.check-list{margin:20px 0}.check-row{display:flex;gap:12px;align-items:center;padding:10px 0}.check-icon{width:26px;height:26px;border:1px solid var(--line);display:grid;place-items:center;border-radius:50%;font-size:11px;color:#999}.check-row.valid .check-icon{background:var(--green);color:#fff;border-color:var(--green)}.check-row.over .check-icon{background:var(--red);color:#fff;border-color:var(--red)}.check-row div{flex:1;display:flex;justify-content:space-between;align-items:center}.check-row b{font:600 12px}.check-row small{font:11px monospace;color:#8d887f}.secondary-btn,.primary-btn,.copy-all{height:42px;border:1px solid var(--line);background:transparent;font:600 12px Noto Sans KR;cursor:pointer}.secondary-btn{width:100%}.secondary-btn:hover{background:#ebe5d8}.form-column{display:flex;flex-direction:column;gap:28px}.section-card{padding:33px 38px}.section-title{display:flex;align-items:center;justify-content:space-between}.section-title>div:first-child{display:flex;align-items:center;gap:14px}.section-number{display:grid;place-items:center;width:31px;height:31px;background:var(--ink);color:#eee9dc;font:14px Gowun Batang}.section-title h2,.preview-header h2,.guide-heading h2{font:700 24px Gowun Batang;margin:0}.total-badge{font-family:monospace}.total-badge span{font-size:28px}.total-badge small{color:#999}.optional-label{font-size:10px;color:#999;border:1px solid var(--line);padding:5px 8px}.section-desc{font-size:12px;color:var(--muted);margin:13px 0 27px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.stat-item{padding:17px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#ffffff38}.stat-label{display:flex;justify-content:space-between;align-items:flex-start}.stat-label b{font:700 15px Gowun Batang}.stat-label small{display:block;font:9px monospace;color:#9a958b;margin-top:3px}.info-btn{border:0;background:none;color:#999;cursor:pointer}.stat-input{width:100%;border:0;border-bottom:1px solid #aaa398;background:transparent;padding:11px 2px 5px;margin-top:8px;font:25px Gowun Batang;outline:0}.stat-input:focus{border-color:var(--red)}.skill-columns{display:grid;grid-template-columns:1fr 1fr;gap:45px}.skill-head{display:flex;align-items:center;justify-content:space-between}.skill-head b{font:700 14px Gowun Batang}.skill-head small{display:block;font:8px monospace;color:#999;margin-top:3px}.skill-head>span{font:11px monospace;color:#999}.skill-head>span strong{font-size:20px;color:var(--ink)}.progress{height:3px;background:#ddd6c9;margin:13px 0 17px}.progress i{height:100%;display:block;background:var(--red);width:0;transition:.25s}.skill-row{display:grid;grid-template-columns:1fr 70px 27px;gap:8px;margin:8px 0}.skill-row input{min-width:0;border:1px solid var(--line);background:#fbf9f3;padding:9px 10px;font:11px Noto Sans KR;outline:none}.skill-row input:focus{border-color:#9c8771}.remove-skill{border:0;background:none;color:#aaa;cursor:pointer;font-size:15px}.remove-skill:hover{color:var(--red)}.add-btn{width:100%;border:1px dashed #c8c0b1;background:transparent;color:#777168;padding:9px;margin-top:8px;cursor:pointer;font-size:11px}.guide-section{margin-top:30px}.guide-heading{text-align:center;margin-bottom:22px}.guide-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin-bottom:13px}.guide-tabs button{border:1px solid var(--line);background:#efe9dc;padding:8px 13px;font:600 11px Noto Sans KR;cursor:pointer}.guide-tabs button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.guide-card{padding:30px 34px}.guide-card h3{font:700 21px Gowun Batang;margin:0}.guide-card .guide-intro{font:12px/1.7 Noto Sans KR;color:var(--muted);margin:8px 0 22px}.level-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.level{padding:16px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.level strong{font:700 18px Gowun Batang;color:var(--red)}.level b{display:block;font-size:11px;margin:5px 0}.level p{font-size:10px;line-height:1.6;color:var(--muted);margin:0}.formatter-layout{display:grid;grid-template-columns:minmax(420px,.9fr) minmax(420px,1.1fr);gap:35px;padding-top:38px}.editor-panel{padding:30px 32px}.type-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:23px}.type-btn{border:1px solid var(--line);background:#eee8dc;padding:11px 4px;cursor:pointer;color:#6d6961}.type-btn b{display:block;font:600 11px Noto Sans KR}.type-btn small{font:9px monospace}.type-btn.active{background:var(--ink);color:#f3ede1;border-color:var(--ink)}.field-label{font:600 11px Noto Sans KR;display:block;margin:15px 0 8px}.field-label span{float:right;font:10px Noto Sans KR;color:#aaa}.text-input,textarea{width:100%;border:1px solid var(--line);background:#fbf9f3;outline:none;padding:12px;font-family:Noto Sans KR;color:var(--ink)}.text-input:focus,textarea:focus{border-color:#9a8570}.editor-label{display:flex;justify-content:space-between;align-items:end}.editor-label span{font:10px monospace;color:#999;margin-bottom:8px}textarea{height:265px;resize:vertical;font:13px/1.8 Gowun Batang}.syntax-help{display:flex;gap:15px;padding:12px 0;color:#898379;font-size:10px}.syntax-help code{color:var(--red)}.editor-actions{display:flex;gap:9px;margin-top:8px}.editor-actions button{flex:1}.primary-btn{background:var(--red);color:#fff;border-color:var(--red)}.primary-btn:hover{background:var(--red2)}.preview-header{height:61px;display:flex;justify-content:space-between;align-items:flex-start}.preview-header .eyebrow{margin-bottom:5px}.copy-all{width:95px;color:var(--red);border-color:#bfaea1}.chat-window{background:#e9e5df;border:1px solid #c9c3ba;box-shadow:0 12px 30px #352e241f}.chat-top{height:39px;background:#302f2c;display:flex;align-items:center;justify-content:center;position:relative}.chat-top>span{position:absolute;left:15px;display:flex;gap:5px}.chat-top i{width:6px;height:6px;border-radius:50%;background:#6e6d68}.chat-top small{color:#92918b;font:8px monospace;letter-spacing:.18em}.chat-body{height:468px;overflow-y:auto;padding:20px}.empty-state{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9a968e}.empty-state span{font-size:24px;color:#b7a17d}.empty-state b{font:700 14px Gowun Batang;margin:13px 0 5px}.empty-state p{font-size:10px}.chat-message{position:relative;background:#fff;border-left:3px solid var(--red);padding:14px 58px 14px 16px;margin-bottom:10px;font:13px/1.65 Gowun Batang;box-shadow:0 2px 5px #322d260f;animation:messageIn .25s ease}.chat-message.emote{border-left-color:#b28743;background:#fcf7e9;font-style:italic}.chat-message.npc{border-left-color:#424d59}.speaker-name{display:block;color:#6f7680;font:700 10px Noto Sans KR;margin-bottom:5px}.chat-message strong{color:#842b23}.chat-message em{color:#73614d}.message-copy{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:1px solid #ddd6ca;background:#faf8f2;width:38px;height:30px;color:#777;opacity:0;cursor:pointer;font-size:10px}.chat-message:hover .message-copy{opacity:1}.macro-code{display:block;font:8px monospace;color:#aaa;margin-top:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.copy-note{text-align:center;color:#999;font-size:10px}.toast{position:fixed;left:50%;bottom:30px;transform:translate(-50%,20px);background:#252621;color:#eee9dc;padding:12px 22px;font-size:11px;opacity:0;pointer-events:none;transition:.25s;z-index:30}.toast.show{opacity:1;transform:translate(-50%)}@keyframes messageIn{0%{opacity:0;transform:translateY(6px)}}@media(max-width:900px){.topbar{padding:0 20px}.system-status{display:none}.nav-link{padding:0 14px}.nav-link span{display:none}.validator-layout,.formatter-layout{grid-template-columns:1fr}.score-panel{position:relative;top:auto}.stat-grid{grid-template-columns:repeat(2,1fr)}.score-panel{display:grid;grid-template-columns:1fr 1fr;gap:15px}.score-panel .card-heading,.score-panel .secondary-btn{grid-column:1/-1}.skill-columns{gap:20px}.level-grid{grid-template-columns:1fr}.chat-body{height:420px}}@media(max-width:600px){.topbar{height:auto;min-height:74px;flex-wrap:wrap;padding-top:12px}.brand{margin-bottom:10px}.topbar nav{width:100%;height:44px;order:2}.nav-link{flex:1}.page{min-height:calc(100vh - 118px)}.hero{padding:48px 6vw}.hero h1{font-size:38px}.hero>p:last-of-type br{display:none}.workspace{width:92vw}.validator-layout{padding-top:20px}.section-card,.editor-panel{padding:25px 20px}.score-panel{display:block}.stat-grid{grid-template-columns:1fr 1fr}.skill-columns{grid-template-columns:1fr}.type-picker{grid-template-columns:1fr 1fr}.formatter-layout{padding-top:20px}.syntax-help{flex-wrap:wrap}.guide-card{padding:24px 20px}}html{font-size:14px}body{font-size:14px;line-height:1.65}button{font-size:12px!important;font-weight:700!important}input,textarea,select{font-size:14px!important}.hero>p:last-of-type,.section-desc,.guide-card .guide-intro,.level p,.empty-state p,.copy-note,.creation-guide-title>p:last-child,.creation-step-body,.creation-step-body p,.creation-step-body li{font-size:14px!important}.check-row b,.skill-head b,.field-label,.syntax-help,.investigator-skill-name,.meaning-grid span,.meaning-grid b,.rule-table,.db-table b,.db-table i,.final-order li{font-size:14px!important}.brand small,.card-heading small,.stat-label small,.skill-head small,.optional-label,.type-btn small,.editor-label span,.macro-code,.speaker-name,.derived-card small,.derived-card em,.skill-budget-row span,.skill-budget-row span small,.skill-budget-row strong small,.investigator-skill-head,.investigator-skill-name small,.base-score,.formula-title span,.formula-grid span,.formula-grid small,.creation-step summary small,.rule-table small,.eyebrow,.system-status{font-size:12px!important}.nav-link,.secondary-btn,.primary-btn,.copy-all,.add-btn,.type-btn b,.guide-tabs button,.section-reset,.message-copy{font-size:12px!important;font-weight:700!important}.stat-input,.derived-card input{font-size:26px!important}.total-badge span{font-size:28px!important}.score-ring strong{font-size:42px!important}.guide-card h3,.formula-title h3,.final-order h3{font-size:20px!important}.section-title h2,.preview-header h2,.guide-heading h2{font-size:24px!important}.creation-guide-title h2{font-size:29px!important}@media(max-width:600px){.hero h1{font-size:38px!important}.section-actions .total-badge span{font-size:21px!important}}.derived-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.derived-card{border:1px solid var(--line);background:#ffffff3d;padding:18px}.derived-card>span{display:flex;justify-content:space-between;align-items:center}.derived-card b{font:700 16px Gowun Batang}.derived-card small{font:9px monospace;color:#999}.derived-card input{width:100%;border:0;border-bottom:1px solid #aaa398;background:transparent;padding:10px 2px 5px;font:26px Gowun Batang;outline:0}.derived-card input:focus{border-color:var(--red)}.derived-card em{display:block;min-height:28px;margin-top:9px;color:#908a80;font: 9px/1.5 Noto Sans KR}.skill-budget-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:22px}.skill-budget-row>div{position:relative;border:1px solid var(--line);padding:13px 14px 17px;display:flex;justify-content:space-between;overflow:hidden}.skill-budget-row span{font:600 11px Noto Sans KR}.skill-budget-row strong{font:18px monospace}.skill-budget-row strong small{font-size:10px;color:#999}.skill-budget-row i{position:absolute;left:0;right:0;bottom:0;height:3px;background:#ddd6c9}.skill-budget-row i b{display:block;height:100%;background:var(--red);transition:.2s}.over-text{color:var(--red)!important}.investigator-skill-head,.investigator-skill-row{display:grid;grid-template-columns:minmax(150px,1fr) 54px 66px 66px 54px;align-items:center;gap:7px}.investigator-skill-head{padding:0 10px 8px;color:#989186;font:9px monospace;text-align:center;border-bottom:1px solid var(--ink)}.investigator-skill-head span:first-child{text-align:left}.investigator-skill-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.investigator-skill-row{padding:7px 10px;border-bottom:1px solid var(--line)}.investigator-skill-name{font:600 11px Noto Sans KR}.investigator-skill-name small{display:block;color:#a29c92;font:8px Noto Sans KR}.base-score{text-align:center;color:#8f897e;font:11px monospace}.investigator-skill-row input{width:100%;min-width:0;border:1px solid var(--line);background:#fbf9f3;padding:7px 4px;text-align:center;font:11px monospace;outline:0}.investigator-skill-row input:focus{border-color:#9c8771}.investigator-skill-row>strong{text-align:center;font:700 14px Gowun Batang;color:var(--green)}@media(max-width:1150px){.investigator-skill-grid{grid-template-columns:1fr}}@media(max-width:600px){.derived-grid,.skill-budget-row{grid-template-columns:1fr}.investigator-skill-head,.investigator-skill-row{grid-template-columns:minmax(105px,1fr) 40px 51px 51px 42px;gap:4px}.investigator-skill-row{padding:7px 2px}.investigator-skill-head{padding-left:2px;padding-right:2px}}.section-actions{display:flex;align-items:center;gap:16px}.section-reset{height:32px;padding:0 11px;border:1px solid var(--line);background:transparent;color:#777168;font:600 10px Noto Sans KR;cursor:pointer;white-space:nowrap}.section-reset:hover{border-color:#9c8771;background:#eee8dc;color:var(--red)}@media(max-width:600px){.section-actions{gap:8px}.section-reset{padding:0 8px}.section-actions .total-badge span{font-size:21px}}.creation-guide{margin-top:55px}.creation-guide-title{text-align:center;margin-bottom:24px}.creation-guide-title h2{margin:0;font:700 29px Gowun Batang}.creation-guide-title>p:last-child{margin:9px 0 0;color:var(--muted);font-size:11px}.formula-sheet{padding:28px 32px;margin-bottom:18px}.formula-title{display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding-bottom:16px}.formula-title span{color:var(--red);font:9px monospace;letter-spacing:.15em}.formula-title h3{margin:0;font:700 20px Gowun Batang}.formula-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line);margin-top:20px}.formula-grid>div{padding:15px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:5px}.formula-grid span{font:600 10px Noto Sans KR;color:#777}.formula-grid strong{font:700 14px Gowun Batang}.formula-grid small{font-size:8px;color:#999}.creation-steps{display:grid;gap:9px}.creation-step{box-shadow:none}.creation-step summary{position:relative;display:grid;grid-template-columns:42px 1fr 24px;align-items:center;gap:12px;padding:17px 22px;cursor:pointer;list-style:none}.creation-step summary::-webkit-details-marker{display:none}.creation-step summary>span{color:var(--red);font:12px Gowun Batang;border-right:1px solid var(--line)}.creation-step summary b{display:block;font:700 15px Gowun Batang}.creation-step summary small{display:block;margin-top:3px;color:#999;font-size:9px}.creation-step summary>i{font: 18px Gowun Batang;color:#aaa;transition:.2s}.creation-step[open] summary>i{transform:rotate(45deg);color:var(--red)}.creation-step-body{border-top:1px solid var(--line);padding:20px 28px 24px 76px;color:#625e56;font:11px/1.8 Noto Sans KR}.creation-step-body p{margin:0 0 10px}.creation-step-body ul{margin:0;padding-left:18px}.guide-callout{border-left:3px solid var(--gold);background:#eee8dc;padding:12px 15px;margin:10px 0}.meaning-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:15px}.meaning-grid span{border:1px solid var(--line);padding:9px;font-size:9px}.meaning-grid b{display:block;color:var(--ink);font-size:10px}.rule-table{display:grid;gap:6px}.rule-table span{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:7px}.rule-table span b{color:var(--red);font:700 17px Gowun Batang}.rule-table small{color:#999}.db-table{border-top:1px solid var(--line);border-left:1px solid var(--line)}.db-table span{display:grid;grid-template-columns:1.3fr 1fr .8fr}.db-table b,.db-table i{padding:8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-style:normal;text-align:center}.db-table b{background:#e9e2d5;color:var(--ink);font-size:9px}.final-order{margin-top:18px;padding:26px 30px}.final-order h3{margin:4px 0 18px;font:700 20px Gowun Batang}.final-order ol{counter-reset:check;list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.final-order li{counter-increment:check;border-bottom:1px solid var(--line);padding:8px 4px;font-size:10px}.final-order li:before{content:counter(check,decimal-leading-zero);color:var(--red);font:9px monospace;margin-right:9px}@media(max-width:900px){.formula-grid,.meaning-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.formula-sheet{padding:23px 18px}.formula-grid{grid-template-columns:1fr 1fr}.formula-grid>div{padding:11px}.creation-step summary{padding:15px 14px;grid-template-columns:33px 1fr 18px}.creation-step-body{padding:18px 16px}.final-order ol{grid-template-columns:1fr 1fr}}.movement-stat{background:#ece5d8}.movement-stat .auto-badge{padding:3px 6px;border:1px solid #b7a992;color:var(--red);font:700 12px Noto Sans KR}.movement-stat>strong{display:block;margin-top:8px;border-bottom:1px solid #aaa398;padding:5px 2px;font:700 26px Gowun Batang;color:var(--green)}.movement-stat>em{display:block;margin-top:7px;color:#817b72;font: 12px/1.45 Noto Sans KR}.scenario-filebar{width:min(1240px,90vw);margin:32px auto 0;padding:18px 22px;display:flex;align-items:end;justify-content:space-between;gap:20px}.scenario-filebar>label{flex:1;max-width:520px}.scenario-filebar label>span{display:block;margin-bottom:6px;font-size:12px;font-weight:700}.scenario-filebar input{width:100%;height:42px;border:1px solid var(--line);background:#fbf9f3;padding:0 12px}.scenario-filebar>div{display:flex;gap:8px}.scenario-filebar button,.file-action{height:42px;border:1px solid var(--line);background:transparent;padding:0 16px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-weight:700;font-size:12px}.scenario-filebar button{background:var(--red);border-color:var(--red);color:#fff}.file-action input{display:none}@media(max-width:600px){.scenario-filebar{width:92vw;align-items:stretch;flex-direction:column}.scenario-filebar>label{width:100%;max-width:none}.scenario-filebar>div{width:100%}.scenario-filebar button,.file-action{flex:1}}.macro-output-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.macro-output-actions button{width:100%}.macro-output-actions .insert-macro{background:var(--ink);color:#fff}.scenario-format-help{margin:0 0 14px;padding:12px 14px;background:#eee8dc;border-left:3px solid var(--gold);font-size:12px;line-height:1.7}.scenario-format-help code{background:#ddd4c4;padding:2px 5px;color:var(--red)}.inserted-macro-preview{border:1px dashed #a69b8b;background:#f5f0e7;padding:10px}.inserted-macro-preview b{display:block;color:var(--red);font-size:12px}.inserted-macro-preview span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#777;font:12px monospace}.macro-library{width:min(1240px,90vw);margin:38px auto 0}.macro-library-heading{text-align:center;margin-bottom:22px}.macro-library-heading h2{margin:0;font:700 28px Gowun Batang}.macro-library-heading>p:last-child{margin:8px 0 0;color:var(--muted);font-size:14px}.macro-category-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-bottom:12px}.macro-category-tabs button{border:1px solid var(--line);background:#eee8dc;padding:13px 8px;color:#67635c;cursor:pointer}.macro-category-tabs button b,.macro-category-tabs button small{display:block}.macro-category-tabs button small{margin-top:4px;color:#999;font-size:12px}.macro-category-tabs button.active{background:var(--ink);border-color:var(--ink);color:#f4eee2}.macro-category-tabs button.active small{color:#aaa}.macro-builder{display:grid;grid-template-columns:210px minmax(280px,.8fr) minmax(320px,1.2fr);min-height:350px}.preset-list{padding:16px;background:#ebe5d9;border-right:1px solid var(--line)}.preset-list button{width:100%;border:0;border-bottom:1px solid #d5ccbd;background:transparent;padding:12px;text-align:left;color:#736e65;cursor:pointer}.preset-list button b,.preset-list button small{display:block}.preset-list button small{font-size:12px;color:#999;margin-top:2px}.preset-list button.active{background:var(--paper);color:var(--red);border-left:3px solid var(--red)}.preset-form{padding:28px 26px;border-right:1px solid var(--line)}.preset-title>span{font:700 12px monospace;color:var(--red)}.preset-title h3{font:700 23px Gowun Batang;margin:4px 0}.preset-title p{font-size:14px;color:var(--muted);margin:0 0 20px}.macro-fields{display:grid;gap:13px}.macro-fields label>span{display:block;margin-bottom:5px;font-size:12px;font-weight:700}.macro-fields input[type=text]{width:100%;border:1px solid var(--line);background:#fbf9f3;padding:10px;outline:0}.color-field{display:grid;grid-template-columns:42px 1fr}.color-field input[type=color]{width:42px;height:42px;border:1px solid var(--line);padding:3px;background:#fff}.color-field input[type=text]{border-left:0}.macro-output{padding:28px 26px;background:#f2ede3}.macro-output>div{display:flex;justify-content:space-between;margin-bottom:9px}.macro-output>div span{font-weight:700}.macro-output>div small{font:12px monospace;color:#999}.macro-output textarea{height:218px;background:#262824;color:#ddd8cc;border:0;padding:16px;font:14px/1.6 monospace;resize:none}.macro-output button{width:100%;height:43px;border:0;background:var(--red);color:#fff;margin-top:10px;cursor:pointer}@media(max-width:950px){.macro-category-tabs{grid-template-columns:repeat(3,1fr)}.macro-builder{grid-template-columns:180px 1fr}.macro-output{grid-column:1/-1}.macro-output textarea{height:150px}}@media(max-width:600px){.macro-library{width:92vw;margin-top:22px}.macro-category-tabs{grid-template-columns:1fr 1fr}.macro-builder{grid-template-columns:1fr}.preset-list{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line)}.preset-list button{min-width:150px}.preset-form{border-right:0}.macro-output{grid-column:auto}}.macro-render-frame{border:1px solid #c9c3ba;background:#e9e5df;margin-bottom:17px}.macro-render-label{height:30px;background:#302f2c;color:#92918b;display:flex;align-items:center;justify-content:center;font:700 12px monospace;letter-spacing:.14em}.macro-render-surface{min-height:120px;padding:18px;background:#f5f5f5;color:#222;font:14px/1.5 Arial,sans-serif;overflow:auto}.macro-render-surface p{margin:3px 0;font-size:14px!important}.actual-emote{color:#d17113;font-weight:700}.actual-whisper{border:1px solid #aaa;background:#e7e7e7;padding:8px}.actual-whisper small{font-size:12px;color:#666}.actual-inline-roll{display:inline-block;background:#fff5b5;border:1px solid #c6a437;border-radius:3px;padding:3px 7px;font-weight:700}.actual-coc-template{max-width:300px;border:1px solid #7e1717;background:#fff}.actual-coc-template header{background:#7e1717;color:#fff;padding:6px;text-align:center;font-weight:700}.actual-coc-template section{display:grid;grid-template-columns:repeat(3,1fr)}.actual-coc-template section span{padding:6px;text-align:center;border-right:1px solid #ddd;font-size:12px}.actual-coc-template section b{display:block;font-size:14px}.actual-coc-template footer{background:#eee;padding:7px;text-align:center;color:#7e1717;font-weight:700}.actual-message-time{display:block;margin-top:3px;text-align:right;font-size:12px;color:#555}.macro-output .code-heading{margin-top:2px;margin-bottom:9px}.macro-output textarea{height:140px}.gm-access-wrap{width:min(520px,90vw);margin:58px auto 0;padding-bottom:90px}.gm-access-card{padding:38px 42px;text-align:center}.gm-lock{display:grid;place-items:center;width:54px;height:58px;margin:0 auto 22px;border:1px solid var(--gold);color:var(--gold);font:700 28px Gowun Batang;clip-path:polygon(50% 0,100% 14%,100% 83%,50% 100%,0 83%,0 14%)}.gm-access-card .eyebrow{margin-bottom:7px}.gm-access-card h2{margin:0;font:700 28px Gowun Batang}.gm-access-card>p:not(.eyebrow){margin:10px 0 27px;color:var(--muted);font-size:14px}.gm-access-card label{display:block;text-align:left;margin-bottom:7px;font-size:12px;font-weight:700}.gm-access-card input{width:100%;height:46px;border:1px solid var(--line);background:#fbf9f3;padding:0 13px;outline:0}.gm-access-card input:focus{border-color:var(--red)}.gm-access-card small{display:block;text-align:left;margin-top:7px;color:var(--red);font-size:12px}.gm-access-card button{width:100%;height:46px;margin-top:14px;border:0;background:var(--red);color:#fff;cursor:pointer}@media(max-width:600px){.gm-access-wrap{margin-top:28px}.gm-access-card{padding:30px 22px}}
