@import url(https://use.fontawesome.com/releases/v5.6.3/css/all.css);@import url(https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,400;0,700;1,400;1,700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Pretendard+Variable:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap);.nav-links{display:flex;flex-direction:row;justify-content:center;align-items:center;//margin-top:8px;padding:13px 20px}.nav-links>button{margin-top:8px}.nav-links>a{margin:0 10px}.top-bar{display:flex;justify-content:flex-end;padding:10px 20px;background-color:#fff}.auth-status{margin-left:auto}.auth-link{color:inherit}.router-link-exact-active{color:green}.board-list{width:768px;margin:auto}.board-detail{display:flex;flex-direction:column;align-items:center}.board-contents{padding:12px 8px;border-bottom:1px solid #eee;width:100%;max-width:1200px;margin:0 auto}.editor-container,.w3-input{width:100%}.w3-input{margin-bottom:10px}.common-buttons{padding:8px;text-align:right}.pagination{display:flex;justify-content:center}.pagination .w3-button{color:#333;text-decoration:none;padding:5px 10px;margin:2px;border:1px solid #ddd;cursor:pointer}.pagination .w3-green{background-color:#4caf50;color:#fff}.chatbot-interface{display:flex;justify-content:center;align-items:center;height:100vh;background-color:#f9f9f9;font-family:Arial,sans-serif}.chat-container{width:95%;max-width:900px;height:80vh;background-color:#fff;border-radius:10px;box-shadow:0 0 15px rgba(0,0,0,.2);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.chat-box{padding:20px;flex:1;overflow-y:auto}.chat-box,.user-message{display:flex;flex-direction:column}.user-message{align-items:flex-end;margin-bottom:10px;position:relative;max-width:80%;width:-moz-fit-content;width:fit-content;align-self:flex-end}.user-message .message-content{padding:10px;border-radius:10px;background-color:#2d9a47;text-align:left;color:#e9ecea}.bot-message{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:10px;position:relative;max-width:80%;width:-moz-fit-content;width:fit-content;align-self:flex-start}.bot-message .message-content{padding:10px;border-radius:10px;background-color:#5f67d1;text-align:left;color:#e9ecea;border:1px solid #ddd}.timestamp{font-size:.8em;color:#888;margin-top:5px;margin-left:0}.input-container{display:flex;padding:10px;border-top:1px solid #ddd;background-color:#f9f9f9}textarea{flex:1;line-height:1.3;padding:10px;border:1px solid #ccc;border-radius:5px;font-size:16px}button{background-color:#007bff;border:none;color:#fff;padding:0 15px;margin-left:10px;border-radius:5px}button img{width:24px;height:24px}button:hover{background-color:#0056b3}.bot-message p,.user-message p{margin:0;word-break:break-word}.gpt-logo{width:40px;height:40px;margin-right:10px;align-self:flex-start}body,html{height:100%;background-color:#f9f9f9}body,button,dd,div,dl,dt,fieldset,form,h1,html,input,p,table,tbody,td,textarea,th,thead{margin:0;padding:0;border:0;box-sizing:border-box}table{border-collapse:collapse;border-spacing:0;width:100%;font-size:14px;font-family:Noto Sans KR,sans-serif}textarea{border:none;resize:none}li,ul{margin:0;padding:0;list-style:none}a,button{font-size:16px}button{cursor:pointer}input:disabled{background-color:#d3d3d3;cursor:not-allowed}#app{font-family:Avenir,Helvetica,Arial,sans-serif;color:#2c3e50;padding-top:60px;height:100%}.login-page{display:block}.app-header{position:fixed;top:0;left:0;width:100%;height:60px;border-bottom:1px solid #ededed;background-color:#fff}.app-header h1{position:absolute;left:20px;top:12px;font-size:26px}.app-header>div{position:absolute;top:20px;right:20px}.app-header>div>strong>button{font-size:14px}.app-header>div>strong>button:focus{outline:none}.app-header>div>strong>button>i{padding-left:8px}.app-header>div>strong>button>.fa-sort-up{margin-bottom:-1px;vertical-align:bottom}.app-header>div>strong>button>.fa-sort-down{margin-top:-1px;vertical-align:top}.app-header>div>ul{position:absolute;top:44px;left:0;width:100%;box-shadow:0 4px 10px -4px rgba(0,0,0,.2)}.app-header>div>ul>li>button{width:100%;padding:10px;font-size:14px;text-align:left}.app-header>div>ul>li>button:focus{outline:none}.post-list-page{width:940px;margin:60px auto 0;padding:40px 30px 60px;background-color:#fff;box-shadow:0 4px 10px -4px rgba(0,0,0,.2)}.post-list-page:after{content:"";display:block;clear:both}.post-list-page h1{margin-bottom:20px;text-align:left;font-size:24px}.post-list-page>div{background-color:#fff}.post-list-page>div table{width:100%}.post-list-page>div table thead{font-size:14px;font-weight:400;color:#fff;background-color:#888}.post-list-page>div table thead th{position:relative;padding:10px}.post-list-page>div table thead th:after{content:"|";position:absolute;right:0;color:#c3b9b9}.post-list-page>div table thead th:last-child:after{content:""}.post-list-page>div table tbody td{padding:20px;font-weight:400;border-bottom:1px solid #ededed}.post-list-page>div table tbody td:nth-child(2){text-align:left}.post-list-page>a{margin-top:13px;float:right;padding:.5rem 1.75rem;background-color:#414141;border-radius:.25rem;color:#fff;text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.post-list-page>a:hover{background-color:#181818}.post-view-page{width:940px;margin:60px auto 0;padding:40px 30px 60px;background-color:#fff;box-shadow:0 4px 10px -4px rgba(0,0,0,.2);text-align:right}.post-view-page h1{margin-bottom:12px;text-align:left;font-size:24px}.post-view-page>p{text-align:center;margin:1rem 0}.post-view-page .post-view>div{padding:20px;text-align:left;font-size:14px;border-bottom:2px solid #868e96}.post-view-page .post-view>div>h1{font-size:24px}.post-view-page .post-view>div>span{display:block;margin-bottom:2px;color:#868e96}.post-view-page .post-view>div>strong{font-weight:400;color:#868e96}.post-view-page .post-view>p{margin-bottom:20px;padding:20px;text-align:left}.post-view-page a,.post-view-page button{display:inline-block;padding:.5rem 1.75rem;background-color:#414141;border-radius:.25rem;color:#fff;text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.post-view-page>a:hover,.post-view-page>button:hover{background-color:#181818}.post-view-page>ul{text-align:left;margin-top:20px;border-top:1px solid #ced4da}.post-view-page>ul>li{overflow:hidden;padding:20px;border-bottom:1px solid #ced4da}.post-view-page>.comments .comment-item{position:relative}.post-view-page>.comments .comment-item>strong{margin-right:5px}.post-view-page>.comments .comment-item>span{font-size:14px;vertical-align:bottom}.post-view-page>.comments .comment-item textarea,.post-view-page>.comments .comment-item textarea+button,.post-view-page>.comments .comment-item>p{margin-top:.5rem}.post-view-page>.comments .comment-item textarea{display:inline-block;border:1px solid #868e96;width:85%;padding:10px;height:60px;vertical-align:top;font-size:14px}.post-view-page>.comments .comment-item textarea+button{display:inline-block;border:1px solid #666;padding:10px;width:14%;height:60px;background-color:#414141;color:#fff;border-radius:.25rem;font-size:1rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.post-view-page>.comments .comment-item textarea+button:hover{background-color:#181818}.post-view-page>.comments .comment-item>ul{position:absolute;right:0;top:0;overflow:hidden}.post-view-page>.comments .comment-item>ul li{position:relative;float:left;padding:0 10px 0 0;margin:0 10px 0 0}.post-view-page>.comments .comment-item>ul li:after{position:absolute;right:0;top:2px;content:"|";color:#868e96}.post-view-page>.comments .comment-item>ul li:last-child{margin-right:0;padding-right:0}.post-view-page>.comments .comment-item>ul li:last-child:after{content:""}.post-view-page>.comments .comment-item>ul li button{color:#868e96}.post-view-page>.comments .comment-item>ul li button:hover{color:#2c3e50}.comment-form{position:relative;margin-top:20px;padding-right:100px;overflow:hidden}.comment-form textarea{width:100%;height:60px;border:1px solid #868e96;padding:10px;font-size:14px}.comment-form button{position:absolute;right:0;top:0;height:60px;width:96px;background-color:#414141;color:#fff;font-size:16px;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.comment-form button:hover{background-color:#181818}.comments button{background-color:transparent;color:#000;font-size:12px;padding:0;border-radius:0;transition:opacity .3s ease-in-out;outline:0}.post-create-page{width:940px;padding:40px 30px 60px;margin:60px auto 0;background-color:#fff;border:1px solid #ededed}.post-create-page:after{content:"";display:block;clear:both}.post-create-page h1{margin-bottom:20px;text-align:left;font-size:24px}.post-create-page form fieldset input{margin-bottom:8px}.post-create-page label{display:inline-block;width:100%;text-align:left;font-size:14px}.post-create-page form fieldset input[type=text],.post-create-page form fieldset textarea{width:100%;margin-bottom:8px;padding:5px 12px;color:#495057;border:1px solid #ced4da;border-radius:.25rem;font-size:14px}.post-create-page form fieldset input[type=text]{height:calc(1.5em + .75rem + 2px)}.post-create-page form fieldset a,.post-create-page form fieldset button[type=submit]{float:right;height:38px;box-sizing:border-box;margin:16px 0 8px;padding:.5rem 1.75rem;font-size:16px;font-weight:700;color:#fff;border-radius:.25rem;background-color:#414141;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.post-create-page form fieldset a{text-decoration:none;margin-right:4px}.post-create-page form fieldset a:hover,.post-create-page form fieldset button[type=submit]:hover{background-color:#181818}.post-edit-page{width:940px;padding:40px 30px 60px;margin:60px auto 0;background-color:#fff;border:1px solid #ededed}.post-edit-page h1{margin-bottom:20px;text-align:left;font-size:24px}.post-edit-page form fieldset input{margin-bottom:8px}.post-edit-page label{display:inline-block;width:100%;text-align:left;font-size:14px}.post-edit-page form fieldset input[type=text],.post-edit-page form fieldset textarea{width:100%;margin-bottom:8px;padding:5px 12px;color:#495057;border:1px solid #ced4da;border-radius:.25rem;font-size:14px}.post-edit-page form fieldset input[type=text]{height:calc(1.5em + .75rem + 2px)}.post-edit-page form fieldset a,.post-edit-page form fieldset button[type=submit]{float:right;height:38px;box-sizing:border-box;margin:16px 0 8px;padding:.5rem .75rem;padding:.5rem 1.75rem;font-size:16px;font-weight:700;color:#fff;border-radius:.25rem;background-color:#414141;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.post-edit-page form fieldset a{text-decoration:none;margin-right:4px}.post-edit-page form fieldset a:hover,.post-edit-page form fieldset button[type=submit]:hover{background-color:#181818}section.notice{padding:40px 0}.page-title{margin-bottom:60px}.page-title h3{font-size:24px;color:#333;font-weight:700;text-align:center;margin-bottom:20px}#board-search .search-window{padding:15px 0;background-color:#f9f9f9}#board-search .search-window .search-wrap{display:flex;align-items:center;justify-content:flex-end;gap:8px;width:100%}#board-search .search-select{height:40px;padding:0 10px;font-size:14px;border:none;border-right:1px solid #ccc;background-color:#fff;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;font-family:Noto Sans KR,sans-serif}#board-search .search-window .search-wrap input{height:40px;width:240px;padding:0 10px;border:none;outline:none;font-family:Noto Sans KR,sans-serif}#board-search .search-wrap .btn i{font-size:18px;color:#333}#board-search .search-window .search-wrap input:focus{border-color:#333;outline:0;border-width:1px}#board-search .search-window .search-wrap .btn{height:40px;padding:0 16px;font-size:14px;background-color:#333;color:#fff;border:none;cursor:pointer}.board-table{font-size:13px;width:100%;border-top:1px solid #ccc;border-bottom:1px solid #ccc}.board-table a{color:#333;display:inline-block;line-height:1.4;word-break:break-all;vertical-align:middle}.board-table a:hover{text-decoration:underline}.board-table th{background-color:#f1f1f1;font-weight:700}.board-table .th-num{width:100px;text-align:center}.board-table .th-date{width:200px}.board-table td,.board-table th{padding:14px;border-bottom:1px solid #ddd}.board-table tbody td{border-top:1px solid #e7e7e7;text-align:center}.board-table tbody th{padding-left:28px;padding-right:14px;border-top:1px solid #e7e7e7;text-align:left}.board-table tbody th p{display:none}.board-table tbody tr:hover{background-color:#f9f9f9}.btn{display:inline-block;padding:0 30px;font-size:15px;font-weight:400;background:transparent;text-align:center;white-space:nowrap;vertical-align:middle;touch-action:manipulation;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;border:1px solid transparent;text-transform:uppercase;border-radius:0;transition:all .3s}.btn-dark{background:#555;color:#fff}.btn-dark:focus,.btn-dark:hover{background:#373737;border-color:#373737;color:#fff}.btn-primary{background-color:#007bff;color:#fff;padding:10px 20px;border:none;cursor:pointer;text-align:center;font-size:14px;border-radius:4px}.btn-primary:hover{background-color:#0056b3}*{list-style:none;text-decoration:none;padding:0;margin:0;box-sizing:border-box}.clearfix:after{content:"";display:block;clear:both}.container,.container-right{width:1700px;margin:0 auto}.container-right{text-align:right;padding:20px 0}.blind{position:absolute;overflow:hidden;clip:rect(0 0 0 0);margin:-1px;width:1px;height:1px}@media print{body{margin:0!important}}.w3-input{box-sizing:border-box}.main-container{font-family:Lato;width:-moz-fit-content;width:fit-content;margin-right:auto}.board-contents h1,.board-contents p{color:#000}.board-contents h2,.board-contents h3,.board-contents h4,.board-contents h5,.board-contents h6,.board-contents ol,.board-contents p,.board-contents ul{text-align:left}.nav-tabs{width:80%;margin:0 auto}.nav-tabs,.tabs{border-bottom:2px solid #ddd}.tabs{display:flex;list-style:none;padding:0;margin:0}.tabs li{padding:10px 20px;cursor:pointer;border:1px solid transparent;border-bottom:none}.tabs li.active{border-color:#ddd;border-bottom:2px solid #fff;font-weight:700}.tab-content{padding:20px;border:1px solid #ddd}.tbl_wrp{margin-top:20px;background-color:#060c1c;padding:15px;position:relative;display:flex;flex-direction:column}.table{width:100%;border-collapse:separate;border-spacing:0;color:#fff}.table-header{background-color:#a8d0db;color:#000;text-align:left}.table-header th{padding:10px}.role-row{background-color:#060c1c}.role-row td{padding:10px;text-align:left;border-top:1px solid #333}.add-role-button{margin-top:10px;padding:8px 16px;background-color:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;align-self:flex-end}.add-role-button:hover{background-color:#45a049}.tbl_wrp{background-color:#2c2f33;padding:30px;border-radius:10px;max-width:80%;margin:20px auto;font-family:Roboto,sans-serif;color:#fff}.form-group2 label{font-weight:500;color:#b0b3b8;margin-bottom:5px;display:block;text-align:left}.form-control2{background-color:#fff;border:1px solid #555;border-radius:5px;color:#2c2f33;padding:8px;font-size:14px;margin-bottom:15px;width:100%}.form-group2 span{display:flex;align-items:center}input[type=checkbox]{margin-right:5px}.form-group2 .col-sm-offset-1 .btn{background-color:#4a4e69;color:#fff;padding:8px 16px;font-size:14px;border-radius:5px;text-decoration:none;margin-left:10px;transition:background-color .3s}.form-group2 .col-sm-offset-1 .btn:hover{background-color:#6a6f89}.form-group2{margin-bottom:15px}.select-wrapper{width:100%}select.form-control2{background-color:#1e2125;color:#fff;border:1px solid #555;border-radius:5px;padding:8px;width:100%}.hover-underline:hover{text-decoration:underline;cursor:pointer}.container-error{display:flex;align-items:center;justify-content:center;height:100vh;width:100%}.stack-container-error{position:relative;width:420px;height:210px;transition:width 1s,height 1s}.error-error{width:400px;padding:40px;text-align:center}.error-error h1{font-size:125px;margin:0;font-weight:700}.error-error h2{margin:-30px 0 0;font-size:47px;letter-spacing:12px}.writing-error{width:320px;height:200px;background-color:#3f3f3f;border:1px solid #bbb;border-radius:6px 6px 4px 4px;position:relative}.writing-error .topbar-error{position:absolute;width:100%;height:12px;background-color:#f1f1f1;border-top-left-radius:4px;border-top-right-radius:4px}.writing-error .topbar-error div{height:6px;width:6px;border-radius:50%;margin:3px;float:left}.writing-error .topbar-error .green-error{background-color:#60d060}.writing-error .topbar-error .red-error{background-color:red}.writing-error .topbar-error .yellow-error{background-color:#e6c015}.writing-error .code-error{padding:15px}.writing-error .code-error ul{list-style:none;margin:0;padding:0}.writing-error .code-error ul li{background-color:#9e9e9e;width:0;height:7px;border-radius:6px;margin:10px 0}.perspec-error{perspective:1000px}.explode-error{animation:explode-error .5s ease-in-out forwards}.writeLine-error{animation:writeLine-error .4s linear forwards}.card-error{animation:tiltcard-error .5s ease-in-out 1s forwards;position:absolute}@keyframes tiltcard-error{0%{transform:rotateY(0deg)}to{transform:rotateY(-30deg)}}@keyframes explode-error{0%{transform:translate(0) scale(1)}to{transform:translate(var(--spreaddist),var(--vertdist)) scale(var(--scaledist))}}@keyframes writeLine-error{0%{width:0}to{width:var(--linelength)}}:root{--bg:#0f1219;--bg-img:radial-gradient(circle at 12% 8%,rgba(143,184,222,.06) 0%,transparent 35%),radial-gradient(circle at 88% 30%,hsla(35,51%,65%,.04) 0%,transparent 35%);--surface:rgba(255,250,243,.04);--surface-strong:rgba(255,250,243,.07);--line:rgba(255,250,243,.08);--line-bright:rgba(255,250,243,.16);--ink:#f5efe7;--ink-soft:#a8a39c;--ink-dim:#6f6b66;--inner-shadow:hsla(0,0%,100%,.04);--card-shadow:0 12px 40px rgba(0,0,0,.3);--hover-shadow:0 24px 60px rgba(0,0,0,.4);--pill-primary-text:#2a1f12;--accent:#d4af7a;--accent-warm:#e8c8a0;--accent-cool:#8fb8de;--editor-bg:#fff;--editor-ink:#1a1a1a;--gradient-warm:linear-gradient(135deg,#d4af7a,#e8c8a0);--gradient-cool:linear-gradient(135deg,#8fb8de,#a5c5e5);--gradient-mix:linear-gradient(135deg,#d4af7a,#8fb8de)}body[data-tone=cool]{--bg:#0f1219;--bg-img:radial-gradient(circle at 12% 8%,rgba(143,184,222,.06) 0%,transparent 35%),radial-gradient(circle at 88% 30%,hsla(35,51%,65%,.04) 0%,transparent 35%)}body[data-tone=neutral]{--bg:#16161a;--bg-img:radial-gradient(circle at 12% 8%,rgba(167,139,250,.05) 0%,transparent 35%),radial-gradient(circle at 88% 30%,hsla(35,51%,65%,.05) 0%,transparent 35%)}body[data-tone=warm]{--bg:#161311;--bg-img:radial-gradient(circle at 12% 8%,hsla(35,51%,65%,.07) 0%,transparent 35%),radial-gradient(circle at 88% 30%,hsla(15,78%,80%,.04) 0%,transparent 35%)}body[data-tone=warm-white]{--bg:#efeadb;--bg-img:none;--surface:hsla(0,0%,100%,.7);--surface-strong:hsla(0,0%,100%,.95);--line:hsla(0,0%,8%,.2);--line-bright:hsla(0,0%,8%,.3);--ink:#1a1a1a;--ink-soft:#6b6b6b;--ink-dim:#9a9a9a;--inner-shadow:#fff;--card-shadow:0 1px 2px hsla(0,0%,8%,.04),0 8px 24px hsla(0,0%,8%,.06);--hover-shadow:0 12px 40px hsla(0,0%,8%,.1);--pill-primary-text:#fff;--gradient-warm:linear-gradient(135deg,#1a1a1a,#3a3a3a)}body[data-tone=sky-tint]{--bg:#dde5f2;--bg-img:radial-gradient(circle at 12% 8%,rgba(143,184,222,.3) 0%,transparent 40%),radial-gradient(circle at 88% 90%,hsla(35,51%,65%,.18) 0%,transparent 40%);--surface:hsla(0,0%,100%,.65);--surface-strong:hsla(0,0%,100%,.92);--line:rgba(31,37,64,.2);--line-bright:rgba(31,37,64,.3);--ink:#1f2540;--ink-soft:#5b6178;--ink-dim:#9097ad;--inner-shadow:#fff;--card-shadow:0 1px 2px rgba(31,37,64,.04),0 12px 40px rgba(31,37,64,.08);--hover-shadow:0 20px 50px rgba(31,37,64,.12);--pill-primary-text:#fff;--gradient-warm:linear-gradient(135deg,#1f2540,#3a4360)}body[data-tone=pastel-glass]{--bg:#f4ecdd;--bg-img:radial-gradient(circle at 8% 12%,hsla(15,78%,80%,.65) 0%,transparent 30%),radial-gradient(circle at 92% 8%,rgba(143,184,222,.55) 0%,transparent 35%),radial-gradient(circle at 50% 95%,hsla(35,51%,65%,.5) 0%,transparent 35%),linear-gradient(180deg,#f4ecdd,#e2e6ef);--surface:hsla(0,0%,100%,.55);--surface-strong:hsla(0,0%,100%,.82);--line:rgba(31,37,64,.2);--line-bright:rgba(31,37,64,.3);--ink:#1f2540;--ink-soft:#5b6178;--ink-dim:#9097ad;--inner-shadow:hsla(0,0%,100%,.7);--card-shadow:0 1px 0 hsla(0,0%,100%,.7) inset,0 12px 40px rgba(31,37,64,.08);--hover-shadow:0 24px 60px rgba(31,37,64,.14);--pill-primary-text:#fff;--gradient-warm:linear-gradient(135deg,#d4af7a,#f4b8a4)}.themed-page{background:var(--bg-img),var(--bg);background-attachment:fixed;color:var(--ink);min-height:100vh;font-family:Pretendard Variable,Inter,-apple-system,BlinkMacSystemFont,sans-serif;-webkit-font-smoothing:antialiased;transition:background .3s,color .3s}.glass{background:var(--surface);backdrop-filter:saturate(140%) blur(20px);-webkit-backdrop-filter:saturate(140%) blur(20px);border:1px solid var(--line);box-shadow:0 1px 0 var(--inner-shadow) inset,var(--card-shadow)}.mono{font-family:JetBrains Mono,monospace}#blackhole[data-v-c75252d8]{height:100%;width:100%;position:relative;display:flex}.centerHover[data-v-c75252d8]{width:255px;height:255px;background-color:transparent;border-radius:50%;position:absolute;left:50%;top:50%;margin-top:-128px;margin-left:-128px;z-index:2;cursor:pointer;line-height:255px;text-align:center;transition:all .5s}.centerHover.open[data-v-c75252d8]{opacity:0;pointer-events:none}.centerHover:hover span[data-v-c75252d8]{color:#ddd}.centerHover:hover span[data-v-c75252d8]:after,.centerHover:hover span[data-v-c75252d8]:before{background-color:#ddd}.centerHover span[data-v-c75252d8]{color:#666;font-family:serif;font-size:18px;position:relative;transition:all .5s}.centerHover span[data-v-c75252d8]:before{margin-right:12px}.centerHover span[data-v-c75252d8]:after,.centerHover span[data-v-c75252d8]:before{content:"";display:inline-block;height:1px;width:16px;margin-bottom:4px;background-color:#666;transition:all .5s}.centerHover span[data-v-c75252d8]:after{margin-left:12px}[data-v-c75252d8] canvas{position:relative;z-index:1;width:100%;height:100%;margin:auto}.pe-overlay[data-v-64451474]{position:fixed;inset:0;background:rgba(15,18,25,.42);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:10000;display:flex;align-items:flex-start;justify-content:center;padding:8vh 16px 16px}.pe-modal[data-v-64451474]{width:100%;max-width:440px;background:var(--surface-strong);border:1px solid var(--line-bright);border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.25);overflow:hidden;font-family:Pretendard Variable,Inter,sans-serif;color:var(--ink)}.pe-header[data-v-64451474]{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--line)}.pe-header h3[data-v-64451474]{margin:0;font-size:15.5px;font-weight:700}.pe-close[data-v-64451474]{width:28px;height:28px;border:none;border-radius:7px;background:var(--surface);color:var(--ink-soft);cursor:pointer;display:grid;place-items:center}.pe-close svg[data-v-64451474]{width:13px;height:13px}.pe-close[data-v-64451474]:hover{background:var(--line);color:var(--ink)}.pe-body[data-v-64451474]{padding:18px;display:flex;flex-direction:column;gap:14px}.pe-field[data-v-64451474]{display:flex;flex-direction:column;gap:6px}.pe-label[data-v-64451474]{font-size:12px;font-weight:600;color:var(--ink-soft)}.pe-label em[data-v-64451474]{font-style:normal;color:var(--ink-dim);font-weight:500}.pe-input[data-v-64451474]{width:100%;padding:12px 13px;border-radius:11px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:15px;font-family:inherit;outline:none;transition:border-color .15s,background .15s}.pe-input[data-v-64451474]:focus{border-color:var(--accent);background:var(--surface-strong)}.pe-input[data-v-64451474]:disabled{opacity:.6;cursor:not-allowed}.pe-pw-toggle[data-v-64451474]{display:flex;align-items:center;justify-content:space-between;width:100%;padding:11px 13px;border:1px dashed var(--line-bright);border-radius:11px;background:none;color:var(--ink-soft);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer}.pe-chevron[data-v-64451474]{transition:transform .2s}.pe-chevron.open[data-v-64451474]{transform:rotate(180deg)}.pe-pw-section[data-v-64451474]{display:flex;flex-direction:column;gap:14px}.pe-footer[data-v-64451474]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 18px 18px;border-top:1px solid var(--line)}.pe-footer-right[data-v-64451474]{display:flex;gap:8px}.pe-leave[data-v-64451474]{background:none;border:none;color:#dc2626;font-family:inherit;font-size:12.5px;font-weight:600;cursor:pointer;padding:6px 4px;border-radius:6px}.pe-leave[data-v-64451474]:hover{text-decoration:underline}.pe-leave[data-v-64451474]:disabled{opacity:.5;cursor:default}.pe-btn[data-v-64451474]{padding:10px 22px;border-radius:10px;font-family:inherit;font-size:13.5px;font-weight:600;border:1px solid transparent;cursor:pointer;min-width:84px;display:grid;place-items:center}.pe-ghost[data-v-64451474]{background:var(--surface);color:var(--ink);border-color:var(--line)}.pe-ghost[data-v-64451474]:hover{background:var(--surface-strong)}.pe-primary[data-v-64451474]{background:var(--gradient-warm);color:var(--pill-primary-text);box-shadow:0 4px 12px hsla(35,51%,65%,.25)}.pe-primary[data-v-64451474]:hover{transform:translateY(-1px)}.pe-btn[data-v-64451474]:disabled{opacity:.6;cursor:default}.pe-spin[data-v-64451474]{width:16px;height:16px;border:2.5px solid hsla(0,0%,100%,.4);border-top-color:#fff;border-radius:50%;animation:pe-spin-64451474 .8s linear infinite}@keyframes pe-spin-64451474{to{transform:rotate(1turn)}}.pe-fade-enter-active[data-v-64451474]{transition:opacity .18s}.pe-fade-enter-active .pe-modal[data-v-64451474]{transition:transform .22s cubic-bezier(.16,1,.3,1),opacity .22s}.pe-fade-leave-active[data-v-64451474]{transition:opacity .14s}.pe-fade-enter-from[data-v-64451474]{opacity:0}.pe-fade-enter-from .pe-modal[data-v-64451474]{opacity:0;transform:scale(.94) translateY(8px)}.pe-fade-leave-to[data-v-64451474]{opacity:0}.site-header[data-v-4f9b630a]{padding-top:16px;font-family:Pretendard Variable,Inter,sans-serif;position:relative;z-index:5}.nav-shell[data-v-4f9b630a]{max-width:1180px;margin:0 auto;padding:0 16px}.nav[data-v-4f9b630a]{display:flex;align-items:center;justify-content:space-between;height:60px;padding:0 24px;border-radius:18px;gap:14px}.brand[data-v-4f9b630a]{display:flex;align-items:center;gap:10px;font-weight:700;font-size:15px;letter-spacing:-.01em;color:var(--ink);text-decoration:none;flex-shrink:0}.brand-mark[data-v-4f9b630a]{width:26px;height:26px;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--accent-warm));box-shadow:0 0 24px hsla(35,51%,65%,.4)}.brand-dim[data-v-4f9b630a]{color:var(--ink-dim)}.nav-list[data-v-4f9b630a]{display:flex;gap:16px;list-style:none;margin:0;padding:0}.nav-list a[data-v-4f9b630a]{font-size:13.5px;color:var(--ink-soft);font-weight:500;text-decoration:none;transition:color .15s;white-space:nowrap}.nav-list a.router-link-active[data-v-4f9b630a],.nav-list a[data-v-4f9b630a]:hover{color:var(--ink)}.nav-right[data-v-4f9b630a]{display:flex;align-items:center;gap:10px;flex-shrink:0}.hello[data-v-4f9b630a]{font-size:13px;color:var(--ink-soft);margin-right:4px}.hello-btn[data-v-4f9b630a]{background:none;border:none;font-family:inherit;cursor:pointer;padding:4px 6px;border-radius:8px;transition:background .15s,color .15s}.hello-btn[data-v-4f9b630a]:hover{color:var(--ink);background:var(--surface);text-decoration:underline}.pill[data-v-4f9b630a]{padding:7px 14px;border-radius:999px;font-size:12.5px;font-weight:500;border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);transition:all .15s;cursor:pointer;font-family:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:4px}.pill[data-v-4f9b630a]:hover{border-color:var(--line-bright);color:var(--ink)}.pill-primary[data-v-4f9b630a]{background:var(--gradient-warm);color:var(--pill-primary-text);border:none;font-weight:600;box-shadow:0 6px 16px hsla(35,51%,65%,.25)}.pill-primary[data-v-4f9b630a]:hover{transform:translateY(-1px);color:var(--pill-primary-text)}.menu-toggle[data-v-4f9b630a]{display:none;background:none;border:none;cursor:pointer;padding:8px}.menu-toggle .bar[data-v-4f9b630a]{display:block;width:22px;height:2px;background:var(--ink);margin:4px 0;transition:all .2s}@media (max-width:1100px){.menu-toggle[data-v-4f9b630a]{display:block}.nav-list[data-v-4f9b630a]{position:absolute;top:100%;left:16px;right:16px;margin-top:8px;flex-direction:column;padding:16px;border-radius:16px;background:var(--surface-strong);backdrop-filter:saturate(140%) blur(20px);border:1px solid var(--line);box-shadow:var(--card-shadow);display:none}.nav-list.mobile-active[data-v-4f9b630a]{display:flex}.nav-right .hello[data-v-4f9b630a]{display:none}}@media (max-width:560px){.nav[data-v-4f9b630a]{padding:0 16px;gap:8px}.brand-text[data-v-4f9b630a]{font-size:13px}.pill[data-v-4f9b630a]{padding:6px 10px;font-size:11.5px}}.site-footer[data-v-3150ca78]{max-width:1180px;margin:80px auto 0;padding:60px 32px 32px;border-top:1px solid var(--line);color:var(--ink-soft);font-family:Pretendard Variable,Inter,sans-serif}.footer-inner[data-v-3150ca78]{display:grid;grid-template-columns:1.5fr 2fr;gap:48px;margin-bottom:48px}.footer-brand .brand[data-v-3150ca78]{display:flex;align-items:center;gap:10px;margin-bottom:12px;color:var(--ink);font-weight:700;font-size:15px}.brand-mark[data-v-3150ca78]{width:26px;height:26px;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--accent-warm));box-shadow:0 0 24px hsla(35,51%,65%,.3)}.brand-dim[data-v-3150ca78]{color:var(--ink-dim)}.tagline[data-v-3150ca78]{font-size:13px;color:var(--ink-soft);line-height:1.6;margin:0;max-width:280px}.footer-cols[data-v-3150ca78]{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.col h4[data-v-3150ca78]{font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--ink-dim);text-transform:uppercase;margin:0 0 14px;font-family:JetBrains Mono,monospace}.col .muted[data-v-3150ca78],.col a[data-v-3150ca78]{display:block;font-size:13px;color:var(--ink-soft);margin-bottom:8px;text-decoration:none;transition:color .15s}.col a[data-v-3150ca78]:hover{color:var(--ink)}.col .muted[data-v-3150ca78]{color:var(--ink-dim)}.footer-bottom[data-v-3150ca78]{display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-dim);flex-wrap:wrap;gap:12px}.mono[data-v-3150ca78]{font-family:JetBrains Mono,monospace}.muted[data-v-3150ca78]{color:var(--ink-dim)}@media (max-width:768px){.footer-inner[data-v-3150ca78]{grid-template-columns:1fr;gap:32px}.footer-cols[data-v-3150ca78]{grid-template-columns:1fr 1fr}}.theme-toggle-wrap[data-v-b7db439c]{position:fixed;bottom:24px;right:24px;z-index:9999;font-family:Pretendard Variable,Inter,sans-serif}.theme-trigger[data-v-b7db439c]{width:52px;height:52px;border-radius:14px;border:1px solid var(--line);background:var(--surface-strong);backdrop-filter:saturate(140%) blur(16px);cursor:pointer;display:grid;place-items:center;position:relative;transition:all .2s;box-shadow:0 8px 24px rgba(0,0,0,.15)}.theme-trigger[data-v-b7db439c]:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.2)}.theme-trigger.open[data-v-b7db439c]{transform:rotate(45deg)}.theme-trigger-swatch[data-v-b7db439c]{position:absolute;inset:4px;border-radius:10px;border:1px solid hsla(0,0%,100%,.15);transition:background .3s}.theme-trigger-icon[data-v-b7db439c]{position:relative;color:var(--ink);font-size:16px;mix-blend-mode:difference;filter:invert(1);font-weight:700}.theme-panel[data-v-b7db439c]{position:absolute;bottom:calc(100% + 12px);right:0;width:280px;padding:14px;border-radius:16px;color:var(--ink)}.theme-panel-head[data-v-b7db439c]{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:12px;padding-left:4px}.theme-group-label[data-v-b7db439c]{font-size:10px;font-weight:600;color:var(--ink-dim);letter-spacing:.08em;padding:8px 4px 6px}.theme-row[data-v-b7db439c]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px}.theme-opt[data-v-b7db439c]{padding:8px 6px;border-radius:9px;border:1px solid transparent;background:transparent;color:var(--ink-soft);cursor:pointer;font-size:11px;font-weight:500;font-family:inherit;display:flex;flex-direction:column;align-items:center;gap:6px;transition:all .15s}.theme-opt[data-v-b7db439c]:hover{background:var(--surface);color:var(--ink)}.theme-opt.active[data-v-b7db439c]{background:var(--surface-strong);border-color:var(--line-bright);color:var(--ink);font-weight:600}.theme-opt-swatch[data-v-b7db439c]{width:28px;height:28px;border-radius:8px;border:1px solid hsla(0,0%,50%,.2)}.theme-pop-enter-active[data-v-b7db439c],.theme-pop-leave-active[data-v-b7db439c]{transition:transform .2s cubic-bezier(.4,1.4,.6,1),opacity .15s}.theme-pop-enter-from[data-v-b7db439c],.theme-pop-leave-to[data-v-b7db439c]{opacity:0;transform:translateY(8px) scale(.96)}.dialog-overlay[data-v-aaac6564]{position:fixed;inset:0;background:rgba(15,18,25,.42);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:10000;pointer-events:auto}.dialog[data-v-aaac6564]{position:fixed;min-width:320px;max-width:90vw;background:var(--surface-strong);backdrop-filter:saturate(160%) blur(24px);-webkit-backdrop-filter:saturate(160%) blur(24px);border:1px solid var(--line-bright);border-radius:16px;box-shadow:0 1px 0 var(--inner-shadow) inset,0 24px 60px rgba(0,0,0,.25),0 8px 20px rgba(0,0,0,.12);display:flex;flex-direction:column;overflow:hidden;font-family:Pretendard Variable,Inter,sans-serif;color:var(--ink);transition:width .2s,height .2s,left .2s,top .2s,border-radius .2s}.dialog.dragging[data-v-aaac6564]{transition:none}.dialog.maximized[data-v-aaac6564]{border-radius:10px}.dialog.minimized[data-v-aaac6564]{height:auto!important}.dialog-header[data-v-aaac6564]{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 12px 18px;border-bottom:1px solid;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:move;position:relative;overflow:hidden}.dialog.minimized .dialog-header[data-v-aaac6564]{border-bottom:none}.dialog-header[data-v-aaac6564]:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--gradient-warm)}.dialog.variant-info .dialog-header[data-v-aaac6564]{background:linear-gradient(180deg,hsla(35,51%,65%,.22),hsla(35,51%,65%,.06));border-bottom-color:hsla(35,51%,65%,.32)}.dialog.variant-info .dialog-header[data-v-aaac6564]:before{background:linear-gradient(90deg,#d4af7a,#e8c8a0)}.dialog.variant-success .dialog-header[data-v-aaac6564]{background:linear-gradient(180deg,rgba(74,222,128,.22),rgba(74,222,128,.06));border-bottom-color:rgba(74,222,128,.36)}.dialog.variant-success .dialog-header[data-v-aaac6564]:before{background:linear-gradient(90deg,#22c55e,#4ade80)}.dialog.variant-warn .dialog-header[data-v-aaac6564]{background:linear-gradient(180deg,rgba(251,191,36,.25),rgba(251,191,36,.07));border-bottom-color:rgba(251,191,36,.4)}.dialog.variant-warn .dialog-header[data-v-aaac6564]:before{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.dialog.variant-error .dialog-header[data-v-aaac6564]{background:linear-gradient(180deg,rgba(239,68,68,.22),rgba(239,68,68,.06));border-bottom-color:rgba(239,68,68,.36)}.dialog.variant-error .dialog-header[data-v-aaac6564]:before{background:linear-gradient(90deg,#dc2626,#ef4444)}.dialog-title[data-v-aaac6564]{display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:700;letter-spacing:-.01em;color:var(--ink);position:relative;z-index:1}.dialog-dot[data-v-aaac6564]{width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px hsla(35,51%,65%,.25)}.dialog-dot.success[data-v-aaac6564]{background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.25)}.dialog-dot.warn[data-v-aaac6564]{background:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,.28)}.dialog-dot.error[data-v-aaac6564]{background:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.28)}.dialog-controls[data-v-aaac6564]{display:flex;gap:4px;position:relative;z-index:1}.dialog-ctrl[data-v-aaac6564]{width:26px;height:26px;border:none;border-radius:6px;background:hsla(0,0%,100%,.35);color:var(--ink);cursor:pointer;display:grid;place-items:center;transition:all .12s;backdrop-filter:blur(4px)}.dialog-ctrl svg[data-v-aaac6564]{width:12px;height:12px}.dialog-ctrl[data-v-aaac6564]:hover{background:hsla(0,0%,100%,.65);color:var(--ink);transform:translateY(-1px)}.dialog-ctrl.close[data-v-aaac6564]:hover{background:#ef4444;color:#fff}.dialog-body[data-v-aaac6564]{flex:1;display:flex;gap:16px;padding:24px 24px 12px;overflow-y:auto;align-items:flex-start}.dialog-icon[data-v-aaac6564]{flex-shrink:0;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:hsla(35,51%,65%,.12);color:var(--accent)}.dialog-icon svg[data-v-aaac6564]{width:22px;height:22px}.dialog-icon.success[data-v-aaac6564]{background:rgba(74,222,128,.14);color:#22c55e}.dialog-icon.warn[data-v-aaac6564]{background:rgba(251,191,36,.14);color:#d97706}.dialog-icon.error[data-v-aaac6564]{background:rgba(239,68,68,.14);color:#dc2626}.dialog-message[data-v-aaac6564]{flex:1;margin:0;padding-top:10px;font-size:14.5px;line-height:1.6;color:var(--ink);white-space:pre-wrap;word-break:break-word;letter-spacing:-.005em}.dialog-footer[data-v-aaac6564]{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px 18px;border-top:1px solid var(--line);background:linear-gradient(0deg,var(--surface),transparent)}.dlg-btn[data-v-aaac6564]{padding:9px 22px;border-radius:10px;font-family:inherit;font-size:13.5px;font-weight:600;border:1px solid transparent;cursor:pointer;transition:all .15s;min-width:80px}.dlg-btn-ghost[data-v-aaac6564]{background:var(--surface);color:var(--ink);border-color:var(--line)}.dlg-btn-ghost[data-v-aaac6564]:hover{border-color:var(--line-bright);background:var(--surface-strong)}.dlg-btn-primary[data-v-aaac6564]{background:var(--gradient-warm);color:var(--pill-primary-text);box-shadow:0 4px 12px hsla(35,51%,65%,.25)}.dlg-btn-primary[data-v-aaac6564]:hover{transform:translateY(-1px);box-shadow:0 6px 16px hsla(35,51%,65%,.35)}.dlg-btn-primary[data-v-aaac6564]:active{transform:translateY(0)}.dialog-resize[data-v-aaac6564]{position:absolute;right:2px;bottom:2px;width:18px;height:18px;cursor:nwse-resize;color:var(--ink-soft);display:grid;place-items:center;border-radius:4px}.dialog-resize[data-v-aaac6564]:hover{color:var(--ink)}.dialog-resize svg[data-v-aaac6564]{width:12px;height:12px}.dialog-fade-enter-active[data-v-aaac6564]{transition:opacity .18s}.dialog-fade-enter-active .dialog[data-v-aaac6564]{transition:opacity .22s cubic-bezier(.16,1,.3,1),transform .22s cubic-bezier(.16,1,.3,1)}.dialog-fade-leave-active[data-v-aaac6564]{transition:opacity .14s}.dialog-fade-leave-active .dialog[data-v-aaac6564]{transition:opacity .12s,transform .12s}.dialog-fade-enter-from[data-v-aaac6564]{opacity:0}.dialog-fade-enter-from .dialog[data-v-aaac6564]{opacity:0;transform:scale(.94) translateY(8px)}.dialog-fade-leave-to[data-v-aaac6564]{opacity:0}.dialog-fade-leave-to .dialog[data-v-aaac6564]{opacity:0;transform:scale(.96)}@media (max-width:560px){.dialog[data-v-aaac6564]{min-width:unset;width:calc(100vw - 24px)!important;left:12px!important;max-height:calc(100vh - 40px)}.dialog.maximized[data-v-aaac6564]{left:0!important;top:0!important;width:100vw!important;height:100vh!important;border-radius:0}.dialog-body[data-v-aaac6564]{padding:18px 18px 8px}.dialog-footer[data-v-aaac6564]{padding:12px 16px 16px}}.m-topbar[data-v-392c5af8]{flex-shrink:0;display:grid;grid-template-columns:56px 1fr 56px;align-items:center;height:52px;padding-top:env(safe-area-inset-top,0);background:var(--surface-strong);backdrop-filter:saturate(160%) blur(20px);-webkit-backdrop-filter:saturate(160%) blur(20px);border-bottom:1px solid var(--line);position:relative;z-index:55}.slot[data-v-392c5af8]{display:flex;align-items:center}.slot.left[data-v-392c5af8]{justify-content:flex-start;padding-left:8px}.slot.right[data-v-392c5af8]{justify-content:flex-end;padding-right:8px}.m-title[data-v-392c5af8]{margin:0;text-align:center;font-size:16px;font-weight:700;letter-spacing:-.02em;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-btn[data-v-392c5af8]{width:40px;height:40px;border-radius:12px;border:none;background:transparent;color:var(--ink);display:grid;place-items:center;cursor:pointer;transition:background .15s,transform .1s;-webkit-tap-highlight-color:transparent}.icon-btn[data-v-392c5af8]:active{transform:scale(.9);background:var(--surface)}.icon-btn svg[data-v-392c5af8]{width:24px;height:24px}.brand[data-v-392c5af8]{display:flex;align-items:center;padding:8px}.brand-mark[data-v-392c5af8]{width:26px;height:26px;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--accent-warm));box-shadow:0 0 18px hsla(35,51%,65%,.4)}.theme-wrap[data-v-392c5af8]{position:relative}.theme-trigger[data-v-392c5af8]{width:38px;height:38px;border:1.5px solid var(--line-bright);background:hsla(35,51%,65%,.16);color:var(--accent)}.theme-trigger[data-v-392c5af8]:active{transform:scale(.9)}.theme-trigger.open[data-v-392c5af8]{border-color:var(--accent);background:hsla(35,51%,65%,.26)}.theme-ic[data-v-392c5af8]{width:21px;height:21px}.theme-panel[data-v-392c5af8]{position:absolute;top:calc(100% + 8px);right:0;padding:12px;border-radius:14px;z-index:80;width:168px;color:var(--ink);background-color:var(--bg);background-image:linear-gradient(var(--surface-strong),var(--surface-strong));border:1px solid var(--line-bright);box-shadow:0 12px 32px rgba(0,0,0,.35)}.tp-label[data-v-392c5af8]{font-size:9.5px;font-weight:700;color:var(--ink-dim);letter-spacing:.08em;padding:2px 2px 6px}.tp-label[data-v-392c5af8]:not(:first-child){padding-top:10px}.tp-row[data-v-392c5af8]{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tp-opt[data-v-392c5af8]{padding:4px;border-radius:10px;border:1.5px solid transparent;background:transparent;cursor:pointer;display:grid;place-items:center;transition:border-color .15s}.tp-opt.active[data-v-392c5af8]{border-color:var(--accent)}.tp-swatch[data-v-392c5af8]{width:34px;height:34px;border-radius:8px;border:1px solid hsla(0,0%,50%,.25)}.theme-pop-enter-active[data-v-392c5af8],.theme-pop-leave-active[data-v-392c5af8]{transition:transform .18s cubic-bezier(.4,1.4,.6,1),opacity .14s}.theme-pop-enter-from[data-v-392c5af8],.theme-pop-leave-to[data-v-392c5af8]{opacity:0;transform:translateY(-8px) scale(.96)}.m-tabbar[data-v-329c2b44]{flex-shrink:0;display:flex;align-items:stretch;justify-content:space-around;height:64px;padding-bottom:env(safe-area-inset-bottom,0);background:var(--surface-strong);backdrop-filter:saturate(160%) blur(20px);-webkit-backdrop-filter:saturate(160%) blur(20px);border-top:1px solid var(--line);position:relative;z-index:60}.tab[data-v-329c2b44]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:none;border:none;cursor:pointer;color:var(--ink-dim);font-family:inherit;transition:color .15s,transform .1s;-webkit-tap-highlight-color:transparent}.tab[data-v-329c2b44]:active{transform:scale(.92)}.tab.active[data-v-329c2b44]{color:var(--ink)}.tab.active .tab-icon[data-v-329c2b44]{color:var(--accent)}.tab-icon[data-v-329c2b44]{width:24px;height:24px;display:grid;place-items:center}.tab-icon[data-v-329c2b44] svg{width:24px;height:24px}.tab-label[data-v-329c2b44]{font-size:10.5px;font-weight:600;letter-spacing:-.01em}.account-sheet-backdrop[data-v-329c2b44]{position:fixed;inset:0;background:rgba(0,0,0,.55);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:200;display:flex;align-items:flex-end}.account-sheet[data-v-329c2b44]{width:100%;border-radius:22px 22px 0 0;padding:10px 18px calc(20px + env(safe-area-inset-bottom, 0px));max-height:calc(100vh - env(safe-area-inset-top, 0px) - 12px);max-height:calc(100dvh - env(safe-area-inset-top, 0px) - 12px);overflow-y:auto;-webkit-overflow-scrolling:touch;color:var(--ink);background-color:var(--bg);background-image:linear-gradient(var(--surface-strong),var(--surface-strong));border-top:1px solid var(--line-bright);box-shadow:0 -10px 40px rgba(0,0,0,.4)}.sheet-grip[data-v-329c2b44]{width:40px;height:4px;border-radius:99px;background:var(--line-bright);margin:6px auto 16px}.sheet-user[data-v-329c2b44]{display:flex;align-items:center;gap:12px;padding:4px 4px 16px}.sheet-user-btn[data-v-329c2b44]{width:100%;border:none;background:transparent;cursor:pointer;text-align:left;font-family:inherit;color:inherit;border-bottom:1px solid var(--line);margin-bottom:8px}.sheet-avatar[data-v-329c2b44]{width:44px;height:44px;border-radius:50%;background:var(--gradient-warm);color:var(--pill-primary-text);display:grid;place-items:center;font-weight:700;font-size:18px;flex-shrink:0}.sheet-user-text[data-v-329c2b44]{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.sheet-user-arr[data-v-329c2b44]{color:var(--ink-dim);font-size:22px;line-height:1}.sheet-user-text strong[data-v-329c2b44]{font-size:16px;font-weight:700}.sheet-role[data-v-329c2b44]{font-size:11px;color:var(--ink-soft);font-family:JetBrains Mono,monospace}.sheet-guest[data-v-329c2b44]{text-align:center;color:var(--ink-soft);font-size:14px;margin:8px 0 16px}.sheet-btn[data-v-329c2b44]{width:100%;display:flex;align-items:center;gap:12px;padding:14px 16px;margin-bottom:8px;border-radius:14px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:15px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s}.sheet-btn[data-v-329c2b44]:active{transform:scale(.98)}.sheet-btn[data-v-329c2b44] svg{width:20px;height:20px}.sheet-btn.primary[data-v-329c2b44]{background:var(--gradient-warm);color:var(--pill-primary-text);border:none;justify-content:center}.sheet-btn.danger[data-v-329c2b44]{color:#e0564f}.sheet-cancel[data-v-329c2b44]{width:100%;padding:14px;margin-top:4px;border-radius:14px;border:none;background:transparent;color:var(--ink-soft);font-size:15px;font-weight:600;font-family:inherit;cursor:pointer}.sheet-enter-active[data-v-329c2b44],.sheet-leave-active[data-v-329c2b44]{transition:opacity .2s}.sheet-enter-active .account-sheet[data-v-329c2b44],.sheet-leave-active .account-sheet[data-v-329c2b44]{transition:transform .25s cubic-bezier(.32,.72,0,1)}.sheet-enter-from[data-v-329c2b44],.sheet-leave-to[data-v-329c2b44]{opacity:0}.sheet-enter-from .account-sheet[data-v-329c2b44],.sheet-leave-to .account-sheet[data-v-329c2b44]{transform:translateY(100%)}#app{font-family:Pretendard Variable,Inter,-apple-system,BlinkMacSystemFont,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--ink,#2c3e50);overflow-y:auto;min-height:100vh;background:var(--bg-img,none),var(--bg,#fff);background-attachment:fixed;transition:background .3s,color .3s}body.is-mobile #app{padding-top:0;height:auto}.m-shell{display:flex;flex-direction:column;height:100vh;height:100dvh;width:100%;overflow:hidden}.m-content{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;display:flex;flex-direction:column}.m-chat-shell,.m-content--fixed{overflow:hidden}.m-chat-shell{position:fixed;inset:0;display:flex;flex-direction:column;height:100vh;height:100dvh;width:100%;z-index:1}.m-chat-shell>#chat-wrapper{flex:1 1 auto;min-height:0}body.is-mobile .theme-toggle-wrap{bottom:calc(84px + env(safe-area-inset-bottom, 0px));right:16px}.app-dropdown{position:relative;display:inline-flex;align-items:center;gap:6px;padding:0 30px 0 12px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;outline:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:border-color .15s,background .15s,box-shadow .15s;white-space:nowrap}.app-dropdown--md{height:38px}.app-dropdown--sm{height:32px;padding:0 26px 0 10px;font-size:12.5px;gap:5px}.app-dropdown--ghost{background:transparent;border-color:transparent}.app-dropdown--ghost:hover{background:var(--surface);border-color:var(--line)}.app-dropdown:hover:not(.app-dropdown--disabled){border-color:var(--line-bright)}.app-dropdown:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px hsla(35,51%,65%,.14)}.app-dropdown--open{border-color:var(--accent)!important;box-shadow:0 0 0 3px hsla(35,51%,65%,.14)}.app-dropdown--disabled{opacity:.5;cursor:not-allowed}.app-dropdown__icon{display:inline-grid;place-items:center;color:var(--ink-soft);font-size:12px;flex-shrink:0}.app-dropdown__value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-flex;align-items:center;gap:6px;min-width:0}.app-dropdown__opt-icon{font-size:14px;line-height:1;display:inline-flex;align-items:center;color:var(--ink-soft)}.app-dropdown__opt-icon svg{display:block}.app-dropdown__label{overflow:hidden;text-overflow:ellipsis}.app-dropdown__placeholder{color:var(--ink-dim);font-weight:400}.app-dropdown__caret{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:9px;color:var(--ink-dim);transition:transform .18s;pointer-events:none}.app-dropdown--open .app-dropdown__caret{transform:translateY(-50%) rotate(180deg);color:var(--accent)}.app-dropdown--sm .app-dropdown__caret{right:8px}.app-dropdown-panel{position:fixed;z-index:100000;background:var(--surface-strong);backdrop-filter:saturate(160%) blur(20px);-webkit-backdrop-filter:saturate(160%) blur(20px);border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 0 var(--inner-shadow) inset,0 12px 32px rgba(0,0,0,.14),0 4px 10px rgba(0,0,0,.06);padding:6px;overflow-y:auto;font-family:inherit;color:var(--ink)}.app-dropdown-panel::-webkit-scrollbar{width:6px}.app-dropdown-panel::-webkit-scrollbar-thumb{background:var(--line-bright);border-radius:3px}.app-dropdown-panel::-webkit-scrollbar-thumb:hover{background:var(--ink-dim)}.app-dropdown-panel__group{padding:8px 10px 4px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-dim)}.app-dropdown-panel__opt{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;cursor:pointer;font-size:13px;color:var(--ink);line-height:1.3;transition:background .12s,color .12s;position:relative}.app-dropdown-panel__opt.is-active{background:var(--surface)}.app-dropdown-panel__opt.is-selected{color:var(--accent);font-weight:600;background:hsla(35,51%,65%,.08)}.app-dropdown-panel__opt.is-selected.is-active{background:hsla(35,51%,65%,.16)}.app-dropdown-panel__opt.is-disabled{opacity:.4;cursor:not-allowed}.app-dropdown-panel__opt-icon{font-size:14px;line-height:1;flex-shrink:0;display:inline-flex;align-items:center;color:var(--ink-soft)}.app-dropdown-panel__opt-icon svg{display:block}.app-dropdown-panel__opt-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-dropdown-panel__opt-check{font-size:11px;color:var(--accent);flex-shrink:0}.app-dropdown-panel__empty{padding:14px 10px;text-align:center;color:var(--ink-dim);font-size:12.5px}.app-dropdown-panel--sm{padding:4px}.app-dropdown-panel--sm .app-dropdown-panel__opt{padding:6px 8px;font-size:12.5px}.app-dropdown-fade-enter-active{transition:opacity .14s,transform .14s cubic-bezier(.16,1,.3,1)}.app-dropdown-fade-leave-active{transition:opacity .1s,transform .1s}.app-dropdown-fade-enter-from,.app-dropdown-fade-leave-to{opacity:0;transform:scale(.96) translateY(-4px)}.app-icon[data-v-58d67c6b]{display:inline-flex;align-items:center;justify-content:center;vertical-align:-.18em;flex-shrink:0}.app-icon[data-v-58d67c6b] svg{display:block}.mode-icon[data-v-0851be90]{display:inline-flex;align-items:center;justify-content:center;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.08))}.mode-icon--sm[data-v-0851be90] svg{width:18px;height:18px;display:block}.mode-icon--md[data-v-0851be90] svg{width:24px;height:24px;display:block}.mode-icon--lg[data-v-0851be90] svg{width:34px;height:34px;display:block}.mode-icon--inline[data-v-0851be90]{vertical-align:-3px;margin:0 2px}