:root{font-family:Inter,Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans KR,sans-serif;color:#26352d;background:#f8f9f6;font-synthesis:none;font-weight:400;line-height:1.6;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,label.file-button,summary{touch-action:manipulation}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#fff;border:1px solid #dce2d9;border-radius:8px;padding:10px 16px;color:#314137;text-decoration:none;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}button:hover,.button:hover{background:#f0f3ec;border-color:#aebbaa}button:disabled,input:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #83b857;outline-offset:3px}.primary{background:#263e2d;color:#fff;border-color:#263e2d}.primary:hover{background:#37533a;border-color:#37533a}a{color:#3c6d42;text-underline-offset:4px}h1,h2,h3,p{margin:0}h1{font-size:30px;letter-spacing:-1px;font-weight:750;line-height:1.3}h2{font-size:20px;letter-spacing:-.6px}h3{font-size:17px;letter-spacing:-.4px}small{font-size:12px}svg{flex-shrink:0;vertical-align:middle}.shell{display:flex;min-height:100dvh}aside{width:232px;flex-shrink:0;background:#fff;border-right:1px solid #e3e8df;padding:32px 22px 20px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:#203729;font-size:21px;font-weight:750;letter-spacing:-.7px;line-height:1.4}.brand small{display:block;font-size:9px;letter-spacing:2.2px;font-weight:600;color:#869080;margin-top:2px}.workspace-label{font-size:10px;color:#90988e;letter-spacing:1.7px;margin:52px 12px 12px;font-weight:700}.nav-item{display:flex;align-items:center;gap:11px;padding:11px 13px;border:none;font-weight:550;font-size:13px;text-decoration:none;color:#6d786a;border-radius:7px;justify-content:flex-start;width:100%;margin-bottom:6px}.nav-item.active{color:#315439;background:#edf3e8}.nav-item span{margin-left:auto;background:#dce8d3;border-radius:4px;min-width:24px;font-size:11px;padding:1px 5px;text-align:center}.sidebar-note{margin-top:auto;padding:25px 8px;color:#778273;font-size:9px;font-weight:700;letter-spacing:.8px}.status-dot,.session i{display:inline-block;width:6px;height:6px;background:#86a65f;border-radius:50%;margin-right:5px}.sidebar-note p{font-size:12px;line-height:1.8;font-weight:400;letter-spacing:0;margin-top:9px;color:#8a9387}.tmo-link{display:flex;justify-content:space-between;border-top:1px solid #e7eae3;padding:20px 8px 0;text-decoration:none;color:#3a4b3e;font-size:13px;font-weight:750;letter-spacing:.3px}.workspace{margin-left:232px;width:calc(100% - 232px)}header{height:76px;border-bottom:1px solid #e3e8df;display:flex;align-items:center;justify-content:space-between;padding:0 42px;background:#fff;font-size:12px;color:#798275}header b{padding:0 12px;color:#bdc5b8;font-weight:400}.session{font-size:11px;white-space:nowrap}.session i{background:#b9c1b2}.session.connected i{background:#81a850}main{max-width:1240px;padding:48px 42px 0;margin:auto}.eyebrow{display:block;font-size:10px;letter-spacing:1.8px;font-weight:750;color:#7a8c6c;margin-bottom:10px}.page-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;gap:20px}.page-title p,.detail-title p{color:#83907d;margin-top:10px;font-size:13px}.welcome{border:1px solid #dce5d4;border-radius:14px;padding:48px 36px;background:#f0f5e9;display:grid;grid-template-columns:1.1fr 1fr;gap:45px;align-items:center;min-height:390px}.welcome .eyebrow{font-size:9px;letter-spacing:1.4px}.welcome h2{font-size:32px;line-height:1.5;letter-spacing:-1.3px;color:#243c29;margin:18px 0}.welcome p{color:#77876c;line-height:1.9;font-size:13px}.login-actions{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0 10px}.welcome small{color:#87927f;font-size:11px}.shared-diagram{max-width:330px;width:100%;margin:auto}.diagram-file{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e1e7da;border-radius:8px;padding:14px 16px;margin-bottom:10px;font-size:12px;color:#6b7f58;box-shadow:0 2px 2px #1a301005}.diagram-file span{flex:1;font-weight:650;color:#4d5c43}.diagram-file b{font-size:10px;background:#f0f3e9;border-radius:4px;padding:3px 5px;font-weight:500;margin-left:7px}.diagram-file i{font-style:normal;font-size:10px;color:#9ba691}.diagram-file:first-child{transform:translate(-8px)}.diagram-file:nth-child(3){transform:translate(8px)}.connector{text-align:center;color:#8d9e7d;font-size:10px;padding:6px 0 17px;letter-spacing:1px}.diagram-save{display:flex;gap:14px;align-items:center;padding:20px;border-radius:9px;background:#2b432e;color:#e4eddb}.diagram-save span{font-size:13px;font-weight:650;flex:1}.diagram-save small{display:block;font-weight:400;font-size:10px;color:#9db78c;margin-top:3px}.guide{border:1px solid #e0e5db;background:#fff;border-radius:10px;margin:30px 0}.guide summary{cursor:pointer;display:flex;align-items:center;gap:12px;padding:20px 23px;font-weight:600;font-size:13px;list-style:none}.guide summary::-webkit-details-marker{display:none}.guide summary span{font-weight:400;font-size:12px;color:#939c8d;margin-left:auto}.guide summary:after{content:"+";font-size:20px;font-weight:400;color:#76806d}.guide[open] summary:after{content:"−"}.guide-body{padding:4px 28px 25px;color:#69765f;font-size:13px}.guide-body h3{font-size:15px}.guide-body ol{padding-left:21px;line-height:2.2}.guide-body p{margin:14px 0}.guide-body code{padding:2px 5px;border-radius:3px;background:#f0f3ec;color:#315035;font-size:12px}footer{display:flex;align-items:center;gap:12px;color:#84907b;font-size:11px;padding:6px 0 27px}footer>span:nth-child(2){font-size:10px;color:#a0a797}footer>span:last-child{margin-left:auto;font-size:9px;letter-spacing:1.4px;color:#9aa491}.toolbar{display:flex;justify-content:space-between;align-items:center;margin:28px 0 24px;color:#909b85;font-size:12px}.search{display:flex;align-items:center;gap:9px;border:1px solid #e0e6da;background:#fff;border-radius:7px;padding:8px 12px;width:280px;color:#97a08e}.search input{border:none;outline:none;padding:0;background:transparent;width:100%;font-size:12px}.search:focus-within{outline:2px solid #91b16f}.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.archive-card{display:block;text-align:left;padding:24px 22px;background:#fff;border-color:#e2e7dc;border-radius:11px;min-width:0}.archive-card:hover{background:#fff;border-color:#9eb88c;transform:translateY(-2px)}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.archive-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:11px;background:#edf3e6;color:#709153}.archive-icon.color-1{background:#f7eee1;color:#b69665}.archive-icon.color-2{background:#eaf0f3;color:#8197a7}.pill{font-size:10px;font-weight:500;background:#f3f5ef;border:1px solid #e5e9de;border-radius:20px;padding:3px 9px;color:#7e8a71}.archive-card h3{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.archive-card p{color:#939d89;font-size:12px;font-weight:400;margin-top:7px;height:42px;overflow:hidden;line-height:1.8;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.card-foot{display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:400;color:#9ca68f;margin-top:23px;border-top:1px solid #edf0e7;padding-top:16px}.empty{text-align:center;padding:70px 20px 80px;border:1px dashed #d3deca;border-radius:12px;background:#fdfefb}.empty-icon{display:inline-flex;padding:20px;background:#eef4e7;color:#8ba56e;border-radius:20px;margin-bottom:20px}.empty p{margin:10px 0 24px;color:#8b9681;font-size:13px}.back{border:0;background:transparent;padding:0;margin-bottom:24px;font-size:12px;color:#78866f}.back:hover{background:transparent;color:#2e4a2f}.detail-title{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px}.integration{border:1px solid #d9e3ce;background:#eef4e7;border-radius:10px;padding:24px;margin-bottom:36px}.integration .eyebrow{margin:0;color:#526c3d;letter-spacing:.7px}.integration p{font-size:12px;color:#7c8f6a;margin:4px 0 15px}.code-row{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fff;border:1px solid #dce5d2;border-radius:7px}.code-row code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;color:#3d5e30;word-break:break-all;flex:1}.code-row button{font-size:11px;white-space:nowrap;padding:6px 10px}.integration>small{display:block;margin-top:12px;color:#8b9a7c;font-size:11px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 20px}.section-title h2{font-size:17px}.section-title p{font-size:12px;color:#919d85;margin-top:5px}.count{font-size:12px;padding:3px 7px;border-radius:5px;background:#e9efdf;color:#7d9465;margin-left:5px}.file-button{position:relative;overflow:hidden;font-size:12px}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.file-button:focus-within{outline:3px solid #83b857;outline-offset:3px}.dropzone{border:1px dashed #c5d3b9;border-radius:9px;display:flex;flex-direction:column;align-items:center;padding:27px 15px;background:#fdfefb;cursor:pointer;color:#9aae87;gap:5px;text-align:center}.dropzone:hover,.dropzone.dragging{background:#f1f7e9;border-color:#8ba66e}.dropzone strong{font-size:13px;font-weight:550;color:#6d825a;margin-top:7px}.dropzone span,.dropzone small{font-size:11px;color:#a0ac92}.dropzone small{margin-top:5px;font-size:10px}.map-list{border:1px solid #e0e6d8;border-radius:9px;overflow:hidden;background:#fff}.map-row{display:flex;align-items:center;gap:16px;padding:18px;border-bottom:1px solid #edf0e7}.map-row:last-child{border:0}.file-icon{background:#f1f5eb;color:#8aa56d;border-radius:7px;display:flex;padding:10px}.map-info{flex:1;min-width:0}.map-info strong{display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis}.hash{display:block;font-family:ui-monospace,monospace;font-size:10px;color:#a0aa94;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-top:4px;max-width:420px}.file-size,.file-date{font-size:11px;color:#919e83;white-space:nowrap}.map-status{display:inline-flex;align-items:center;gap:5px;color:#718d56;background:#eef5e8;border-radius:4px;padding:4px 7px;font-size:10px;white-space:nowrap}.map-empty{text-align:center;color:#9aa58e;font-size:12px;padding:28px}.loading{min-height:280px;display:flex;align-items:center;justify-content:center;gap:10px;color:#859477;font-size:13px}.spinner{border:2px solid #d8e3cd;border-top-color:#587344;width:18px;height:18px;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#error{background:#fff0eb;border:1px solid #eacfc1;color:#995b40;border-radius:8px;padding:15px;margin-bottom:20px;font-size:12px}#error[hidden]{display:none}#error button{padding:3px 8px;margin-left:8px;font-size:11px}#upload-progress{margin:12px 0;font-size:12px;color:#7e936c}#upload-progress.failure,#form-error{color:#a35d42}dialog{border:1px solid #dce4d5;border-radius:14px;padding:30px;max-width:500px;width:calc(100% - 36px);color:#32472d;box-shadow:0 20px 100px #1a2d1733}dialog::backdrop{background:#15221166;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-title{display:flex;align-items:center;justify-content:space-between}.icon-button{border:0;padding:6px}.modal-title+p{font-size:12px;color:#8d9c7d;margin:10px 0 25px}form label{display:block;font-size:12px;font-weight:600;margin:17px 0}form input,form textarea{display:block;border:1px solid #d9e2d0;background:#fff;width:100%;padding:11px 12px;border-radius:7px;outline:none;margin-top:8px;color:#30452b;font-size:13px;resize:vertical}form input:focus,form textarea:focus{border-color:#86a86b;box-shadow:0 0 0 3px #edf4e6}input::placeholder,textarea::placeholder{color:#a1ac95}.optional{color:#a4af99;font-weight:400;margin-left:4px}.form-note{display:flex;gap:8px;font-size:11px;color:#8c9a7c;background:#f3f6ed;padding:11px;border-radius:6px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:25px}#form-error{font-size:12px;margin-top:10px}#notice{position:fixed;bottom:28px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#293f28;color:#fff;border:1px solid #50654c;padding:12px 22px;border-radius:9px;font-size:12px;box-shadow:0 5px 25px #26382020;transition:.2s;max-width:90vw;z-index:20}#notice.show{transform:translate(-50%);opacity:1}@media(min-width:1600px){main{padding-top:60px}.welcome{padding:60px}}@media(max-width:1150px){aside{width:205px;padding-inline:17px}.workspace{margin-left:205px;width:calc(100% - 205px)}main{padding-inline:28px}header{padding-inline:28px}.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.welcome{padding:30px 25px;gap:24px}.welcome h2{font-size:27px}.file-date{display:none}}@media(max-width:820px){aside{position:static;width:100%;padding:18px 22px;flex-direction:row;align-items:center;gap:20px;border-right:0;border-bottom:1px solid #e3e8df}.shell{display:block}.brand{font-size:18px;flex-shrink:0}.brand img{width:30px;height:30px}.brand small{font-size:8px}.workspace-label,.sidebar-note,.tmo-link{display:none}.nav-item{width:auto;margin:0;padding:8px;font-size:11px}.nav-item svg,.nav-item span{display:none}.nav-item.active{margin-left:auto}.workspace{width:100%;margin:0}header{height:54px;padding:0 24px;font-size:10px}.session{font-size:10px}main{padding:30px 24px 0}.welcome{grid-template-columns:1fr 1fr;gap:25px}.welcome h2{font-size:26px}.login-actions{flex-direction:column;align-items:flex-start}.guide summary span{display:none}}@media(max-width:560px){aside{gap:12px;padding:16px}.brand{font-size:16px;gap:7px}.brand small{letter-spacing:1.5px}.nav-item{font-size:10px;padding:7px}.nav-item[href]{display:none}header{padding-inline:18px}header>span:first-child{max-width:52%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session{font-size:9px}main{padding:30px 18px 0}.page-title{gap:10px;align-items:flex-start}.page-title h1{font-size:26px}.page-title p{font-size:12px}.page-title .primary{font-size:11px;padding:9px;white-space:nowrap}.eyebrow{font-size:8px}.welcome{grid-template-columns:1fr;padding:30px 24px;gap:36px}.welcome h2{font-size:30px}.login-actions{flex-direction:row}.welcome .login-actions button{font-size:12px;padding:9px 11px}.shared-diagram{max-width:290px}.archive-grid{grid-template-columns:1fr}.search{width:65%}.toolbar>span{font-size:10px}.detail-title{align-items:flex-start}.detail-title h1{font-size:25px}.detail-title p{font-size:12px}.detail-title button{font-size:11px;white-space:nowrap}.integration{padding:18px}.code-row{align-items:flex-start;flex-direction:column}.code-row code{font-size:11px}.section-title{gap:10px}.section-title p{font-size:11px}.section-title .button{white-space:nowrap;padding:9px 11px;font-size:11px}.map-row{padding:13px 10px;gap:10px}.map-status{display:none}.file-size{font-size:10px}.file-icon{padding:8px}.map-info strong{font-size:11px}.guide summary{padding:17px;font-size:12px}.guide-body{padding:0 19px 20px;font-size:12px}.guide-body ol{line-height:1.9}footer>span:nth-child(2){display:none}.empty{padding:50px 18px}.empty h2{font-size:18px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.account{display:flex;align-items:center;gap:16px;min-width:0}.account .session{display:grid;grid-template-columns:6px minmax(0,1fr);gap:0 8px;align-items:center;white-space:normal}.account .session i{margin:0}.account .session strong{font-size:12px;color:#3d5740;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.account .session small{grid-column:2;font-size:10px;color:#87927f}.logout{font-size:11px;padding:7px 10px;white-space:nowrap}.nav-item[href="#guide"]{margin-left:0}@media(max-width:560px){header{height:auto;min-height:64px;gap:12px;padding-block:12px;flex-wrap:wrap}header>span:first-child{max-width:100%}.account{gap:12px;margin-left:auto}.account .session strong{font-size:11px;max-width:130px}.account .session small{font-size:9px}.logout{font-size:10px;padding:6px 8px}}.metadata-note{color:#7c8f6a;font-size:12px;margin:14px 0}
