*{box-sizing:border-box}:root{--episio-navy: #161A2D;--episio-purple: #6D5EF7;--episio-paper: #F6F2EA;--episio-paper-soft: #FBF8F2;--episio-muted: #666B7F;--episio-line: #DDD7EA;--episio-accent-soft: #F1EFFF;--episio-glow: 0 18px 46px rgba(109, 94, 247, .24)}body{margin:0;background:radial-gradient(circle at 8% 0%,rgba(109,94,247,.12),transparent 32%),var(--episio-paper);color:var(--episio-navy);font-family:Noto Sans KR,Malgun Gothic,system-ui,sans-serif}button,input,textarea{font:inherit}h1,p{margin:0}h1{font-size:30px;line-height:1.2}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 12%,rgba(109,94,247,.18),transparent 30%),linear-gradient(180deg,#ffffff 0%,var(--episio-paper) 72%)}.login-panel{width:min(100%,420px);display:grid;gap:16px;border:1px solid #DDD7EA;border-radius:8px;background:#fff;padding:28px;box-shadow:0 24px 70px #161a2d1c;animation:panel-enter .52s cubic-bezier(.2,.8,.2,1) both}.login-mark{width:54px;height:54px;display:grid;place-items:center;border-radius:12px;background:var(--episio-navy);box-shadow:var(--episio-glow);overflow:hidden;animation:logo-breathe 3.8s ease-in-out infinite}.login-mark img,.brand-logo{width:100%;height:100%;object-fit:cover}.login-panel h1{font-size:25px}.login-panel p{color:#666b7f;line-height:1.55}.login-form{display:grid;gap:12px}.login-form label{display:grid;gap:7px;color:#3f455b;font-size:13px;font-weight:800}.login-form input{height:42px;border:1px solid #D5CEE5;border-radius:6px;padding:0 12px;color:#161a2d}.login-error{border:1px solid #f0c7c7;border-radius:6px;background:snow;color:#9f1d1d;padding:9px 10px;font-size:13px;font-weight:800}.admin-shell{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}.admin-sidebar{border-right:1px solid #E4DEEE;background:linear-gradient(180deg,#ffffff 0%,var(--episio-paper-soft) 100%);padding:24px;animation:sidebar-enter .48s cubic-bezier(.2,.8,.2,1) both}.admin-brand{display:flex;gap:12px;align-items:center;padding-bottom:22px;border-bottom:1px solid #E4DEEE}.brand-logo{width:46px;height:46px;border-radius:12px;background:var(--episio-navy);box-shadow:var(--episio-glow);animation:logo-breathe 4.2s ease-in-out infinite}.admin-brand svg,.admin-sidebar nav svg{color:var(--episio-purple)}.admin-brand strong,.admin-brand span,.admin-sidebar nav span{display:block}.admin-brand strong{font-size:18px}.admin-brand span,.admin-sidebar nav span{color:#666b7f;font-size:13px}.admin-sidebar nav{display:grid;gap:14px;margin-top:24px}.admin-sidebar nav span{display:flex;align-items:center;gap:8px;font-weight:800;transition:color .18s ease,transform .18s ease}.admin-sidebar nav span:hover{color:var(--episio-purple);transform:translate(3px)}.admin-workspace{padding:28px 32px;animation:workspace-enter .56s cubic-bezier(.2,.8,.2,1) both}.admin-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.admin-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.admin-header p{margin-top:7px;color:#666b7f}.status-pill,.panel-heading span,.engine-admin-list small{color:#6d5ef7;background:#f1efff;border-radius:5px;padding:4px 8px;font-size:12px;font-weight:800}.dashboard-panel,.admin-panel{display:grid;gap:14px;border:1px solid #DDD7EA;border-radius:8px;background:#fff;padding:16px;box-shadow:0 12px 34px #161a2d0d;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.dashboard-panel:hover,.admin-panel:hover,.metric-card:hover{transform:translateY(-2px);border-color:#6d5ef75c;box-shadow:0 18px 42px #161a2d17}.dashboard-panel{margin-bottom:18px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.metric-card{min-height:116px;display:flex;gap:12px;align-items:flex-start;border:1px solid #E4DEEE;border-radius:8px;background:#fbf8f2;padding:14px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.metric-card svg{color:#6d5ef7;flex:0 0 auto}.metric-card span,.metric-card small,.reference-row span,.reference-row small{display:block;color:#666b7f;font-size:12px;font-weight:800}.metric-card strong{display:block;margin:8px 0 5px;font-size:24px;line-height:1.1}.metric-card.good{border-left:4px solid #6D5EF7}.metric-card.watch{border-left:4px solid #b45309}.metric-card.neutral{border-left:4px solid #958BDD}.chart-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:14px;align-items:stretch}.bar-chart{min-height:210px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:end;border:1px solid #E4DEEE;border-radius:8px;background:#fbf8f2;padding:16px}.bar-column{display:grid;gap:8px;align-items:end;justify-items:center}.bar-column div{width:100%;max-width:54px;min-height:36px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#7b6cff,#6d5ef7)}.bar-column span{color:#666b7f;font-size:12px;font-weight:800}.dashboard-summary{display:grid;gap:11px;border:1px solid #E4DEEE;border-radius:8px;background:#fbf8f2;padding:16px}.dashboard-summary p{color:#666b7f;font-size:13px;line-height:1.6}.dashboard-summary div{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #E4DEEE;padding-top:10px}.dashboard-summary span{color:#666b7f;font-size:13px;font-weight:800}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pricing-card{display:grid;gap:7px;border:1px solid #E4DEEE;border-radius:8px;background:#fbf8f2;padding:13px}.pricing-card div{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.pricing-card p{font-size:20px;font-weight:900;line-height:1.2}.pricing-card span,.pricing-card small{color:#666b7f;font-size:12px;font-weight:800}.pricing-card small{overflow-wrap:anywhere}.checkout-button,.free-plan-label{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #6D5EF7;border-radius:6px;background:#fff;color:#6d5ef7;padding:0 12px;font-size:13px;font-weight:900}.checkout-button{width:fit-content;cursor:pointer}.checkout-button:disabled{border-color:#aebbb8;color:#7a8093;cursor:wait}.free-plan-label{width:fit-content;border-color:#ddd7ea;color:#666b7f;background:#fbf8f2}.entitlement-panel{display:grid;gap:10px;border:1px solid #d7e4e1;border-radius:8px;background:#f8fcfb;padding:13px}.entitlement-panel>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:center}.entitlement-panel>div:first-child span,.entitlement-grid span{color:#666b7f;font-size:12px;font-weight:800}.entitlement-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.entitlement-grid span{min-height:34px;display:flex;align-items:center;border:1px solid #E4DEEE;border-radius:6px;background:#fff;padding:7px 9px;overflow-wrap:anywhere}.admin-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:18px;align-items:start}.reference-panel{grid-column:1 / -1}.upload-box{min-height:132px;display:grid;place-items:center;gap:8px;border:1px dashed #BEB6FA;border-radius:8px;background:#f7fbfa;color:#3f455b;padding:18px;text-align:center;cursor:pointer}.upload-box svg{color:#6d5ef7}.upload-box span{max-width:620px;color:#666b7f;font-size:13px;line-height:1.55}.upload-box input{display:none}.reference-list{display:grid;gap:8px}.reference-row,.empty-state,.rules-grid div,.sample-output,.version-table div,.feedback-row{border:1px solid #E4DEEE;border-radius:8px;background:#fbf8f2;padding:12px}.reference-row{display:grid;gap:7px}.reference-row p,.empty-state{color:#666b7f;font-size:13px;line-height:1.55}.empty-state{display:flex;align-items:center;gap:8px}.engine-admin-list{display:grid;gap:8px}.engine-admin-list button{display:grid;gap:6px;border:1px solid #DDD7EA;border-radius:8px;padding:11px;background:#fbf8f2;text-align:left;cursor:pointer}.engine-admin-list button.selected{border-color:#6d5ef7;background:#f6f2ea}.admin-field{display:grid;gap:8px;color:#3f455b;font-size:13px;font-weight:800}.admin-field textarea{min-height:92px;resize:vertical;border:1px solid #D5CEE5;border-radius:6px;padding:12px;color:#161a2d;line-height:1.6}.rules-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.rules-grid strong,.rules-grid span,.sample-output strong,.sample-output p{display:block}.rules-grid span,.sample-output p,.feedback-row p,.warning-strip span{color:#666b7f;font-size:13px;line-height:1.55;margin-top:5px}.primary{width:fit-content;min-height:40px;display:inline-flex;align-items:center;gap:7px;border:0;border-radius:6px;background:#6d5ef7;color:#fff;padding:0 14px;font-weight:800;cursor:pointer;box-shadow:0 10px 24px #6d5ef73d;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.primary:hover,.checkout-button:hover{transform:translateY(-1px);box-shadow:0 14px 30px #6d5ef74d}.primary:active,.checkout-button:active{transform:translateY(0)}.ghost-button{min-height:30px;border:1px solid #D5CEE5;border-radius:6px;background:#fff;color:#3f455b;padding:0 10px;font-size:12px;font-weight:900;cursor:pointer;transition:color .16s ease,border-color .16s ease,transform .16s ease,background .16s ease}.ghost-button:hover{color:#6d5ef7;border-color:#beb6fa;background:#f1efff;transform:translateY(-1px)}.version-table{display:grid;gap:8px}.version-table div{display:grid;grid-template-columns:70px 1fr 100px;gap:10px}.version-table strong{color:#6d5ef7}.version-table small{color:#666b7f}.warning-strip{display:flex;align-items:flex-start;gap:8px;border:1px solid #f0dfb6;border-radius:8px;background:#fff9ea;padding:11px}.warning-strip svg{color:#9a6b0f;flex:0 0 auto}.feedback-row{display:flex;gap:10px;align-items:flex-start}.feedback-row svg{flex:0 0 auto;color:#6d5ef7}.feedback-row.high{border-left:4px solid #dc2626}.feedback-row.medium{border-left:4px solid #b45309}@media(max-width:1100px){.metric-grid,.chart-grid,.pricing-grid,.entitlement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:920px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{border-right:0;border-bottom:1px solid #E4DEEE}.admin-grid,.rules-grid,.metric-grid,.chart-grid,.pricing-grid,.entitlement-grid{grid-template-columns:1fr}.admin-header{display:grid}.admin-header-actions{justify-content:flex-start}}@media(max-width:560px){.admin-workspace,.admin-sidebar{padding:18px}.version-table div{grid-template-columns:1fr}}@keyframes logo-breathe{0%,to{filter:saturate(1);box-shadow:0 14px 34px #6d5ef733}50%{filter:saturate(1.14);box-shadow:0 20px 52px #6d5ef757}}@keyframes panel-enter{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes sidebar-enter{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes workspace-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
