:root{--ink:#18201d;--muted:#727a76;--line:#e5e9e6;--paper:#f5f7f5;--white:#fff;--green:#275d4a;--green2:#dcebe4;--red:#a43d3d;--shadow:0 18px 55px rgba(30,49,41,.08)}*{box-sizing:border-box}html{font-family:Inter,Pretendard,"Noto Sans KR",system-ui,sans-serif;color:var(--ink);background:var(--paper)}body{margin:0;min-height:100vh}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}.sidebar{position:fixed;inset:0 auto 0 0;width:240px;background:#172a23;color:#dce7e2;padding:30px 22px;display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:10px;font-size:19px;margin:0 8px 45px}.brand span{background:#e8f2ed;color:#173a2d;border-radius:10px;padding:8px 7px;font-weight:900}.brand strong{letter-spacing:-.02em}.sidebar nav{display:grid;gap:7px}.sidebar nav a{padding:13px 15px;border-radius:11px;color:#9eb2aa;font-weight:650}.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.09);color:#fff}.sidebar-foot{margin-top:auto;display:grid;gap:15px;padding:0 12px}.mode{font-size:10px;letter-spacing:.12em;font-weight:800}.mode:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:7px}.mode.mock:before{background:#e5b454}.mode.live:before{background:#65d895}.link-button{background:none;border:0;padding:0;color:#92a69e;cursor:pointer}.main{margin-left:240px;padding:54px clamp(30px,5vw,78px) 100px;max-width:1540px}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:35px}.eyebrow{font-size:11px;letter-spacing:.18em;font-weight:800;color:#4f7667;margin:0 0 10px}.topbar h1,.login-card h1{font-size:34px;letter-spacing:-.045em;margin:0 0 9px}.muted{color:var(--muted);margin:0;line-height:1.65}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:11px;padding:11px 17px;font-weight:750;cursor:pointer;transition:.2s}.button.primary{background:var(--green);color:#fff;box-shadow:0 8px 20px rgba(39,93,74,.16)}.button.primary:hover{background:#1d4c3b;transform:translateY(-1px)}.button.secondary{background:#fff;border-color:var(--line);color:#35413c}.button.wide{width:100%;padding:14px}.flash{position:fixed;right:28px;top:24px;z-index:100;border-radius:11px;padding:13px 18px;background:#fff;box-shadow:var(--shadow);border-left:4px solid var(--green);animation:fade 5s forwards}.flash.error{border-color:var(--red)}@keyframes fade{0%,80%{opacity:1}100%{opacity:0;visibility:hidden}}.toolbar{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:14px}.content-list{display:grid}.content-row{display:flex;align-items:center;gap:18px;padding:25px 8px;border-bottom:1px solid var(--line)}.row-icon{width:45px;height:45px;display:grid;place-items:center;background:#edf3f0;color:#327057;border-radius:13px;font-weight:900}.row-body{min-width:0;flex:1}.row-meta{display:flex;gap:10px;align-items:center;margin-bottom:7px}.row-meta time{font-size:12px;color:#929895}.row-body h2{margin:0 0 7px;font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-body h2 a:hover{color:var(--green)}.row-body p{margin:0;color:var(--muted);font-size:13px}.arrow{font-size:22px;color:#8c9893;padding:12px}.badge{display:inline-flex;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;background:#eaeeec;color:#65706c}.status-completed{background:#dcefe5;color:#276448}.status-processing{background:#e2e9f5;color:#395f9b}.status-pending,.status-queued{background:#f4ebd7;color:#8b6721}.status-failed{background:#f5dede;color:#9b3838}.empty{text-align:center;padding:100px 20px;color:var(--muted)}.empty>div{font-size:38px;color:#4b7b67}.empty h2,.empty h1{color:var(--ink);margin:12px}.empty .button{margin-top:20px}.panel{background:#fff;border:1px solid #e8ebe9;border-radius:17px;padding:28px;margin-bottom:20px;box-shadow:0 6px 24px rgba(35,55,47,.035)}.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;align-items:start}.summary-panel{position:sticky;top:30px;background:#1e382e;color:#fff;padding:29px}.summary-panel .platform{font-size:10px;letter-spacing:.16em;color:#91b5a6;font-weight:900}.summary-panel h2{font-size:22px;margin:13px 0 24px}.summary-panel ul{list-style:none;padding:0;margin:0 0 30px;display:grid;gap:14px;color:#c7d7d0;font-size:14px}.summary-panel li:before{content:"✓";color:#71ba98;margin-right:10px}.summary-panel p{font-size:12px;line-height:1.6;color:#91a69e;margin:16px 0 0}.section-title{display:flex;gap:14px;padding-top:8px;margin:0 0 22px}.section-title:not(:first-child){border-top:1px solid var(--line);padding-top:30px;margin-top:30px}.section-title>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--green2);color:var(--green);font-size:12px;font-weight:900}.section-title h2{font-size:17px;margin:0 0 5px}.section-title p{font-size:12px;color:var(--muted);margin:0}.stack-form,.form-panel{display:grid;gap:20px}label{display:grid;gap:8px;font-size:13px;font-weight:750}label em{font-style:normal;color:#4d806b;font-size:11px;margin-left:5px}input,textarea,select{width:100%;border:1px solid #dce2df;background:#fbfcfb;border-radius:10px;padding:12px 13px;color:var(--ink);outline:none;transition:.15s}input:focus,textarea:focus,select:focus{border-color:#5d907b;box-shadow:0 0 0 3px rgba(62,118,94,.09)}textarea{resize:vertical;line-height:1.6}.two-cols,.two-panel{display:grid;grid-template-columns:1fr 1fr;gap:18px}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 20%,#e2eee8,transparent 33%),radial-gradient(circle at 82% 80%,#e8ece4,transparent 28%),#f7f8f6}.login-card{width:min(430px,100%);background:#fff;border:1px solid var(--line);border-radius:22px;padding:45px;box-shadow:var(--shadow)}.logo-mark{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:#1d4435;color:#fff;font-weight:900;font-size:20px;margin-bottom:28px}.login-card .muted{margin-bottom:28px}.project-status{display:flex;align-items:center;justify-content:space-between;gap:20px}.project-status h2{font-size:20px;margin:13px 0 0}.actions{display:flex;gap:9px;align-items:center}.error-text{color:var(--red)}.details{margin:0}.details>div{display:grid;grid-template-columns:150px 1fr;padding:15px 0;border-bottom:1px solid var(--line)}.details>div:last-child{border:0}.details dt{color:var(--muted)}.details dd{margin:0}.reference{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}.reference:last-child{border:0}.reference div{min-width:0;display:grid;gap:5px}.reference a{font-size:12px;color:#638172;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.panel h2,.panel-head h2{font-size:16px;margin:0 0 15px}.panel-head h2{margin:0}.panel-head>span{font-size:12px;color:var(--muted)}.title-input{font-size:22px;font-weight:800;letter-spacing:-.02em}.chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.chips button,.tag-list span{border:0;background:#edf3f0;color:#426755;padding:7px 10px;border-radius:8px;font-size:12px;cursor:pointer}.segmented{background:#eef1ef;border-radius:9px;padding:3px}.segmented button{border:0;background:none;padding:7px 11px;border-radius:7px;font-size:12px;color:var(--muted);cursor:pointer}.segmented button.active{background:#fff;color:var(--ink);box-shadow:0 2px 8px rgba(0,0,0,.06)}.visual-editor{min-height:520px;border:1px solid var(--line);border-radius:12px;padding:35px;line-height:1.85;outline:none}.visual-editor:focus{border-color:#76a18f}.visual-editor h2{font-size:25px;margin:38px 0 12px}.visual-editor h3{font-size:19px;margin:27px 0 10px}.html-editor{font-family:"SFMono-Regular",Consolas,monospace;font-size:13px;min-height:520px}.hidden{display:none}.tag-list{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}.tag-list span{cursor:default}details{border-top:1px solid var(--line);padding:14px 0}summary{font-weight:700;cursor:pointer}details p{color:var(--muted);line-height:1.7}.savebar{position:sticky;bottom:15px;background:rgba(24,42,35,.94);backdrop-filter:blur(12px);color:#d8e1dd;border-radius:14px;padding:13px 15px 13px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:var(--shadow);font-size:13px}@media(max-width:900px){.sidebar{position:static;width:auto;height:auto;padding:17px 20px;flex-direction:row;align-items:center}.brand{margin:0 25px 0 0}.sidebar nav{display:flex}.sidebar-foot{margin:0 0 0 auto}.sidebar-foot .mode{display:none}.main{margin:0;padding:35px 22px 90px}.editor-layout{grid-template-columns:1fr}.summary-panel{position:static}.two-panel{grid-template-columns:1fr}}@media(max-width:620px){.sidebar{flex-wrap:wrap}.sidebar nav a{padding:10px}.sidebar-foot{display:none}.topbar,.project-status{flex-direction:column}.two-cols{grid-template-columns:1fr}.login-card{padding:30px}.main{padding-inline:16px}.panel{padding:20px}.toolbar{align-items:flex-start;gap:15px}.content-row{gap:12px}.row-icon{display:none}.details>div{grid-template-columns:1fr;gap:7px}.visual-editor{padding:20px}.savebar span{display:none}}

