:root{--hd-height: 50px;--hd-height-mobile: 60px;--hd-bg: #ffffff;--hd-border: none;--hd-text: #333333;--hd-text-hover: #000000;--hd-shadow: 0 2px 10px rgba(0, 0, 0, .03)}.desktop-header,.mobile-header{position:fixed;top:0;left:0;width:100%;z-index:1000;background-color:var(--hd-bg);box-shadow:var(--hd-shadow);margin:0;padding:0;box-sizing:border-box}.desktop-header{height:var(--hd-height);display:flex;justify-content:center;align-items:center}.desktop-header-inner{width:100%;height:100%;display:flex;align-items:center;padding:0 20px}.desktop-logo-link{display:flex;align-items:center;margin-right:40px;text-decoration:none}.desktop-logo-img{height:60px;width:auto;display:block}.desktop-nav{display:flex;align-items:center;gap:8px;flex:1}.nav-item-btn{background:transparent;border:none;cursor:pointer;padding:8px 16px;font-size:15px;font-weight:600;color:var(--hd-text);border-radius:8px;transition:all .2s;letter-spacing:-.3px}.nav-item-btn:hover{background-color:#0000000a;color:var(--hd-text-hover)}.nav-loading{font-size:14px;color:#999}.desktop-actions{display:flex;align-items:center;gap:20px}.search-bar-wrapper{position:relative;width:220px;height:38px}.search-bar-wrapper input{width:100%;height:100%;border:1px solid #e0e0e0;background-color:#f9f9f9;border-radius:20px;padding:0 16px 0 36px;font-size:14px;transition:all .2s;box-sizing:border-box}.search-bar-wrapper input:focus{outline:none;background-color:#fff;border-color:#bbb;box-shadow:0 2px 8px #0000000d}.search-icon-placeholder{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#999;display:flex;align-items:center}.icon-action-btn{position:relative;background:transparent;border:none;cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--hd-text);transition:background .2s}.icon-action-btn:hover{background-color:#0000000a}.icon-action-btn svg{width:24px;height:24px}.desktop-badge{position:absolute;top:4px;right:4px;background-color:#ff3b30;color:#fff;font-size:10px;font-weight:700;height:16px;min-width:16px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:2px solid #fff;box-shadow:0 1px 2px #0000001a}.auth-btn-group{display:flex;align-items:center;gap:8px;margin-left:10px}.btn-text{background:transparent;border:none;font-size:14px;font-weight:600;color:var(--hd-text);cursor:pointer;padding:8px 12px;border-radius:6px;transition:background .2s}.btn-text:hover{background-color:#0000000a}.btn-primary{border:none;font-size:14px;font-weight:700;color:#333;cursor:pointer;padding:8px 18px;border-radius:20px;transition:transform .2s,filter .2s}.btn-primary:hover{filter:brightness(.95);transform:translateY(-1px)}.mobile-header{height:var(--hd-height-mobile);display:flex;align-items:center}.mobile-header-inner{width:100%;height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 16px}.menu-icon-btn{background:transparent;border:none;padding:8px;margin-left:-8px;cursor:pointer;color:var(--hd-text)}.mobile-logo-link{display:flex;align-items:center;justify-content:center;position:absolute;left:50%;transform:translate(-50%)}.mobile-logo-img{height:64px;width:auto}.mobile-actions{display:flex;align-items:center}.mobile-chat-btn{position:relative;background:transparent;border:none;padding:8px;margin-right:-8px;cursor:pointer;color:var(--hd-text)}.mobile-badge{position:absolute;top:4px;right:4px;background-color:#ff3b30;color:#fff;font-size:9px;font-weight:700;padding:2px 4px;border-radius:6px;border:1px solid #fff}.spacer-56{width:40px}.header-spacer{width:100%}.header-spacer.desktop{height:var(--hd-height)}.header-spacer.mobile{height:var(--hd-height-mobile)}.chat-widget-popup{position:fixed;width:380px;height:640px;max-height:calc(100vh - 40px);background-color:#fff;border-radius:20px;box-shadow:0 12px 48px #00000026,0 4px 12px #0000001a;display:flex;flex-direction:column;z-index:9999;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Segoe UI,Roboto,sans-serif;overflow:hidden;border:1px solid rgba(0,0,0,.05);animation:cw-fade-in .3s cubic-bezier(.16,1,.3,1)}@keyframes cw-fade-in{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-widget-header{height:56px;padding:0 16px;background-color:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #f0f0f0;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;cursor:grab;z-index:10}.chat-widget-header:active{cursor:grabbing}.chat-widget-header-title{flex:1;display:flex;flex-direction:column;margin:0 12px;overflow:hidden}.chat-widget-header h3{margin:0;font-size:16px;font-weight:700;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-widget-header-subtitle{font-size:11px;color:#888;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-actions{display:flex;gap:4px}.chat-widget-btn-icon{background:none;border:none;cursor:pointer;width:36px;height:36px;border-radius:50%;color:#555;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.chat-widget-btn-icon:hover{background-color:#f5f5f5}.chat-widget-btn-icon.active{color:#007aff;background-color:#eef7ff}.chat-widget-body{flex:1;display:flex;flex-direction:column;overflow:hidden;background-color:#fff;position:relative}.chat-widget-room-list{flex:1;overflow-y:auto;background-color:#fff}.chat-widget-empty-state{display:flex;align-items:center;justify-content:center;height:100%;color:#999;font-size:14px}.chat-widget-room-item{padding:16px;border-bottom:1px solid #f9f9f9;cursor:pointer;display:flex;align-items:center;transition:background-color .1s}.chat-widget-room-item:hover{background-color:#f7f7f8}.chat-widget-room-item.unread{background-color:#f0f7ff}.chat-widget-room-avatar{width:48px;height:48px;background-color:#eef1f5;border-radius:18px;margin-right:14px;display:flex;align-items:center;justify-content:center;color:#7d8ea0}.chat-widget-room-info{flex:1;overflow:hidden}.room-top{display:flex;justify-content:space-between;margin-bottom:4px}.chat-widget-room-name{font-weight:600;color:#222;font-size:15px}.chat-widget-room-date{font-size:11px;color:#aaa}.room-bottom{display:flex;justify-content:space-between;align-items:center}.chat-widget-room-last-msg{color:#888;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90%}.unread-dot{width:8px;height:8px;background-color:#007aff;border-radius:50%}.chat-widget-room-view{display:flex;flex-direction:column;height:100%;background-color:#f2f3f5}.chat-widget-search-bar{padding:10px 16px;background:#fff;border-bottom:1px solid #eee;display:flex;gap:8px;animation:slideDown .2s ease-out}@keyframes slideDown{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.chat-widget-search-bar input{flex:1;padding:8px 12px;background:#f2f3f5;border:none;border-radius:8px;font-size:14px}.chat-widget-search-bar button{background:none;border:none;cursor:pointer;color:#007aff;font-weight:500;font-size:14px}.highlight{background-color:#ffe600;color:#000}.chat-widget-messages-area{flex:1;padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.chat-widget-date-divider{text-align:center;margin:16px 0}.chat-widget-date-divider span{background-color:#0000000f;color:#666;font-size:11px;padding:4px 10px;border-radius:12px}.chat-widget-system-msg{text-align:center;font-size:12px;color:#999;margin:8px 0}.chat-widget-message-container{display:flex;flex-direction:column;max-width:75%}.chat-widget-message-container.me{align-self:flex-end;align-items:flex-end}.chat-widget-message-container.other{align-self:flex-start;align-items:flex-start}.chat-widget-sender-name{font-size:11px;color:#666;margin-bottom:4px;margin-left:4px}.chat-widget-bubble-wrapper{display:flex;align-items:flex-end;gap:6px}.chat-widget-message-container.me .chat-widget-bubble-wrapper{flex-direction:row-reverse}.chat-widget-message-bubble{padding:10px 14px;border-radius:16px;font-size:14px;line-height:1.45;word-break:break-word;position:relative;box-shadow:0 1px 2px #0000000d}.chat-widget-message-bubble.me{background-color:#007aff;color:#fff;border-bottom-right-radius:4px}.chat-widget-message-bubble.other{background-color:#fff;color:#333;border-bottom-left-radius:4px}.chat-widget-msg-time{font-size:10px;color:#999;margin-bottom:2px;white-space:nowrap}.chat-widget-message-image{max-width:200px;border-radius:12px;cursor:pointer;display:block}.meeting-card{display:flex;gap:10px;align-items:center;background:#fff3;padding:8px;border-radius:8px}.chat-widget-message-bubble.other .meeting-card{background:#f5f5f5}.meeting-icon{font-size:24px}.meeting-title{font-size:11px;opacity:.8;font-weight:700}.meeting-desc{font-size:12px;font-weight:700}.chat-widget-input-area{background-color:#fff;border-top:1px solid #eee;padding:12px 16px;display:flex;flex-direction:column;gap:8px;flex-shrink:0}.chat-widget-input-toolbar{display:flex;gap:16px;margin-left:4px}.chat-widget-input-toolbar button{background:none;border:none;cursor:pointer;color:#999;padding:0;transition:color .2s}.chat-widget-input-toolbar button:hover{color:#007aff}.chat-widget-input-wrapper{display:flex;align-items:flex-end;gap:8px;background-color:#f2f3f5;border-radius:20px;padding:6px 6px 6px 16px}.chat-widget-input-wrapper textarea{flex:1;background:transparent;border:none;resize:none;max-height:80px;font-size:14px;padding:8px 0}.chat-widget-input-wrapper textarea:focus{outline:none}.btn-send{width:32px;height:32px;background-color:#007aff;color:#fff;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .1s;margin-bottom:2px}.btn-send:hover{transform:scale(1.05)}.btn-send:disabled{background-color:#ccc;cursor:default;transform:none}.chat-widget-drawer{position:absolute;top:0;right:0;bottom:0;width:280px;background:#fff;box-shadow:-4px 0 24px #0000001a;transform:translate(100%);transition:transform .3s cubic-bezier(.23,1,.32,1);z-index:100;display:flex;flex-direction:column}.chat-widget-drawer.open{transform:translate(0)}.chat-widget-drawer-header{height:56px;padding:0 16px;border-bottom:1px solid #f0f0f0;display:flex;align-items:center;justify-content:space-between;font-weight:700;font-size:15px;color:#222}.chat-widget-drawer-body{flex:1;overflow-y:auto;padding:0}.drawer-menu-list button{width:100%;padding:16px 20px;background:none;border:none;border-bottom:1px solid #f9f9f9;text-align:left;font-size:14px;color:#333;cursor:pointer;display:flex;align-items:center;gap:12px}.drawer-menu-list button:hover{background-color:#f9f9f9}.drawer-menu-list .icon{color:#888;width:20px;text-align:center}.gallery-grid{padding:4px;display:grid;grid-template-columns:repeat(3,1fr);gap:2px}.gallery-item{position:relative;padding-bottom:100%;cursor:pointer;overflow:hidden}.gallery-item img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .2s}.empty-msg{width:100%;text-align:center;padding:40px;color:#999;font-size:13px;grid-column:1 / -1}.participant-list{padding:10px}.participant-item{display:flex;align-items:center;gap:10px;padding:10px;border-bottom:1px solid #f5f5f5;font-size:14px}.p-avatar{width:32px;height:32px;background:#eee;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#666}.chat-widget-closed-notice{padding:20px;text-align:center;background:#f9f9f9;color:#888;font-size:13px}.chat-widget-meeting-form{padding:16px;background:#f9f9f9;border-top:1px solid #eee;display:flex;flex-direction:column;gap:10px}.form-header{font-weight:700;font-size:13px;color:#555}.form-row{display:flex;gap:8px}.form-row input{flex:1;padding:8px;border:1px solid #ddd;border-radius:8px}.form-input{padding:8px;border:1px solid #ddd;border-radius:8px;width:100%;box-sizing:border-box}.form-actions{display:flex;gap:8px}.form-actions button{flex:1;padding:10px;border-radius:8px;border:none;cursor:pointer;font-weight:600;font-size:13px}.btn-confirm{background:#007aff;color:#fff}.btn-cancel{background:#e5e5e5;color:#333}.chat-widget-emoji-picker{height:180px;background:#fff;border-top:1px solid #eee;display:flex;flex-direction:column}.emoji-grid{flex:1;overflow-y:auto;padding:10px;display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.emoji-grid button{font-size:20px;background:none;border:none;cursor:pointer;padding:5px}.emoji-close-btn{background:#f5f5f5;border:none;padding:8px;cursor:pointer;font-size:12px;color:#666}@media(max-width:768px){.chat-widget-popup{position:fixed!important;inset:0!important;width:100vw!important;height:100%!important;max-height:100%!important;margin:0!important;border-radius:0!important;box-shadow:none!important;transform:none!important}.chat-widget-header{height:50px;cursor:default}.chat-widget-drawer{width:100%}.chat-widget-input-area{padding-bottom:max(12px,env(safe-area-inset-bottom))}}:root{--sn-height: 50px;--sn-bg: #ffffff;--sn-border: #e0e0e0;--sn-text-idle: #444444;--sn-text-active: #000000}.sn-container{width:100%;height:var(--sn-height);background-color:var(--sn-bg);border-bottom:1px solid var(--sn-border);display:flex;justify-content:center;position:fixed;top:50px;left:0;z-index:990;box-shadow:0 4px 6px -1px #00000005;transition:top .3s ease}.sn-content{width:100%;height:100%;display:flex;align-items:center;padding:0 20px}.sn-scroll-track{display:flex;align-items:center;gap:8px;height:100%;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.sn-scroll-track::-webkit-scrollbar{display:none}.sn-menu-btn{background:transparent;border:none;cursor:pointer;padding:0 16px;height:34px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;color:var(--sn-text-idle);border-radius:17px;transition:all .2s ease;white-space:nowrap}.sn-menu-btn:hover{color:var(--sn-text-active);background-color:#f5f5f5;font-weight:600}.sn-menu-btn.active{color:var(--sn-text-active);background-color:#eee;font-weight:700}@media(max-width:768px){.sn-container{top:70px;overflow:hidden}.sn-content{padding:0 16px}.sn-menu-btn{padding:0 14px;font-size:13px}}:root{--mm-bg: #ffffff;--mm-text: #333333;--mm-text-sub: #454545;--mm-border: #f0f0f0;--mm-width: 320px;--mm-transition: cubic-bezier(.25, 1, .5, 1)}@keyframes mmSlideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes mmFadeIn{0%{opacity:0}to{opacity:1}}.mm-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0006;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:2000;animation:mmFadeIn .3s ease-out}.mm-drawer{width:var(--mm-width);height:100%;background-color:var(--mm-bg);position:absolute;top:0;left:0;overflow-y:auto;box-shadow:4px 0 24px #00000026;animation:mmSlideIn .4s var(--mm-transition);display:flex;flex-direction:column}.mm-header{padding:30px 24px;display:flex;justify-content:space-between;align-items:center;background-color:var(--mm-bg);position:sticky;top:0;z-index:10;border-bottom:1px solid var(--mm-border)}.mm-logo-container{cursor:pointer;display:flex;align-items:center}.mm-logo{height:80px;width:auto;object-fit:contain}.mm-close-btn{background:transparent;border:none;width:44px;height:44px;border-radius:50%;color:var(--mm-text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s;background-color:#f5f5f5}.mm-close-btn:hover{background-color:#e0e0e0}.mm-close-btn svg{width:24px;height:24px;stroke-width:2}.mm-auth-area{padding:24px;display:flex;gap:12px;background-color:var(--mm-bg);border-bottom:1px solid var(--mm-border)}.mm-auth-btn{flex:1;height:48px;font-size:15px;font-weight:700;cursor:pointer;transition:all .2s ease;border:none;border-radius:8px}.mm-auth-btn.login{background-color:#f5f5f5;color:var(--mm-text);border:1px solid #e0e0e0}.mm-auth-btn.login:active{background-color:#eee}.mm-auth-btn.signup{color:#333}.mm-auth-btn.signup:active{filter:brightness(.95)}.mm-list{padding:10px 0;flex:1}.mm-item{margin-bottom:0}.mm-title-btn{width:100%;background:transparent;border:none;cursor:pointer;padding:18px 24px;text-align:left;display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:17px;color:var(--mm-text);transition:background-color .2s}.mm-title-btn:active,.mm-title-btn.open{background-color:#f9f9f9}.mm-arrow{display:inline-block;width:8px;height:8px;border-right:2px solid #aaa;border-bottom:2px solid #aaa;transform:rotate(45deg);transition:transform .3s var(--mm-transition);margin-right:4px}.mm-arrow.open{transform:rotate(225deg);border-color:var(--mm-text)}.mm-sub-list{background-color:#fcfcfc;overflow:hidden;border-top:1px solid #f0f0f0;border-bottom:1px solid #f0f0f0}.mm-sub-item{padding:16px 24px 16px 48px;font-size:15px;color:var(--mm-text-sub);font-weight:500;cursor:pointer;transition:color .2s,background-color .2s;position:relative}.mm-sub-item:before{content:"";position:absolute;left:30px;top:50%;transform:translateY(-50%);width:4px;height:4px;border-radius:50%;background-color:#ccc;transition:background-color .2s}.mm-sub-item:active{background-color:#f0f0f0;color:#000}.mm-sub-item:active:before{background-color:#000}.mm-item.single{padding:18px 24px;cursor:pointer;font-weight:700;font-size:17px;color:var(--mm-text);transition:background-color .2s}.mm-item.single:active{background-color:#f9f9f9}.mm-divider{margin:10px 24px;border:none;border-top:1px solid var(--mm-border)}:root{--ft-bg: #fcfcfc;--ft-text-main: #333333;--ft-text-sub: #777777;--ft-border: #e0e0e0;--ft-accent: #333333}.ft-container{width:100%;background-color:var(--ft-bg);border-top:1px solid var(--ft-border);padding:60px 20px 40px;margin-top:auto;font-family:Pretendard,-apple-system,BlinkMacSystemFont,Roboto,sans-serif}.ft-inner{max-width:1200px;margin:0 auto;display:flex;flex-direction:column}.ft-top-row{display:flex;justify-content:flex-end;margin-bottom:20px}.ft-links{display:flex;align-items:center;gap:15px}.ft-links a{font-size:13px;color:var(--ft-text-sub);text-decoration:none;transition:color .2s;letter-spacing:-.3px}.ft-links a:hover{color:var(--ft-text-main)}.ft-links .ft-highlight{font-weight:700;color:var(--ft-text-main)}.ft-divider-vertical{font-size:10px;color:#ddd;margin:0 5px}.ft-divider-horizontal{width:100%;height:1px;background-color:#eee;margin-bottom:30px}.ft-bottom-row{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:40px}.ft-company-info{display:flex;flex-direction:column;gap:8px}.ft-slogan{font-size:12px;color:var(--ft-text-sub);margin:0 0 4px;font-weight:500}.ft-company-name{font-size:16px;font-weight:800;color:var(--ft-text-main);margin-bottom:8px}.ft-info-grid{display:grid;grid-template-columns:max-content auto;column-gap:12px;row-gap:6px;font-size:13px;color:var(--ft-text-sub)}.ft-info-grid .ft-label{font-weight:400;color:#999}.ft-info-grid .ft-value{color:var(--ft-text-main)}.ft-copyright{font-size:12px;color:#bbb;font-family:sans-serif;letter-spacing:.5px;text-align:right}@media(max-width:768px){.ft-container{padding:40px 20px}.ft-top-row{justify-content:flex-start}.ft-bottom-row{flex-direction:column;align-items:flex-start;gap:30px}.ft-info-grid{grid-template-columns:max-content 1fr;column-gap:10px;row-gap:6px;width:100%}.ft-info-grid .ft-label:after{content:" :"}.ft-info-grid .ft-value{word-break:keep-all;line-height:1.4}.ft-copyright{text-align:left;margin-top:10px}}.role-header-bar{width:100%;height:40px;display:flex;align-items:center;justify-content:center}.role-header-link{color:#000;font-size:14px;font-weight:700;text-decoration:none;transition:opacity .1s}.role-header-link:hover{opacity:.7}:root{--a-bg: #fdfdfd;--a-bg-light: #f4f4f4;--a-text-main: #222222;--a-text-sub: #666666;--a-accent: #9c8258;--a-border: #e0e0e0;--a-font: "Pretendard", -apple-system, BlinkMacSystemFont, sans-serif;--a-ease: cubic-bezier(.25, .46, .45, .94)}.home-page-container.atelier-theme{font-family:var(--a-font);background-color:var(--a-bg);color:var(--a-text-main);width:100%;overflow-x:hidden;word-break:keep-all}a,button{cursor:pointer}.a-container{max-width:1200px;margin:0 auto;padding:0 40px}.a-container.center{text-align:center}.a-section{padding:140px 0}.bg-light{background-color:var(--a-bg-light)}.a-label{display:inline-block;font-size:14px;font-weight:600;color:var(--a-accent);letter-spacing:2px;margin-bottom:20px;position:relative}.a-label:after{content:"";display:block;width:100%;height:1px;background:var(--a-accent);margin-top:5px;opacity:.5}.fade-up{opacity:0;transform:translateY(30px);transition:opacity 1s var(--a-ease),transform 1s var(--a-ease)}.fade-up.in-view{opacity:1;transform:translateY(0)}.a-hero-slider{position:relative;width:100%;height:85vh;min-height:600px;background:#000;overflow:hidden;margin-top:0}.a-slide-item{position:absolute;inset:0;opacity:0;transition:opacity 1.5s ease-in-out;z-index:1}.a-slide-item.active{opacity:1;z-index:2}.a-slide-bg{width:100%;height:100%;background-size:cover;background-position:center;transform:scale(1);transition:transform 6s linear}.a-slide-item.active .a-slide-bg{transform:scale(1.05)}.a-slide-overlay{position:absolute;inset:0;background:#0006;z-index:1}.a-slide-content{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff}.a-slide-title{font-size:56px;font-weight:700;margin-bottom:20px;line-height:1.2;opacity:0;transform:translateY(30px)}.a-slide-desc{font-size:20px;font-weight:400;opacity:.9;margin-bottom:40px;opacity:0;transform:translateY(30px)}.a-slide-btn{padding:15px 40px;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.6);font-size:16px;font-weight:600;transition:all .3s;opacity:0;transform:translateY(30px);border-radius:4px}.a-slide-btn:hover{background:#fff;color:#000;border-color:#fff}.a-slide-item.active .animate{animation:slideUpFade 1s var(--a-ease) forwards}.a-slide-item.active .delay{animation-delay:.2s}.a-slide-item.active .delay-2{animation-delay:.4s}@keyframes slideUpFade{to{opacity:1;transform:translateY(0)}}.a-slide-dots{position:absolute;bottom:40px;left:50%;transform:translate(-50%);display:flex;gap:15px;z-index:10}.a-dot{width:10px;height:10px;border-radius:50%;border:none;background:#ffffff4d;transition:all .3s;padding:0}.a-dot.active{background:#fff;transform:scale(1.2)}.a-intro{background-color:var(--a-bg)}.a-heading{font-size:42px;font-weight:700;margin-bottom:30px;line-height:1.3}.a-desc{font-size:18px;color:var(--a-text-sub);line-height:1.8}.a-header-row{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:60px;padding-bottom:20px;border-bottom:1px solid var(--a-border)}.a-section-title{font-size:32px;font-weight:700;margin:0}.a-link-btn{background:none;border:none;font-size:15px;color:var(--a-text-sub);transition:color .3s}.a-link-btn:hover{color:var(--a-text-main)}.a-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.a-project-card{cursor:pointer}.a-img-wrap{width:100%;aspect-ratio:4/3;overflow:hidden;position:relative;margin-bottom:20px}.a-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.a-img-hover{position:absolute;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s}.a-img-hover span{color:#fff;border:1px solid #fff;padding:10px 24px;font-size:14px}.a-project-card:hover img{transform:scale(1.05)}.a-project-card:hover .a-img-hover{opacity:1}.a-cat{font-size:13px;color:var(--a-accent);margin-bottom:8px;display:block}.a-title{font-size:20px;font-weight:600;margin:0}.a-header-desc{color:var(--a-text-sub);margin:0 0 5px}.a-service-list{display:grid;grid-template-columns:repeat(2,1fr);gap:40px;margin-top:60px}.a-service-item{display:flex;align-items:flex-start;padding:30px;border:1px solid var(--a-border);background:#fff;transition:all .3s}.a-service-item:hover{border-color:var(--a-accent);transform:translateY(-5px);box-shadow:0 10px 30px #0000000d}.s-num{font-size:18px;font-weight:700;color:var(--a-accent);margin-right:20px;padding-top:2px}.s-text h4{font-size:20px;font-weight:700;margin-bottom:10px}.s-text p{font-size:15px;color:var(--a-text-sub);line-height:1.6}.a-cta{position:relative;padding:160px 0;text-align:center;color:#fff;display:flex;align-items:center;justify-content:center}.a-cta-bg{position:absolute;inset:0;background:#1a1a1a;z-index:0}.a-cta-content{position:relative;z-index:2;max-width:600px;padding:0 20px}.a-cta-content h2{font-size:40px;font-weight:700;margin-bottom:20px}.a-cta-content p{font-size:18px;color:#fffc;margin-bottom:50px}.a-btn-solid{padding:18px 50px;background:#fff;color:#000;border:none;font-size:16px;font-weight:700;transition:transform .3s,background .3s;border-radius:4px}.a-btn-solid:hover{background:var(--a-accent);color:#fff;transform:scale(1.05)}@media(max-width:1024px){.a-project-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.a-slide-title{font-size:32px}.a-slide-desc{font-size:16px}.a-section{padding:80px 0}.a-heading{font-size:30px}.a-header-row{flex-direction:column;align-items:flex-start;gap:10px}.a-project-grid{grid-template-columns:1fr;gap:40px}.a-service-list{grid-template-columns:1fr;gap:20px}.a-cta-content h2{font-size:28px}}:root{--lp-black: #111111;--lp-white: #ffffff;--lp-gray: #888888;--lp-border: #e0e0e0;--lp-accent: #d4a373}.lp-container{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:#fafafa;font-family:Pretendard,-apple-system,BlinkMacSystemFont,Roboto,sans-serif;padding:20px}.lp-wrapper{width:100%;max-width:440px;background-color:var(--lp-white);padding:60px 40px;border:1px solid var(--lp-border);box-shadow:0 10px 30px #00000008}.lp-header{text-align:center;margin-bottom:50px}.lp-logo{height:120px;margin-bottom:30px;opacity:.8}.lp-title{font-size:32px;font-weight:700;margin-bottom:10px;letter-spacing:-.5px;color:var(--lp-black)}.lp-subtitle{font-size:15px;color:var(--lp-gray)}.lp-input-group{margin-bottom:24px}.lp-input-group label{display:block;font-size:13px;font-weight:600;margin-bottom:8px;color:var(--lp-black)}.lp-input{width:100%;height:50px;padding:0 16px;border:1px solid var(--lp-border);border-radius:0;font-size:15px;box-sizing:border-box;transition:border-color .2s,background-color .2s;background-color:transparent}.lp-input:focus{outline:none;border-color:var(--lp-black);background-color:#fcfcfc}.lp-options{margin-bottom:30px}.lp-checkbox-group{display:flex;justify-content:space-between}.lp-checkbox{display:flex;align-items:center;font-size:13px;color:#666;cursor:pointer;-webkit-user-select:none;user-select:none}.lp-checkbox input{display:none}.checkmark{width:16px;height:16px;border:1px solid #ccc;margin-right:8px;position:relative;transition:all .2s}.lp-checkbox input:checked+.checkmark{background-color:var(--lp-black);border-color:var(--lp-black)}.lp-checkbox input:checked+.checkmark:after{content:"";position:absolute;left:5px;top:1px;width:4px;height:9px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.lp-submit-btn{width:100%;height:54px;background-color:var(--lp-black);color:var(--lp-white);border:none;font-size:16px;font-weight:700;cursor:pointer;transition:opacity .2s;border-radius:0}.lp-submit-btn:hover{opacity:.9}.lp-submit-btn:disabled{background-color:#ccc;cursor:not-allowed}.lp-links{display:flex;justify-content:center;align-items:center;margin-top:24px;margin-bottom:40px}.lp-links button{background:none;border:none;font-size:13px;color:#888;cursor:pointer;padding:0 10px}.lp-links .divider{font-size:10px;color:#ddd}.lp-links .highlight{color:var(--lp-black);font-weight:600;text-decoration:underline}.lp-sns-section{text-align:center;border-top:1px solid var(--lp-border);padding-top:30px}.lp-sns-label{font-size:12px;color:#999;margin-bottom:20px;letter-spacing:.5px}.lp-sns-buttons{display:flex;justify-content:center;gap:12px}.lp-sns-btn{width:44px;height:44px;border-radius:50%;border:none;font-size:14px;font-weight:700;cursor:pointer;transition:transform .2s;display:flex;align-items:center;justify-content:center}.lp-sns-btn:hover{transform:translateY(-2px)}.lp-footer{margin-top:40px;font-size:11px;color:#ccc;letter-spacing:1px;text-transform:uppercase}@media(max-width:480px){.lp-wrapper{border:none;background-color:transparent;padding:20px 0;box-shadow:none}.lp-container{background-color:#fff}}:root{--sp-black: #111111;--sp-white: #ffffff;--sp-gray: #888888;--sp-border: #e0e0e0;--sp-accent: #d4a373}.sp-container{min-height:100vh;display:flex;justify-content:center;background-color:#f8f9fa;padding:40px 20px;font-family:Pretendard,sans-serif;color:var(--sp-black)}.sp-wrapper{width:100%;max-width:600px;background-color:var(--sp-white);padding:60px 40px;border:1px solid var(--sp-border);box-shadow:0 10px 40px #00000008}.sp-header{text-align:center;margin-bottom:60px}.sp-logo{height:120px;margin-bottom:24px;cursor:pointer}.sp-header h1{font-size:32px;font-weight:700;margin-bottom:10px}.sp-header p{font-size:15px;color:var(--sp-gray)}.sp-section{margin-bottom:40px}.sp-section-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:24px}.sp-section-num{font-family:Times New Roman,serif;font-size:24px;font-style:italic;color:var(--sp-accent);line-height:1}.sp-section-text h3{font-size:18px;font-weight:700;margin-bottom:4px}.sp-section-text p{font-size:13px;color:#999}.sp-divider{height:1px;background-color:#f0f0f0;margin:40px 0}.sp-input-group{margin-bottom:20px}.sp-input-group label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}.sp-input-group input,.sp-input-group select{width:100%;height:48px;border:1px solid var(--sp-border);border-radius:0;padding:0 16px;font-size:15px;box-sizing:border-box;background-color:transparent;transition:border-color .2s}.sp-input-group input:focus,.sp-input-group select:focus{outline:none;border-color:var(--sp-black);background-color:#fcfcfc}.sp-email-row{display:flex;align-items:center;gap:10px}.at{color:#999;font-weight:700;flex-shrink:0}.sp-email-row input[type=text]{flex:1;min-width:0}.sp-select-box,.sp-email-domain-input{flex:1.2;position:relative;min-width:0}.sp-select-box select{appearance:none;cursor:pointer;width:100%}.sp-select-box:after{content:"↓";position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:12px;color:#999;pointer-events:none}.sp-grid-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.sp-phone-box{display:flex;gap:10px}.sp-phone-box input{flex:1}.sp-btn-outline{width:100px;height:48px;border:1px solid var(--sp-border);background:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.sp-btn-outline:hover:not(:disabled){border-color:var(--sp-black)}.sp-btn-black{width:80px;height:48px;background:var(--sp-black);color:#fff;border:none;font-size:13px;font-weight:600;cursor:pointer}.code-wrap{position:relative;flex:1}.timer{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:13px;color:var(--sp-accent);font-weight:600}.timer.done{color:#28a745}.mt-2{margin-top:8px}.sp-msg{font-size:12px;margin-top:6px;display:block}.sp-msg.success{color:#28a745}.sp-msg.error{color:#dc3545}.sp-msg.checking{color:#999}.sp-agree-box{border:1px solid var(--sp-border);padding:20px;background-color:#fafafa}.agree-row-container{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;min-height:24px}.agree-label{display:flex;align-items:center;font-size:14px;cursor:pointer;color:var(--sp-black)}.agree-label input{margin-right:10px;cursor:pointer;width:16px;height:16px;accent-color:var(--sp-black)}.agree-row.all{display:flex;align-items:center;font-weight:700;font-size:15px;margin-bottom:16px;cursor:pointer}.agree-row.all input{margin-right:10px;width:18px;height:18px;accent-color:var(--sp-black)}.agree-row-container button{border:none;background:none;text-decoration:underline;color:#999;font-size:12px;cursor:pointer;white-space:nowrap}.agree-line{height:1px;background:#e0e0e0;margin-bottom:16px}.sp-action-area{margin-top:60px;text-align:center}.sp-submit-btn{width:100%;height:56px;background-color:var(--sp-black);color:#fff;border:none;font-size:16px;font-weight:700;cursor:pointer;transition:opacity .2s}.sp-submit-btn:hover{opacity:.9}.sp-submit-btn:disabled{background-color:#ccc;cursor:not-allowed}.login-link{margin-top:20px;font-size:14px;color:#666}.login-link span{color:var(--sp-black);font-weight:700;cursor:pointer;margin-left:5px;text-decoration:underline}@media(max-width:480px){.sp-wrapper{padding:40px 20px;border:none;box-shadow:none}.sp-container{background-color:#fff;padding:0}.sp-grid-row{grid-template-columns:1fr}}.page-container{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1;width:100%}.mypage-container{max-width:700px;margin:0 auto;padding:48px 24px;box-sizing:border-box}.mypage-container .mypage-title{font-size:32px;font-weight:700;margin-bottom:40px;color:#333;display:none}.mypage-container .tab-nav-container{display:flex;border-bottom:2px solid #f0f0f0;margin-bottom:48px}.mypage-container .tab-nav-button{flex:0 1 auto;padding:16px 24px;font-size:18px;font-weight:500;color:#888;background-color:transparent;border:none;border-bottom:3px solid transparent;cursor:pointer;transition:color .2s,border-color .2s;margin-bottom:-2px}.mypage-container .tab-nav-button:hover{color:#555}.mypage-container .tab-nav-button.active{color:#333;font-weight:700;border-bottom-color:#333}.mypage-container .form-group{margin-bottom:36px}.mypage-container .form-label{display:block;margin-bottom:0;font-size:17px;font-weight:600;color:#555}.mypage-container .form-input{width:calc(100% - 140px);max-width:100%;padding:16px;font-size:16px;border:1px solid #ddd;border-radius:5px;box-sizing:border-box;transition:border-color .2s;line-height:1.4;height:48px}.mypage-container .form-input:focus{outline:none;border-color:#555}.mypage-container .form-input:disabled{background-color:#f5f5f5;color:#999;cursor:not-allowed}.mypage-container .input-group{display:flex;gap:12px;align-items:stretch;width:100%}.mypage-container .input-group .form-input{flex:1;min-width:0;width:auto}.mypage-container .input-group .form-button{flex-shrink:0;min-width:128px;text-align:center}.mypage-container .input-group .timer-text{display:flex;align-items:center;justify-content:center;padding:0 12px;font-size:16px;font-weight:600;color:#e74c3c;white-space:nowrap}.mypage-container .form-button{padding:0 16px;font-size:16px;font-weight:600;border:1px solid transparent;border-radius:5px;cursor:pointer;transition:background-color .2s,opacity .2s;box-sizing:border-box}.mypage-container .btn-primary{background-color:#007bff;color:#fff;border-color:#007bff;padding:0 16px}.mypage-container .btn-primary:hover{background-color:#0056b3;border-color:#0056b3}.mypage-container .btn-secondary{background-color:#6c757d;color:#fff;border-color:#6c757d}.mypage-container .btn-secondary:hover{background-color:#5a6268;border-color:#5a6268}.mypage-container .form-button:disabled{background-color:#ccc;color:#666;border-color:#ccc;cursor:not-allowed;opacity:.7}.mypage-container .form-caption{display:block;margin-top:10px;font-size:14px;color:#e74c3c}.mypage-container .btn-save-changes{width:100%;padding:12px 16px;background-color:#f8ef99;border-color:#f8ef99;color:#333;transition:background-color .2s,border-color .2s}.mypage-container .btn-save-changes:hover:not(:disabled){background-color:#f5eb82;border-color:#f5eb82}.mypage-container .btn-save-changes:disabled{background-color:#ccc;border-color:#ccc;color:#666;opacity:.7}@media(max-width:767px){.main-content{padding:0}.mypage-container{padding:24px 0 40px;max-width:100%}.mypage-container .mypage-title{font-size:24px;margin-bottom:24px;padding:0 16px}.mypage-container .tab-nav-container{padding:0 16px;margin-bottom:32px}.mypage-container .tab-nav-button{flex:1;padding:12px 8px;font-size:16px;text-align:center}.mypage-container .form-input{width:100%}.mypage-container .form-group{padding:0 16px;margin-bottom:28px}.mypage-container .input-group{flex-direction:column;gap:8px}.mypage-container .input-group .form-button{width:100%;min-width:0}.mypage-container .input-group .timer-text{padding:8px 0;justify-content:center}}.partner-info-tab .form-group{margin-bottom:36px}.partner-info-tab .form-label{display:block;margin-bottom:12px;font-size:17px;font-weight:600;color:#555;min-width:130px}.partner-info-tab .form-input,.partner-info-tab .form-select{width:100%;padding:12px 16px;font-size:16px;border:1px solid #ddd;border-radius:5px;box-sizing:border-box;line-height:1.4;height:48px}.partner-info-tab .form-file-input{width:100%;padding:12px 16px;font-size:16px;border:1px solid #ddd;border-radius:5px;box-sizing:border-box;line-height:1.4;height:auto;background-color:#fff}.partner-info-tab .file-field-group{display:flex;align-items:stretch;gap:15px}.partner-info-tab .form-file-link{display:flex;align-items:center;font-weight:700;color:#007bff;text-decoration:none;font-size:16px}.partner-info-tab .form-file-link:hover{text-decoration:underline}.partner-info-tab .form-file-link.optional{color:#888;font-weight:400}.partner-info-tab .conditional-file-upload{flex-grow:1;padding:12px 16px;font-size:16px;border:1px solid #ddd;border-radius:5px;box-sizing:border-box;background-color:#fff}.partner-info-tab .location-row{display:flex;gap:15px}.partner-info-tab .location-row .form-group{flex:1}.partner-info-tab .multi-file-upload-area{border:1px solid #eee;border-radius:5px;padding:15px;margin-bottom:5px}.partner-info-tab .multi-file-upload-area label{font-weight:700;margin-bottom:10px;display:block}.partner-info-tab .file-preview-list{list-style:none;padding:0;margin-top:10px}.partner-info-tab .file-preview-item{display:flex;justify-content:space-between;align-items:center;font-size:14px;padding:5px;background-color:#f8f8f8;border-radius:3px;margin-bottom:5px}.partner-info-tab .file-remove-button{background:none;border:none;color:#dc3545;font-weight:700;cursor:pointer;font-size:14px}.partner-info-tab .form-caption{font-size:13px;color:#666;margin-bottom:25px}.partner-info-tab .submit-button{width:100%;padding:12px 16px;font-size:16px;font-weight:600;background-color:#f8ef99;border:1px solid rgb(248,239,153);color:#333;border-radius:5px;cursor:pointer;transition:background-color .2s,border-color .2s,opacity .2s;box-sizing:border-box}.partner-info-tab .submit-button:hover:not(:disabled){background-color:#f5eb82;border-color:#f5eb82}.partner-info-tab .submit-button:disabled{background-color:#ccc;border-color:#ccc;color:#666;opacity:.7;cursor:not-allowed}.signup-page-container{display:flex;justify-content:center;padding:40px 0}.signup-box-wrapper{max-width:450px;width:100%;padding:0 20px;box-sizing:border-box}.signup-form{width:100%}.title-desc-wrapper{margin-bottom:8px}.field-title{font-weight:700;font-size:16px;margin-bottom:4px;margin-top:0}.field-description{font-size:12px;color:#757575;margin-bottom:0;margin-top:0}.signup-input{border:1px solid #ccc;border-radius:5px;padding:12px 16px;box-sizing:border-box;width:100%;font-size:16px;height:48px}.signup-input:focus{outline:none;border-color:#aaa}.spacing-narrow{height:24px}.spacing-medium{height:12px}.final-signup-button{height:48px;border:none;cursor:pointer;color:#000;font-size:16px;font-weight:700;transition:opacity .1s;width:100%}.final-signup-button:disabled{opacity:.5;cursor:not-allowed}.back-to-login-btn{background:none;border:none;color:#646464;cursor:pointer;font-size:14px;text-align:center;width:100%}.admin-sidebar{width:220px;flex-shrink:0;background-color:#f8f9fa;border-right:1px solid rgba(0,0,0,.05);box-sizing:border-box}.admin-menu-list{list-style:none;padding:0;margin:20px 0}.admin-menu-item{display:flex;justify-content:space-between;align-items:center;width:100%;padding:15px 20px;background:none;border:none;text-align:left;font-size:16px;font-weight:700;color:#333;cursor:pointer}.admin-menu-item:hover{background-color:#0000000d}.admin-menu-item.active{background-color:#e9ecef;color:#000}.new-notification{background-color:#dc3545;color:#fff;font-size:12px;font-weight:700;border-radius:50%;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;line-height:1}.role-management-container{display:flex;flex-direction:column;gap:15px;max-width:600px}.admin-dropdown{height:40px;padding:0 10px;border-radius:5px;border:1px solid #ccc;font-size:16px}.permissions-checklist{margin-top:20px;border-top:1px solid #eee;padding-top:20px}.permission-item{display:block;margin-bottom:12px;font-size:16px;cursor:pointer}.permission-item input{margin-right:10px;transform:scale(1.2)}.admin-save-button{margin-top:20px;padding:10px 20px;font-size:16px;font-weight:700;cursor:pointer;border:none;border-radius:5px;background-color:#007bff;color:#fff}.user-main-tabs{display:flex;border-bottom:2px solid #eee;margin-bottom:20px}.user-tab-button{background:none;border:none;padding:10px 20px;font-size:16px;font-weight:700;color:#888;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:color .2s,border-color .2s;display:flex;align-items:center;gap:8px}.user-tab-button:hover{color:#333}.user-tab-button.active{color:#007bff;border-bottom-color:#007bff}.user-tab-button .new-notification{background-color:#dc3545;color:#fff;border-radius:50%;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;line-height:1}.user-tab-content{padding:10px}.user-sub-tabs{display:flex;border-bottom:1px solid #ccc;margin-bottom:20px}.user-sub-tab-button{background:none;border:none;border-bottom:2px solid transparent;padding:8px 16px;font-size:14px;font-weight:500;color:#555;cursor:pointer;margin-bottom:-1px}.user-sub-tab-button.active{color:#007bff;font-weight:700;border-bottom-color:#007bff}.user-manage-container{padding:10px}.user-search-bar{width:100%;max-width:400px;height:40px;padding:0 12px;border:1px solid #ccc;border-radius:5px;font-size:14px;margin-bottom:20px;box-sizing:border-box}.user-table-wrapper{width:100%;overflow-x:auto;border:1px solid #ddd;border-radius:5px}.user-table{width:100%;border-collapse:collapse;font-size:14px}.user-table th,.user-table td{border-bottom:1px solid #eee;padding:12px;text-align:left;vertical-align:middle;white-space:nowrap}.user-table th{background-color:#f7f7f7;font-weight:700}.user-table tr:hover{background-color:#f9f9f9}.edit-button{background-color:#007bff;color:#fff;border:none;padding:6px 12px;border-radius:5px;cursor:pointer;font-size:13px;font-weight:700}.edit-button:hover{background-color:#0056b3}.edit-modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.edit-modal-content{background-color:#fff;padding:20px 25px;border-radius:8px;width:90%;max-width:500px;box-shadow:0 4px 15px #0003}.edit-modal-content h3{margin-top:0;font-size:20px}.modal-form-group{margin-bottom:15px}.modal-form-group label{display:block;margin-bottom:5px;font-weight:700;font-size:14px}.modal-input,.modal-select{width:100%;height:40px;padding:0 10px;border:1px solid #ccc;border-radius:5px;font-size:14px;box-sizing:border-box}.modal-input:disabled{background-color:#f5f5f5;color:#777}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.modal-button{padding:8px 16px;font-size:14px;font-weight:700;border:none;border-radius:5px;cursor:pointer}.btn-save{background-color:#007bff;color:#fff}.btn-save:disabled{background-color:#ccc}.sms-tab-container{padding:10px}.sms-tab-container h3{margin-top:0}.consent-info-box{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:5px;padding:15px;margin-bottom:20px;display:flex;align-items:center;gap:10px}.consent-info-box strong{font-size:16px;color:#007bff}.consent-info-box button{font-size:12px;padding:4px 8px;background-color:#f0f0f0;border:1px solid #ccc;border-radius:5px;cursor:pointer}.sms-form-group{margin-bottom:20px}.sms-form-group label{display:block;font-weight:700;margin-bottom:8px}.sms-textarea,.sms-input{width:100%;padding:10px;border:1px solid #ccc;border-radius:5px;font-size:14px;box-sizing:border-box}.sms-textarea{resize:vertical}.sms-send-button{width:100%;padding:12px;font-size:16px;font-weight:700;background-color:#28a745;color:#fff;border:none;border-radius:5px;cursor:pointer}.sms-send-button:disabled{background-color:#ccc}.search-bar-group{display:flex;gap:10px}.search-bar-group .sms-input{flex-grow:1}.search-bar-group button{padding:0 15px;background-color:#007bff;color:#fff;border:none;border-radius:5px;cursor:pointer;flex-shrink:0}.search-bar-group button:disabled{background-color:#ccc}.search-result-box{background-color:#e6f7ff;border:1px solid #007bff;color:#0056b3;padding:10px 15px;border-radius:5px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.clear-target{background:none;border:none;font-size:16px;font-weight:700;color:#007bff;cursor:pointer}.sms-input{height:40px}.dispatch-log-container{padding:10px}.dispatch-log-table{width:100%;border-collapse:collapse;margin-top:20px;font-size:14px}.dispatch-log-table th,.dispatch-log-table td{border:1px solid #ddd;padding:8px 12px;text-align:left;vertical-align:top}.dispatch-log-table th{background-color:#f7f7f7;font-weight:700}.dispatch-log-table .col-time{width:140px;white-space:nowrap}.dispatch-log-table .col-admin{width:100px}.dispatch-log-table .col-type{width:120px}.dispatch-log-table .col-count{width:80px;text-align:center}.dispatch-log-table .col-message{word-break:break-all}.partner-tab-content{padding:20px 0;display:flex;flex-direction:column}.partner-main-tabs{display:flex;gap:10px;border-bottom:1px solid #ddd;padding-bottom:10px;margin-bottom:20px}.partner-tab-button{position:relative;padding:10px 20px;border:none;background:none;font-size:16px;cursor:pointer;color:#666;font-weight:700;border-radius:5px;transition:all .2s}.partner-tab-button.active{background-color:#333;color:#fff}.partner-tab-button:hover:not(.active){background-color:#f0f0f0}.new-notification{position:absolute;top:-5px;right:-5px;background-color:#dc3545;color:#fff;font-size:10px;padding:2px 6px;border-radius:10px}.partner-sub-tabs{display:flex;gap:8px;margin-bottom:20px}.partner-sub-tab-button{padding:8px 16px;border:1px solid #ddd;background-color:#fff;border-radius:20px;cursor:pointer;font-size:14px;color:#555;transition:all .2s}.partner-sub-tab-button.active{background-color:#666;color:#fff;border-color:#666}.search-wrapper{margin-bottom:15px}.admin-search-bar{width:300px;padding:10px;border:1px solid #ccc;border-radius:5px;font-size:14px}.header-actions{display:flex;gap:10px;margin-left:auto}.header-btn{background-color:#fff;border:1px solid #ccc;padding:8px 15px;border-radius:5px;cursor:pointer;font-size:13px;font-weight:700;color:#555;display:flex;align-items:center;gap:5px;transition:background-color .2s}.header-btn:hover{background-color:#f8f9fa;color:#333}.application-table-wrapper{overflow-x:auto;border-top:1px solid #333}.application-table th,.application-table td{border-bottom:1px solid #ddd;padding:12px 10px;text-align:left;white-space:nowrap}.application-table th{background-color:#f8f9fa;font-weight:700;color:#333;text-align:center}.application-table tr:hover{background-color:#f1f1f1}.detail-button{padding:6px 12px;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px}.detail-button:hover{opacity:.9}.text-link-btn{background:none;border:none;color:#007bff;font-weight:700;cursor:pointer;text-decoration:underline;padding:0;font-size:14px}.row-deleted button{color:#999!important;text-decoration:line-through!important;text-decoration-color:red!important}.modal-backdrop{position:fixed;inset:0;background:#00000080;z-index:2000;display:flex;justify-content:center;align-items:center}.sort-modal-content h3{margin:0 0 15px;text-align:center;font-size:18px;color:#333}.btn-save{background:#28a745;color:#fff;border:none;padding:8px 15px;border-radius:5px;cursor:pointer;font-weight:700}.btn-close{background:#6c757d;color:#fff;border:none;padding:8px 15px;border-radius:5px;cursor:pointer;font-weight:700}.unimplemented-submenu{color:#999;font-style:italic;list-style-type:disc;padding-left:20px}.detail-value{font-size:16px}.form-row-align{display:flex;align-items:center;gap:15px}.form-label-fixed{min-width:100px;width:100px;font-size:14px;font-weight:700;color:#444}.form-input-control{flex:1;display:flex;align-items:center;gap:10px}.admin-input-style{width:100%;padding:8px 12px;border:1px solid #ccc;border-radius:5px;font-size:14px;box-sizing:border-box}.admin-input-style[disabled]{background-color:#f1f3f5;color:#666;cursor:not-allowed}.modal-body-padding{padding:20px;display:flex;flex-direction:column;gap:15px}.seller-main-tabs{display:flex;margin-bottom:20px;border-bottom:1px solid #ccc}.seller-tab-button{display:flex;align-items:center;padding:12px 20px;font-size:16px;font-weight:700;background:none;border:none;cursor:pointer;color:#888;border-bottom:3px solid transparent;margin-bottom:-1px}.seller-tab-button.active{color:#000;border-bottom-color:#000}.seller-tab-content{padding:10px 0}.seller-sub-tabs{display:flex;margin-bottom:25px;border-bottom:1px solid #eee}.seller-sub-tab-button{padding:8px 16px;font-size:14px;background:none;border:none;cursor:pointer;color:#555;font-weight:700;border-bottom:2px solid transparent;margin-bottom:-1px}.seller-sub-tab-button:hover{background-color:#f8f8f8}.seller-sub-tab-button.active{color:#007bff;border-bottom-color:#007bff}.supporter-main-tabs{display:flex;margin-bottom:20px;border-bottom:1px solid #ccc}.supporter-tab-button{display:flex;align-items:center;padding:12px 20px;font-size:16px;font-weight:700;background:none;border:none;cursor:pointer;color:#888;border-bottom:3px solid transparent;margin-bottom:-1px}.supporter-tab-button.active{color:#000;border-bottom-color:#000}.new-notification{margin-left:8px;background-color:#dc3545;color:#fff;font-size:12px;font-weight:700;border-radius:50%;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;line-height:1}.supporter-tab-content{padding:10px 0}.supporter-sub-tabs{display:flex;margin-bottom:25px;border-bottom:1px solid #eee}.supporter-sub-tab-button{padding:8px 16px;font-size:14px;background:none;border:none;cursor:pointer;color:#555;font-weight:700;border-bottom:2px solid transparent;margin-bottom:-1px}.supporter-sub-tab-button:hover{background-color:#f8f8f8}.supporter-sub-tab-button.active{color:#007bff;border-bottom-color:#007bff}.unimplemented-submenu{list-style:none;padding-left:20px}.unimplemented-submenu li{color:#777;font-size:14px;margin-bottom:8px}.application-table-wrapper{overflow-x:auto}.application-table{width:100%;border-collapse:collapse;font-size:14px}.application-table th,.application-table td{border:1px solid #ddd;padding:10px;text-align:left;white-space:nowrap}.application-table th{background-color:#f8f9fa;font-weight:700}.detail-button{padding:5px 10px;font-size:12px;font-weight:700;cursor:pointer;border:none;border-radius:5px;background-color:#007bff;color:#fff}.modal-content{background-color:#fff;padding:25px;border-radius:8px;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 15px #0003}.application-details{display:grid;grid-template-columns:150px 1fr;gap:20px 10px}.detail-label{font-weight:700;color:#555;padding-top:8px}.modal-input,.modal-select{width:100%;height:40px;padding:0 10px;border-radius:5px;border:1px solid #ccc;font-size:16px;box-sizing:border-box}.modal-input:disabled{background-color:#f5f5f5;color:#888}.btn-save-changes{background-color:#17a2b8;color:#fff}.btn-save-changes:disabled{background-color:#ccc}.log-section{border-top:1px solid #eee;margin-top:20px;padding-top:20px}.log-section h4{margin-top:0;margin-bottom:10px}.log-list{list-style:none;margin:0;font-size:12px;color:#555;max-height:150px;overflow-y:auto;background-color:#f8f8f8;border:1px solid #eee;padding:10px;border-radius:5px}.log-entry{padding-bottom:8px;margin-bottom:8px;border-bottom:1px dashed #ddd}.log-entry:last-child{border-bottom:none;margin-bottom:0}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}.modal-content{background-color:#fff;padding:25px;border-radius:8px;width:90%;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 15px #0003}.modal-content h3{margin-top:0;border-bottom:1px solid #eee;padding-bottom:10px}.diff-table{width:100%;border-collapse:collapse;margin-top:20px}.diff-table th,.diff-table td{border:1px solid #ddd;padding:10px 12px;vertical-align:top}.diff-table th{background-color:#f8f9fa;width:20%;text-align:right;font-size:14px}.diff-table td{width:40%;font-size:14px}.diff-table .changed-value{background-color:#fff8e1;font-weight:700}.diff-table .old-value{text-decoration:line-through;color:#777}.file-assignment-select{width:100%;height:35px;font-size:14px;border:1px solid #007bff;border-radius:4px;background-color:#f0f8ff}.new-attachments-list{list-style:none;padding:0;margin:0}.new-attachments-list li{margin-bottom:5px}.processing-section{border-top:1px solid #eee;margin-top:20px;padding-top:20px}.rejection-reason{width:100%;min-height:80px;padding:10px;box-sizing:border-box;border:1px solid #ccc;border-radius:5px;font-size:14px;margin-bottom:15px}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.modal-button{padding:10px 15px;font-size:14px;font-weight:700;cursor:pointer;border:none;border-radius:5px}.btn-approve{background-color:#28a745;color:#fff}.btn-reject{background-color:#dc3545;color:#fff}.modal-button:disabled{background-color:#ccc;cursor:not-allowed}.detail-file-link{font-weight:700;color:#007bff;text-decoration:none}.detail-file-link:hover{text-decoration:underline}.detail-file-link.optional{color:#888;font-weight:400}.homepage-main-tabs{display:flex;margin-bottom:20px;border-bottom:1px solid #ccc}.homepage-tab-button{display:flex;align-items:center;padding:12px 20px;font-size:16px;font-weight:700;background:none;border:none;cursor:pointer;color:#888;border-bottom:3px solid transparent;margin-bottom:-1px}.homepage-tab-button.active{color:#000;border-bottom-color:#000}.homepage-tab-content{padding:10px 0}.menu-management-container{display:flex;flex-direction:column;gap:30px}.menu-table-wrapper{overflow-x:auto}.menu-table{width:100%;border-collapse:collapse;font-size:14px}.menu-table th,.menu-table td{border:1px solid #ddd;padding:10px;text-align:left;white-space:nowrap}.menu-table th{background-color:#f8f9fa;font-weight:700}.menu-table .roles-list{font-size:12px;color:#555}.menu-table .actions-cell{width:100px;text-align:center}.menu-table .action-button{padding:4px 8px;font-size:12px;font-weight:700;cursor:pointer;border:none;border-radius:4px;margin-right:5px}.btn-edit{background-color:#007bff;color:#fff}.btn-delete{background-color:#dc3545;color:#fff}.menu-form-container{border-top:2px solid #333;padding-top:20px}.menu-form{display:flex;flex-direction:column;gap:15px;max-width:600px;border:1px solid #eee;padding:20px;border-radius:8px;background-color:#fdfdfd}.menu-form .form-group{display:flex;flex-direction:column}.menu-form .form-label{font-weight:700;margin-bottom:5px}.menu-form .form-input{height:40px;padding:0 10px;border-radius:5px;border:1px solid #ccc;font-size:16px}.role-checkbox-group{display:flex;flex-wrap:wrap;gap:10px}.role-checkbox-label{font-size:14px;display:flex;align-items:center;gap:4px;cursor:pointer}.menu-form .form-actions{display:flex;gap:10px}.form-button{padding:10px 15px;font-size:14px;font-weight:700;cursor:pointer;border:none;border-radius:5px}.btn-save{background-color:#28a745;color:#fff}.btn-cancel{background-color:#6c757d;color:#fff}.activity-log-container{padding:10px}.activity-log-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;padding-bottom:10px}.activity-log-header h2{margin:0}.activity-log-header button{padding:5px 10px;font-size:12px;background-color:#f0f0f0;border:1px solid #ccc;border-radius:5px;cursor:pointer}.activity-log-header button:hover{background-color:#e5e5e5}.log-caption{font-size:13px;color:#666;background-color:#f9f9f9;border:1px solid #eee;padding:10px;border-radius:5px;margin-top:15px}.activity-log-table{width:100%;border-collapse:collapse;margin-top:20px;font-size:14px}.activity-log-table th,.activity-log-table td{border:1px solid #ddd;padding:8px 12px;text-align:left;vertical-align:top}.activity-log-table th{background-color:#f7f7f7;font-weight:700}.activity-log-table .col-time{width:180px;color:#555;white-space:nowrap}.activity-log-table .col-admin{width:120px;font-weight:700}.activity-log-table .col-message{width:auto;word-break:break-all}.load-more-button{width:100%;padding:10px;font-size:14px;font-weight:700;background-color:#007bff;color:#fff;border:none;border-radius:5px;cursor:pointer;margin-top:20px}.load-more-button:disabled{background-color:#ccc}.log-end-marker{text-align:center;font-size:14px;color:#888;margin-top:20px}.admin-main-layout{display:flex;flex-direction:row;flex-grow:1;padding:0}.admin-content-area{flex-grow:1;padding:30px;box-sizing:border-box;overflow-y:auto}.admin-content-area h2{margin-top:0;border-bottom:2px solid #333;padding-bottom:10px}:root{--pa-bg: #ffffff;--pa-text-main: #333333;--pa-text-sub: #666666;--pa-border: #e0e0e0;--pa-brand: #F8EF99;--pa-brand-hover: #e6dd88;--pa-radius: 12px;--header-height-pc: 70px;--header-height-mo: 70px;--pa-ease: cubic-bezier(.25, .46, .45, .94)}.pa-page-container{display:flex;flex-direction:column;min-height:100vh;background-color:var(--pa-bg);font-family:Pretendard,-apple-system,BlinkMacSystemFont,Roboto,sans-serif;color:var(--pa-text-main);padding-top:var(--header-height-pc);overflow-x:hidden}.pa-main-wrapper{width:100%;flex-grow:1;display:flex;justify-content:center;padding:80px 20px;box-sizing:border-box}.pa-container{width:100%;max-width:1200px;margin:0 auto}.pa-reveal-mask{overflow:hidden;display:block}.pa-reveal-text{transform:translateY(110%);transition:transform 1.2s var(--pa-ease);display:block}.pa-reveal-text.pa-active{transform:translateY(0)}.pa-fade-up{opacity:0;transform:translateY(40px);transition:opacity .8s var(--pa-ease),transform .8s var(--pa-ease)}.pa-fade-up.pa-active{opacity:1;transform:translateY(0)}.pa-header-section{margin-bottom:60px;display:flex;flex-direction:column}.pa-title{font-size:30px;font-weight:800;margin:0;letter-spacing:-1px;line-height:1;color:var(--pa-text-main);text-transform:uppercase}.pa-divider-anim{width:0%;height:2px;background-color:var(--pa-text-main);margin:20px 0;transition:width 1.5s var(--pa-ease)}.pa-divider-anim.pa-active{width:100%}.pa-desc{font-size:16px;color:var(--pa-text-sub);font-weight:400;margin:0;text-align:right;width:100%}.pa-grid-wrapper{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-bottom:80px}.pa-feature-card{background-color:#fff;border:1px solid var(--pa-border);border-radius:var(--pa-radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .3s var(--pa-ease),box-shadow .3s var(--pa-ease),border-color .3s,opacity .8s,transform .8s}.pa-feature-card:hover{transform:translateY(-8px);box-shadow:0 15px 30px #00000014;border-color:var(--pa-text-main)}.pa-card-img{width:100%;height:200px;overflow:hidden;border-bottom:1px solid var(--pa-border)}.pa-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--pa-ease)}.pa-feature-card:hover .pa-card-img img{transform:scale(1.05)}.pa-card-body{padding:30px;flex:1;display:flex;flex-direction:column}.pa-card-header{margin-bottom:15px}.pa-badge{font-size:11px;font-weight:700;color:var(--pa-text-sub);background-color:#f5f5f5;padding:4px 8px;border-radius:4px;letter-spacing:1px;text-transform:uppercase;display:inline-block;margin-bottom:10px}.pa-card-body h3{font-size:20px;font-weight:700;margin:0;color:var(--pa-text-main)}.pa-card-desc{font-size:15px;color:var(--pa-text-sub);line-height:1.6;margin:0;word-break:keep-all}.pa-cta-box{background-color:#f9f9f9;border:1px solid var(--pa-border);border-radius:var(--pa-radius);padding:60px 40px;display:flex;justify-content:space-between;align-items:center;gap:40px}.pa-cta-content h2{font-size:24px;font-weight:700;margin-bottom:10px;color:var(--pa-text-main)}.pa-cta-content p{font-size:16px;color:var(--pa-text-sub);margin:0}.pa-btn-apply{padding:16px 40px;background-color:var(--pa-brand);color:#333;font-size:16px;font-weight:700;border:none;border-radius:4px;cursor:pointer;white-space:nowrap;transition:all .2s ease}.pa-btn-apply:hover{background-color:var(--pa-brand-hover);transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}@media(max-width:900px){.pa-grid-wrapper{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.pa-page-container{padding-top:var(--header-height-mo)}.pa-main-wrapper{padding:40px 20px}.pa-header-section{margin-bottom:40px}.pa-title{font-size:26px;line-height:1.3}.pa-desc{text-align:left;font-size:15px}.pa-grid-wrapper{grid-template-columns:1fr;gap:24px}.pa-card-img{height:180px}.pa-cta-box{flex-direction:column;text-align:center;padding:40px 24px;gap:24px}.pa-cta-content h2{font-size:22px}.pa-btn-apply{width:100%;padding:18px 0}}:root{--paf-black: #111111;--paf-white: #ffffff;--paf-gray: #888888;--paf-light-gray: #f7f7f7;--paf-border: #e0e0e0;--paf-accent: #d4a373;--paf-font: "Pretendard", -apple-system, BlinkMacSystemFont, Roboto, sans-serif;--paf-serif: "Times New Roman", Times, serif}.paf-page-container{font-family:var(--paf-font);background-color:var(--paf-white);color:var(--paf-black);min-height:100vh;display:flex;flex-direction:column}.paf-main-content{flex:1;width:100%;display:flex;justify-content:center;padding:80px 20px 120px}.paf-loading-screen{height:100vh;display:flex;justify-content:center;align-items:center;font-size:18px;color:var(--paf-gray)}.paf-fade-up{opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.paf-fade-up.active{opacity:1;transform:translateY(0)}.paf-form-wrapper{width:100%;max-width:800px}.paf-header-section{text-align:center;margin-bottom:80px}.paf-subtitle{display:block;font-size:14px;letter-spacing:3px;text-transform:uppercase;color:var(--paf-accent);margin-bottom:20px;font-weight:600}.paf-title{font-size:60px;font-weight:700;line-height:1.1;margin-bottom:20px;letter-spacing:-1px}.paf-desc{font-size:18px;color:var(--paf-gray);font-weight:400}.paf-section{margin-bottom:60px}.paf-section-header{display:flex;align-items:center;gap:20px;margin-bottom:40px}.paf-section-num{font-family:var(--paf-serif);font-size:40px;color:var(--paf-accent);font-style:italic}.paf-section h3{font-size:28px;font-weight:700;margin:0}.paf-divider{height:1px;background-color:var(--paf-border);margin:60px 0}.paf-grid-row{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:30px}.paf-input-group{display:flex;flex-direction:column}.paf-input-group.full-width{grid-column:1 / -1}.mt-4{margin-top:24px}.mt-6{margin-top:40px}.paf-input-group label{font-size:14px;font-weight:600;margin-bottom:12px;color:var(--paf-black);display:block}.paf-input-group input[type=text],.paf-input-group input[type=tel]{width:100%;height:50px;border:1px solid var(--paf-border);border-radius:0;padding:0 16px;font-size:16px;background-color:transparent;transition:border-color .3s,background-color .3s;box-sizing:border-box}.paf-input-group input:focus{outline:none;border-color:var(--paf-black);background-color:#fafafa}.paf-select-wrapper{position:relative}.paf-select-wrapper select{width:100%;height:50px;border:1px solid var(--paf-border);border-radius:0;padding:0 16px;font-size:16px;appearance:none;background-color:transparent;cursor:pointer}.paf-select-wrapper:after{content:"↓";position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:12px;pointer-events:none;color:var(--paf-gray)}.paf-file-box{position:relative;overflow:hidden;height:50px;border:1px dashed var(--paf-gray);display:flex;align-items:center;padding:0 16px;cursor:pointer;transition:border-color .3s}.paf-file-box:hover{border-color:var(--paf-black);border-style:solid}.paf-file-box input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.file-custom-text{font-size:14px;color:var(--paf-gray)}.paf-submit-area{text-align:center;margin-top:80px}.paf-consent-text{font-size:13px;color:var(--paf-gray);margin-bottom:30px}.paf-consent-text a{color:var(--paf-black);text-decoration:underline}.paf-submit-btn{padding:20px 80px;background-color:var(--paf-black);color:var(--paf-white);border:none;font-size:18px;font-weight:700;cursor:pointer;transition:transform .2s,background-color .2s}.paf-submit-btn:hover{transform:translateY(-3px);background-color:#333}.paf-submit-btn:disabled{background-color:var(--paf-gray);cursor:not-allowed;transform:none}.paf-rejection-box{text-align:center;max-width:600px;padding:60px;border:1px solid var(--paf-border);background:#fafafa}.paf-rejection-box h2{font-size:32px;margin-bottom:20px}.paf-btn-outline{padding:12px 30px;border:1px solid var(--paf-black);background:transparent;cursor:pointer}@media(max-width:768px){.paf-title{font-size:42px}.paf-grid-row{grid-template-columns:1fr;gap:24px}.paf-section-header h3{font-size:24px}.paf-submit-btn{width:100%}}:root{--cb-bg: #ffffff;--cb-text-main: #333333;--cb-text-sub: #888888;--cb-text-light: #aaaaaa;--cb-border: #e0e0e0;--cb-brand: #F8EF99;--cb-brand-dark: #e6dd88;--cb-radius: 5px;--cb-transition: cubic-bezier(.19, 1, .22, 1);--cb-ease: cubic-bezier(.25, .46, .45, .94);--header-height-pc: 70px;--header-height-mo: 60px}.cb-page-container{display:flex;flex-direction:column;min-height:100vh;background-color:var(--cb-bg);font-family:Pretendard,-apple-system,BlinkMacSystemFont,Roboto,sans-serif;color:var(--cb-text-main);width:100%;overflow-x:hidden}.cb-main-wrapper{width:100%;flex:1;display:flex;justify-content:center;padding:80px 20px;box-sizing:border-box}.cb-container{width:100%;max-width:1200px;margin:0 auto}.cb-reveal-mask{overflow:hidden;display:block}.cb-reveal-text{transform:translateY(110%);transition:transform 1.2s var(--cb-ease);display:block}.cb-reveal-text.cb-active{transform:translateY(0)}.cb-fade-up{opacity:0;transform:translateY(30px);transition:opacity .8s var(--cb-ease),transform .8s var(--cb-ease)}.cb-fade-up.cb-active{opacity:1;transform:translateY(0)}.cb-header-section{margin-bottom:60px;text-align:left}.cb-title{font-size:30px;font-weight:800;margin:0;letter-spacing:-1px;line-height:1;text-transform:uppercase;color:var(--cb-text-main)}.cb-divider-long{width:100%;height:2px;background-color:var(--cb-text-main);margin:20px 0}.cb-desc{font-size:16px;color:var(--cb-text-sub);font-weight:400;margin:0;text-align:right}.cb-filter-bar{display:flex;justify-content:flex-end;gap:8px;margin-bottom:20px;flex-wrap:wrap}.cb-filter-bar button{padding:8px 16px;border:1px solid var(--cb-border);background:#fff;border-radius:var(--cb-radius);font-size:13px;color:var(--cb-text-sub);cursor:pointer;transition:all .2s;font-weight:600}.cb-filter-bar button:hover{background-color:#fafafa;border-color:var(--cb-text-main)}.cb-filter-bar button.cb-active{background-color:var(--cb-text-main);color:#fff;border-color:var(--cb-text-main)}.cb-top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;width:100%;border-bottom:1px solid var(--cb-border);padding-bottom:15px}.cb-total-count{font-size:14px;color:var(--cb-text-sub);letter-spacing:-.5px}.cb-total-count strong{color:var(--cb-text-main);font-weight:700;margin-left:4px}.cb-btn-write{padding:10px 20px;background-color:var(--cb-brand);color:#333;border:1px solid var(--cb-brand);font-size:13px;font-weight:700;cursor:pointer;border-radius:var(--cb-radius);display:flex;align-items:center;gap:6px;transition:all .2s}.cb-btn-write:hover{background-color:var(--cb-brand-dark);transform:translateY(-2px)}.cb-list-wrapper{width:100%;overflow-x:auto}.cb-table{width:100%;border-collapse:collapse;font-size:15px;table-layout:fixed}.cb-table th{padding:20px 10px;border-bottom:2px solid var(--cb-text-main);font-weight:700;color:var(--cb-text-main);background-color:#fff;text-align:center;font-size:14px}.cb-table th.cb-text-left{text-align:left;padding-left:20px}.cb-table td{padding:20px 10px;border-bottom:1px solid var(--cb-border);color:var(--cb-text-main);text-align:center;vertical-align:middle;transition:background-color .2s}.cb-post-row:hover td{background-color:#fafafa;cursor:pointer}.cb-table .cb-post-title{text-align:left;padding-left:20px;cursor:pointer}.cb-title-inner{display:flex;align-items:center;gap:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.cb-lock-icon{font-size:12px;color:var(--cb-text-sub)}.cb-comment-count{color:#d32f2f;font-size:13px;font-weight:700}.cb-new-dot{width:5px;height:5px;background-color:#d32f2f;border-radius:50%;display:inline-block;margin-bottom:2px}.cb-badge{font-size:11px;padding:4px 8px;border-radius:var(--cb-radius);font-weight:700;display:inline-block;letter-spacing:.5px}.cb-badge.cb-pending{background:#f0f0f0;color:#888;border:none}.cb-badge.cb-completed{background:var(--cb-text-main);color:#fff;border:none}.cb-badge.cb-additional{background:#fff;border:1px solid #d32f2f;color:#d32f2f}.cb-loading,.cb-no-posts{padding:100px 0;text-align:center;color:var(--cb-text-sub);border-bottom:1px solid var(--cb-border);font-weight:300}@media(max-width:768px){.cb-page-container{padding-top:var(--header-height-mo);overflow-x:hidden}.cb-main-wrapper{padding:30px 16px;display:block;box-sizing:border-box}.cb-header-section{margin-bottom:30px;text-align:left}.cb-title{font-size:24px;margin-bottom:10px}.cb-desc{font-size:13px}.cb-table,.cb-table tbody{display:block;width:100%}.cb-table thead{display:none}.cb-post-row{border:1px solid var(--cb-border);border-radius:var(--cb-radius);margin-bottom:16px;padding:20px;background-color:#fff;display:flex!important;flex-wrap:wrap;align-items:center;position:relative;box-sizing:border-box;width:100%}.cb-table td{padding:0;border:none;display:block;box-sizing:border-box}.cb-num{display:none!important}.cb-table td:has(.cb-badge){position:absolute;top:20px;right:20px;width:auto}.cb-table td:nth-child(2):not(.cb-post-title){position:absolute;top:20px;right:20px;width:auto}.cb-date{order:1;width:auto!important;font-size:12px;color:var(--cb-text-sub);margin-right:8px;margin-bottom:8px}.cb-date+td{order:2;width:auto!important;font-size:12px;color:var(--cb-text-main);font-weight:600;margin-right:auto;margin-bottom:8px;padding-left:8px;border-left:1px solid var(--cb-border);line-height:1}.cb-views{order:3;width:auto!important;font-size:12px;color:var(--cb-text-light);margin-bottom:8px}.cb-views:before{content:"View "}.cb-post-title{order:4;width:100%!important;margin-top:4px;padding-left:0!important}.cb-title-inner{font-size:16px;font-weight:700;color:var(--cb-text-main);white-space:normal;word-break:keep-all;line-height:1.4;display:block;width:100%}.cb-lock-icon{margin-right:4px;vertical-align:middle}.cb-new-dot{display:inline-block;margin-left:4px;vertical-align:top;margin-top:6px}.cb-author:before{content:"작성자: ";font-weight:400;color:#999;margin-right:4px}}.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container:not(.ql-disabled) li[data-list=checked]>.ql-ui,.ql-container:not(.ql-disabled) li[data-list=unchecked]>.ql-ui{cursor:pointer}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0}@supports (counter-set:none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-set:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor table{border-collapse:collapse}.ql-editor td{border:1px solid #000;padding:2px 5px}.ql-editor ol{padding-left:1.5em}.ql-editor li{list-style-type:none;padding-left:1.5em;position:relative}.ql-editor li>.ql-ui:before{display:inline-block;margin-left:-1.5em;margin-right:.3em;text-align:right;white-space:nowrap;width:1.2em}.ql-editor li[data-list=checked]>.ql-ui,.ql-editor li[data-list=unchecked]>.ql-ui{color:#777}.ql-editor li[data-list=bullet]>.ql-ui:before{content:"•"}.ql-editor li[data-list=checked]>.ql-ui:before{content:"☑"}.ql-editor li[data-list=unchecked]>.ql-ui:before{content:"☐"}@supports (counter-set:none){.ql-editor li[data-list]{counter-set:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list]{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered]{counter-increment:list-0}.ql-editor li[data-list=ordered]>.ql-ui:before{content:counter(list-0,decimal) ". "}.ql-editor li[data-list=ordered].ql-indent-1{counter-increment:list-1}.ql-editor li[data-list=ordered].ql-indent-1>.ql-ui:before{content:counter(list-1,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-set:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-2{counter-increment:list-2}.ql-editor li[data-list=ordered].ql-indent-2>.ql-ui:before{content:counter(list-2,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-set:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-3{counter-increment:list-3}.ql-editor li[data-list=ordered].ql-indent-3>.ql-ui:before{content:counter(list-3,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-set:list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-4{counter-increment:list-4}.ql-editor li[data-list=ordered].ql-indent-4>.ql-ui:before{content:counter(list-4,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-set:list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-5{counter-increment:list-5}.ql-editor li[data-list=ordered].ql-indent-5>.ql-ui:before{content:counter(list-5,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-set:list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-6{counter-increment:list-6}.ql-editor li[data-list=ordered].ql-indent-6>.ql-ui:before{content:counter(list-6,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-set:list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-reset:list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-7{counter-increment:list-7}.ql-editor li[data-list=ordered].ql-indent-7>.ql-ui:before{content:counter(list-7,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-set:list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-reset:list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-8{counter-increment:list-8}.ql-editor li[data-list=ordered].ql-indent-8>.ql-ui:before{content:counter(list-8,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-set:list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-reset:list-9}}.ql-editor li[data-list=ordered].ql-indent-9{counter-increment:list-9}.ql-editor li[data-list=ordered].ql-indent-9>.ql-ui:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor li.ql-direction-rtl{padding-right:1.5em}.ql-editor li.ql-direction-rtl>.ql-ui:before{margin-left:.3em;margin-right:-1.5em;text-align:left}.ql-editor table{table-layout:fixed;width:100%}.ql-editor table td{outline:none}.ql-editor .ql-code-block-container{font-family:monospace}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor .ql-ui{position:absolute}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media(pointer:coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor .ql-code-block-container{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor .ql-code-block-container{margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor .ql-code-block-container{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-code-block-container{position:relative}.ql-code-block-container .ql-ui{right:5px;top:5px}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}.board-modal-backdrop{position:fixed;inset:0;background-color:#0009;z-index:3000;display:flex;justify-content:center;align-items:center}.board-modal-content{background:#fff;padding:30px;border-radius:10px;box-shadow:0 10px 30px #0003;display:flex;flex-direction:column;position:relative}.board-modal-content.write-mode{width:600px;height:70vh;max-width:95%}.board-modal-content.detail-mode{width:700px;max-height:85vh;max-width:95%}.board-modal-header{border-bottom:2px solid #333;padding-bottom:15px;margin-bottom:20px}.board-modal-header h3{margin:0;font-size:20px;color:#333}.board-detail-header{margin-bottom:20px;border-bottom:1px solid #eee;padding-bottom:15px}.detail-category-badge{display:inline-block;padding:4px 8px;background-color:#eee;border-radius:4px;font-size:12px;font-weight:700;color:#555;margin-bottom:10px}.detail-title{margin:0 0 10px;font-size:22px;line-height:1.4;color:#333}.detail-meta{font-size:13px;color:#888}.detail-meta .divider{margin:0 8px;color:#ddd}.board-modal-body{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:20px}.board-detail-body{overflow-y:auto;line-height:1.6;color:#333;white-space:pre-wrap;font-size:15px}.board-form-group{display:flex;flex-direction:column;gap:8px}.board-form-group label{font-weight:700;font-size:14px;color:#555}.board-form-group input,.board-form-group textarea{padding:12px;border:1px solid #ccc;border-radius:5px;font-size:14px;resize:none}.board-form-group input:focus,.board-form-group textarea:focus{outline:none;border-color:#333}.board-form-group.full-height{flex:1;display:flex;flex-direction:column}.board-form-group.full-height textarea{flex:1}.comment-section{margin-top:20px;border-top:1px solid #eee;padding-top:20px;display:flex;flex-direction:column;flex:1;min-height:0}.board-modal-footer{margin-top:20px;padding-top:15px;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:10px}.btn-close{padding:10px 20px;border:1px solid #ddd;background:#fff;border-radius:5px;cursor:pointer;font-weight:700;color:#555}.btn-close:hover{background-color:#f5f5f5}.btn-save{padding:10px 25px;border:none;background:#f8ef99;color:#333;border-radius:5px;cursor:pointer;font-weight:700}.btn-save:disabled{background-color:#eee;color:#aaa;cursor:not-allowed}.btn-delete-post{padding:10px 20px;border:none;background:#dc3545;color:#fff;border-radius:5px;cursor:pointer;font-weight:700;margin-right:auto}.btn-delete-post:hover{background-color:#c82333}.detail-header-top{display:flex;justify-content:space-between;align-items:flex-start}.btn-icon-close{background:none;border:none;font-size:24px;cursor:pointer;color:#999;line-height:1}.edit-input-title{width:100%;font-size:20px;padding:8px;margin-bottom:10px;border:1px solid #ccc;border-radius:5px;font-weight:700;box-sizing:border-box}.edit-meta-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.edit-input-meta{width:80px;padding:4px;border:1px solid #ddd;border-radius:4px;margin-left:5px}.view-content{line-height:1.6;color:#333;font-size:15px}.view-content img{max-width:100%;height:auto;cursor:zoom-in;border-radius:4px;margin:10px 0;box-shadow:0 2px 5px #0000000d}.board-modal-footer{margin-top:20px;padding-top:15px;border-top:1px solid #eee;display:flex;justify-content:space-between;align-items:center}.left-actions{display:flex}.right-actions{display:flex;gap:10px}.btn-edit-post{padding:10px 20px;border:1px solid #007bff;background:#fff;color:#007bff;border-radius:5px;cursor:pointer;font-weight:700;transition:all .2s}.btn-edit-post:hover{background:#007bff;color:#fff}.btn-cancel{padding:10px 20px;border:1px solid #ddd;background:#f8f9fa;border-radius:5px;cursor:pointer;font-weight:700;color:#555}.image-zoom-backdrop{position:fixed;inset:0;background-color:#000000e6;z-index:4000;display:flex;justify-content:center;align-items:center;cursor:zoom-out}.image-zoom-backdrop img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:4px;box-shadow:0 0 20px #ffffff1a;cursor:default}.btn-zoom-close{position:absolute;top:20px;right:20px;background:none;border:none;color:#fff;font-size:40px;cursor:pointer}.auth-action-container{display:flex;justify-content:center;align-items:center;min-height:70vh;background-color:#f8f9fa;padding:20px}.auth-card{background:#fff;padding:40px;border-radius:10px;box-shadow:0 4px 15px #0000000d;width:100%;max-width:400px;text-align:center;border:1px solid #eee}.auth-card h2{margin-top:0;margin-bottom:10px;color:#333}.auth-card p{color:#666;margin-bottom:30px;font-size:14px;line-height:1.5}.form-group{text-align:left;margin-bottom:15px}.form-group label{display:block;font-weight:700;margin-bottom:5px;font-size:14px;color:#333}.form-group input{width:100%;padding:12px;border:1px solid #ccc;border-radius:5px;box-sizing:border-box;font-size:15px}.btn-submit,.btn-login{width:100%;padding:12px;border:none;border-radius:5px;font-weight:700;font-size:16px;cursor:pointer;margin-top:10px;color:#333}.btn-submit:hover,.btn-login:hover{opacity:.9}.error-view button{padding:10px 20px;background:#333;color:#fff;border:none;border-radius:5px;cursor:pointer}.guide-page-wrapper{width:100%;max-width:1200px;margin:0 auto;padding:40px 20px;min-height:600px}.guide-top-tabs{display:flex;justify-content:center;gap:10px;margin-bottom:40px;border-bottom:1px solid #ddd;padding-bottom:20px}.guide-tab-btn{padding:12px 30px;font-size:16px;font-weight:700;border:1px solid #ddd;background:#fff;border-radius:30px;cursor:pointer;color:#555;transition:all .2s}.guide-tab-btn.active{background:#333;color:#fff;border-color:#333;box-shadow:0 4px 10px #0000001a}.guide-content-container{display:flex;gap:40px}.guide-sidebar{width:260px;flex-shrink:0;border-right:1px solid #eee;padding-right:20px}.guide-sidebar h3{margin-top:0;margin-bottom:20px;font-size:20px;color:#333;border-bottom:2px solid #333;padding-bottom:10px}.sidebar-menu-list{display:flex;flex-direction:column;gap:25px}.sidebar-group-title{font-size:16px;font-weight:800;color:#222;margin-bottom:10px;padding-left:10px;border-left:4px solid rgb(248,239,153);line-height:1.2}.sidebar-post-list{list-style:none;padding:0;margin:0}.sidebar-post-list li{padding:8px 15px;font-size:14px;color:#555;cursor:pointer;border-radius:5px;margin-bottom:2px;transition:all .2s}.sidebar-post-list li:hover{background-color:#f1f1f1;color:#000}.sidebar-post-list li.active{background-color:#e3f2fd;color:#007bff;font-weight:700}.empty-posts{font-size:12px;color:#ccc;padding-left:15px;font-style:italic}.no-menu{color:#999;padding:20px;text-align:center}.guide-article{flex:1;min-width:0;background:#fff;padding:0 10px}.article-title{margin-top:0;font-size:28px;color:#333;border-bottom:1px solid #eee;padding-bottom:20px;margin-bottom:30px}.article-body{line-height:1.7;color:#444;font-size:16px}.article-body img{max-width:100%;height:auto;border-radius:5px}.empty-guide{text-align:center;padding:100px 0;color:#999;font-size:16px}.guide-write-container{max-width:1000px;margin:0 auto;padding:40px 20px}.write-form-row{display:flex;gap:15px;margin-bottom:15px}.write-form-row select{padding:10px;border-radius:5px;border:1px solid #ccc;width:200px}.guide-title-input{width:100%;padding:12px;border:1px solid #ccc;border-radius:5px;font-size:16px;margin-bottom:20px;box-sizing:border-box}.editor-wrapper{margin-bottom:60px}.write-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid #eee;padding-top:20px}.write-actions button{padding:10px 25px;border:none;border-radius:5px;font-weight:700;cursor:pointer}.write-actions .btn-cancel{background:#eee;color:#555}.write-actions .btn-save{color:#333}.td-page-main{background-color:#fff;min-height:calc(100vh - 200px);padding:0}.td-page-container{max-width:1600px;margin:0 auto;padding:0 20px;font-family:Pretendard,sans-serif}.td-page-header{text-align:center;margin-bottom:20px}.td-page-header h2{font-size:26px;font-weight:800;color:#333;margin-bottom:8px}.td-page-header p{color:#666;font-size:14px}.td-page-editor-wrapper{display:flex;height:750px;border:1px solid #ddd;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #00000014;position:relative}.td-page-sidebar{width:280px;background:#fff;padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:20px;z-index:10;flex-shrink:0}.td-page-sidebar.left{border-right:1px solid #eee}.td-page-sidebar.right{border-left:1px solid #eee}.td-page-panel-section h4{font-size:14px;font-weight:700;color:#333;margin-bottom:12px;padding-bottom:6px;border-bottom:2px solid #eee}.td-page-panel-section.highlight{background-color:#f0f8ff;border:1px solid #cce5ff;padding:15px;border-radius:8px}.td-page-btn-grid{display:grid;gap:8px}.td-page-btn-grid.col-2{grid-template-columns:1fr 1fr}.td-page-btn-grid button{padding:10px;background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:13px;color:#444;transition:all .2s}.td-page-btn-grid button:hover{background:#f5f5f5;border-color:#bbb;transform:translateY(-1px)}.td-page-tools-row{display:flex;gap:5px;background:#eee;padding:4px;border-radius:6px}.td-page-tools-row button{flex:1;border:none;padding:8px;border-radius:4px;font-size:13px;cursor:pointer;background:transparent;color:#666;font-weight:600}.td-page-tools-row button.active{background:#fff;color:#1976d2;box-shadow:0 1px 3px #0000001a}.td-page-control-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px}.td-page-control-row label{color:#555;white-space:nowrap}.td-page-control-row input[type=number]{width:70px;padding:4px;border:1px solid #ccc;border-radius:4px;text-align:right}.td-page-control-row input[type=range]{flex:1;margin-left:10px}.td-page-control-row input[type=color]{border:none;width:40px;height:30px;cursor:pointer;background:none;padding:0}.td-page-control-row input[type=text]{width:100%;padding:4px;border:1px solid #ccc;border-radius:4px}.td-page-text-input-row{display:flex;gap:5px;margin-bottom:8px}.td-page-text-input-row input[type=text]{flex:1;padding:6px;border:1px solid #ccc;border-radius:4px}.td-page-btn-add{width:100%;padding:8px;background:#333;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px}.td-page-chk-row{margin-bottom:8px;font-size:13px}.td-page-chk-row label{display:flex;align-items:center;gap:8px;cursor:pointer}.td-page-item-name-tag{background:#1976d2;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:700;margin-bottom:10px;text-align:center}.td-page-btn-delete{width:100%;padding:10px;background:#ff5252;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:700;margin-top:10px}.td-page-btn-delete:hover{background:#d32f2f}.td-page-empty-msg{text-align:center;padding:30px 10px;border:2px dashed #eee;border-radius:8px;color:#aaa;font-size:13px}.td-page-footer-btn{margin-top:auto;text-align:center}.td-page-footer-btn button{width:100%;padding:12px;background:#333;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:700}.td-page-canvas-area{flex:1;background-color:#f5f7fa;position:relative;cursor:grab}.td-page-canvas-area:active{cursor:grabbing}.td-page-item-label{background:#fffc;padding:2px 6px;border-radius:4px;font-size:11px;font-weight:700;color:#333;pointer-events:none;border:1px solid #ddd}.td-page-item-label.selected{background:#1976d2;color:#fff;border-color:#1976d2}@media(max-width:768px){.td-page-main{padding:10px 0}.td-page-container{padding:0 10px}.td-page-header{margin-bottom:10px}.td-page-header h2{font-size:22px}.td-page-editor-wrapper{flex-direction:column;height:70vh;border:none;box-shadow:none}.td-page-sidebar{position:absolute;top:40px;bottom:0;width:80%;max-width:300px;transition:transform .3s ease-in-out;box-shadow:0 5px 20px #0003;z-index:20}.td-page-sidebar.left{left:0;border-right:none;transform:translate(-100%)}.td-page-sidebar.right{right:0;border-left:none;transform:translate(100%)}.td-page-sidebar.left:not(.hidden){transform:translate(0)}.td-page-sidebar.right:not(.hidden){transform:translate(0)}.td-page-canvas-area{flex:1;width:100%;min-height:400px;border-radius:8px;overflow:hidden}.td-page-mobile-toolbar{display:flex;justify-content:space-around;padding:5px 0;width:100%;background:#fff;border-radius:8px;margin-bottom:5px;box-shadow:0 2px 5px #0000000d;z-index:10;position:relative}.td-page-btn-mobile-open{padding:10px 15px;background:#f0f0f0;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;width:48%}.td-page-btn-mobile-open.active{background:#1976d2;color:#fff}.td-page-footer-btn{margin-top:20px}.td-page-control-row input[type=number]{width:60px}}.partner-sidebar{width:176px;flex-shrink:0;background-color:#f8f9fa;border-right:1px solid rgba(0,0,0,.05);box-sizing:border-box;overflow-x:hidden;overflow-y:auto}.partner-menu-list{list-style:none;padding:0;margin:10px 0}.partner-menu-parent{display:flex;justify-content:space-between;align-items:center;width:100%;padding:12px 15px;background:none;border:none;text-align:left;font-size:14px;font-weight:700;color:#333;cursor:pointer;transition:background-color .1s;box-sizing:border-box}.menu-label{display:flex;align-items:center;gap:8px}.menu-icon{display:flex;align-items:center;justify-content:center;color:#555}.partner-menu-parent:hover{background-color:#0000000d}.partner-menu-parent.active{background-color:#e9ecef;color:#000}.partner-submenu-list{list-style:none;padding:0;margin:0;background-color:#f1f1f1;max-height:0;overflow:hidden;transition:max-height .3s ease-out}.partner-submenu-list.open{max-height:500px;transition:max-height .3s ease-in}.partner-submenu-item{display:block;width:100%;padding:10px 15px 10px 40px;background:none;border:none;text-align:left;font-size:13px;font-weight:400;color:#333;cursor:pointer;text-decoration:none;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.partner-submenu-item:hover{background-color:#e5e5e5}.partner-submenu-item.active{background-color:#fff;font-weight:700;color:#007bff}.accordion-icon{width:0;height:0;border-style:solid;border-width:4px 0 4px 5px;border-color:transparent transparent transparent #888;transition:transform .3s ease;margin-left:5px}.accordion-icon.open{transform:rotate(90deg)}.site-add-container{background-color:#fff;padding:20px;height:100%;box-sizing:border-box;overflow-y:auto;max-width:1200px;margin:0 auto}.add-header{margin-bottom:20px;border-bottom:2px solid #333;padding-bottom:10px}.add-header h2{margin:0;font-size:20px;color:#333}.site-type-switcher{display:flex;gap:10px;margin-bottom:20px}.type-label{flex:1;padding:10px;border:1px solid #ddd;border-radius:6px;text-align:center;cursor:pointer;font-weight:700;color:#666;transition:all .2s}.type-label.active{background:#e3f2fd;border-color:#1976d2;color:#1976d2}.type-label input{display:none}.site-add-form{display:flex;flex-direction:column;gap:12px}.form-row{display:flex;gap:10px}.form-row-4{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:10px}.form-group{flex:1;display:flex;flex-direction:column;gap:4px}.form-label{font-size:13px;font-weight:700;color:#555;white-space:nowrap}.required{color:#e74c3c;margin-left:2px}.form-input,.form-select{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px;height:38px;box-sizing:border-box}.form-input:focus{border-color:#1976d2;outline:none}.address-inputs-row{display:flex;gap:8px;width:100%}.addr-select{width:120px;flex-shrink:0}.submit-button-container{margin-top:20px;display:flex;justify-content:flex-end}.submit-button{padding:12px 30px;border:none;border-radius:4px;color:#fff;font-weight:700;font-size:15px;cursor:pointer;transition:opacity .2s}.submit-button:disabled{background-color:#ccc!important;cursor:not-allowed}.submit-button:hover{opacity:.9}.site-list-container{display:flex;flex-direction:column;position:relative}.list-header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #333;padding-bottom:10px;margin-top:0;margin-bottom:20px}.list-header h2{margin:0}.header-actions{display:flex;gap:10px}.header-btn{background-color:#fff;border:1px solid #ccc;padding:8px 15px;border-radius:5px;cursor:pointer;font-size:13px;font-weight:700;display:flex;align-items:center;gap:5px;transition:background-color .2s}.header-btn:hover{background-color:#f1f1f1}.site-search-bar{margin-bottom:20px;max-width:400px;height:40px;padding:0 12px;font-size:16px;border:1px solid #ccc;border-radius:5px}.site-table-wrapper{overflow-x:auto}.site-table{width:100%;border-collapse:collapse;font-size:14px}.site-table th,.site-table td{border:1px solid #ddd;padding:10px;text-align:left;white-space:nowrap}.site-table th{background-color:#f8f9fa;font-weight:700}.site-table tr:hover{background-color:#f1f1f1}.site-link-button{background:none;border:none;padding:0;margin:0;color:#007bff;font-weight:700;font-size:14px;text-align:left;cursor:pointer}.site-link-button:hover{text-decoration:underline}.row-deleted td{color:#999;text-decoration:line-through;text-decoration-color:red;text-decoration-thickness:2px}.row-deleted .site-link-button{color:#999;text-decoration:line-through;text-decoration-color:red}.modal-backdrop{position:fixed;inset:0;background:#00000080;z-index:1000;display:flex;justify-content:center;align-items:center}.modal-content{background:#fff;padding:20px;border-radius:8px;width:1000px;box-shadow:0 4px 15px #0003}.modal-content h3{margin-top:0;text-align:center;margin-bottom:15px;font-size:18px;color:#333}.modal-item{padding:10px 15px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center;background:#fff}.sort-controls button{background:#f1f3f5;border:1px solid #ddd;padding:2px 8px;margin-left:5px;cursor:pointer;border-radius:3px;font-size:12px}.btn-save{background:#28a745;color:#fff;border:none;padding:8px 15px;border-radius:4px;cursor:pointer;font-weight:700}.btn-close{background:#6c757d;color:#fff;border:none;padding:8px 15px;border-radius:4px;cursor:pointer;font-weight:700}.add-btn{background-color:#1976d2;color:#fff;border-color:#1976d2}.add-btn:hover{background-color:#1565c0}.status-badge{display:inline-block;padding:4px 10px;border-radius:15px;font-size:12px;font-weight:700;color:#333;background-color:#f0f0f0;border:1px solid rgba(0,0,0,.1);min-width:60px;text-align:center}.status-badge.미팅중{background-color:#e3f2fd;color:#1565c0}.status-badge.계약대기{background-color:#fff3e0;color:#ef6c00}.status-badge.계약완료{background-color:#e8f5e9;color:#2e7d32}.status-badge.공사전{background-color:#f3e5f5;color:#7b1fa2}.status-badge.공사중{background-color:#fff8e1;color:#f57f17}.status-badge.공사완료{background-color:#e0f2f1;color:#00695c}.status-badge.보류{background-color:#eceff1;color:#546e7a}.status-badge.취소{background-color:#ffebee;color:#c62828}.status-badge.deleted{background-color:#333;color:#fff}.meeting-cell{font-size:13px;color:#1976d2;font-weight:700;cursor:help}.memo-cell{font-size:13px;color:#555;cursor:help}.sam-overlay{position:fixed;inset:0;background:#0009;z-index:2000;display:flex;justify-content:center;align-items:center}.sam-content{background:#fff;width:750px;max-width:95%;border-radius:10px;display:flex;flex-direction:column;box-shadow:0 10px 30px #0003;overflow:hidden}.sam-header{padding:12px 20px;background:#f8f9fa;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center}.sam-header h2{margin:0;font-size:16px;color:#333;font-weight:700}.sam-close-btn{background:none;border:none;font-size:20px;color:#999;cursor:pointer}.sam-body{padding:15px 20px;overflow-y:auto}.sam-radio-group.compact{display:flex;gap:10px;margin-bottom:15px}.sam-radio-label{flex:1;padding:8px;border:1px solid #ddd;border-radius:4px;text-align:center;cursor:pointer;font-size:13px;color:#666;font-weight:700;transition:all .2s}.sam-radio-label.active{background:#e3f2fd;border-color:#1976d2;color:#1976d2}.sam-radio-label input{display:none}.sam-form{display:flex;flex-direction:column;gap:10px}.sam-row{display:flex;gap:10px}.sam-row-4{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:10px}.sam-group{display:flex;flex-direction:column;gap:4px}.sam-group label{font-size:12px;font-weight:700;color:#555;white-space:nowrap}.sam-group input,.sam-group select{width:100%;height:34px;padding:0 8px;border:1px solid #ddd;border-radius:4px;font-size:13px;box-sizing:border-box}.sam-group input:focus,.sam-group select:focus{border-color:#1976d2;outline:none}.sam-addr-row.full{display:flex;gap:8px;width:100%}.sam-addr-row.full select,.sam-addr-row.full input{flex-shrink:1}.sam-footer.compact{padding:15px 20px;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.sam-btn-cancel{padding:8px 16px;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer;font-size:13px;color:#555}.sam-btn-save{padding:8px 20px;border:none;background:#1976d2;color:#fff;border-radius:4px;cursor:pointer;font-weight:700;font-size:13px}.sam-btn-save:disabled{background:#ccc;cursor:not-allowed}.site-detail-page{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:50vh 1fr;gap:20px;width:100%;height:100%;grid-template-areas:"info memo" "files actions"}.quadrant-box{border:1px solid #eee;border-radius:8px;background-color:#fff;box-shadow:0 1px 3px #0000000d;padding:5px;display:flex;flex-direction:column;overflow:hidden}.quadrant-info{grid-area:info}.quadrant-memo{grid-area:memo}.quadrant-files{grid-area:files}.quadrant-actions{grid-area:actions}.quadrant-box h3{margin-top:0;border-bottom:1px solid #f0f0f0;padding-bottom:10px;flex-shrink:0;margin-bottom:0}.memo-widget-container{display:flex;flex-direction:column;height:100%;overflow:hidden}.pinned-memo-container{flex-shrink:0;padding:3px;background-color:#0000;border:0cm solid #fbc02d;border-radius:5px;margin-bottom:0}.pinned-memo-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.pinned-memo-title{font-weight:700;font-size:14px;display:flex;align-items:center}.pinned-memo-title svg{width:12px;height:12px;fill:#fbc02d;margin-right:5px}.pinned-memo-timestamp{font-size:10px;color:#555;white-space:nowrap;margin:0 10px}.unpin-button{background:none;border:none;color:#777;cursor:pointer;font-size:10px;font-weight:700;padding:0}.unpin-button:hover{color:#007bff}.pinned-memo-content{font-size:14px;font-weight:700;white-space:pre-wrap;margin:0}.pinned-memo-meeting{font-size:12px;font-weight:700;color:#d84315;margin-top:5px}.memo-list-wrapper{flex-grow:1;overflow-y:auto;border-radius:5px;background-color:#0000;padding:10px}.memo-list{list-style:none;padding:0;margin:0}.memo-item{display:flex;gap:8px;margin-bottom:0}.memo-actions{flex-shrink:0;display:flex;gap:5px;margin-top:2px}.memo-pin-button,.memo-delete-button{background:none;border:none;padding:0;cursor:pointer;font-size:16px;color:#ccc;transition:color .2s}.memo-pin-button:hover{color:#0000}.memo-delete-button:hover{color:#dc3545}.memo-pin-button svg{width:16px;height:16px;fill:currentColor}.memo-pin-button.pinned{color:#0000}.memo-body{flex-grow:1}.memo-header{font-size:14px;font-weight:700;margin-bottom:-15px}.memo-header .timestamp{font-size:12px;font-weight:400;color:#777;margin-left:8px}.memo-content{font-size:14px;white-space:pre-wrap;word-break:break-word}.memo-meeting-time{font-size:12px;font-weight:700;color:#d84315;margin-top:-10px;margin-bottom:5px}.memo-input-area{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px}.datetime-picker{display:flex;gap:10px;margin-bottom:0;align-items:center;width:100%;order:1}.datetime-picker input{height:30px;border:1px solid #ccc;border-radius:4px}.datetime-picker button{background:none;border:none;color:#007bff;cursor:pointer;font-size:12px}.memo-action-bar{display:flex;align-items:center;gap:10px;margin-bottom:0;order:2;flex-shrink:0;height:40px}.memo-icon-button{background:none;border:none;padding:0;cursor:pointer;color:#555}.memo-icon-button svg{width:20px;height:20px;fill:currentColor}.memo-icon-button:hover{color:#000}.memo-input-box{display:flex;gap:10px;order:3;flex-grow:1;min-width:200px}.memo-textarea{flex-grow:1;height:40px;min-height:40px;padding:8px;border:1px solid #ccc;border-radius:5px;font-size:14px;resize:vertical;box-sizing:border-box}.memo-submit-button{flex-shrink:0;height:40px;padding:0 15px;background-color:#007bff;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:700}.memo-submit-button:disabled{background-color:#ccc}.file-widget-container{display:flex;flex-direction:column;height:100%}.file-category-list{list-style:none;padding:0;margin:0;flex-grow:1;overflow-y:auto;display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:15px}.file-category-item{display:flex;flex-direction:column;border:1px solid #eee;border-radius:5px;box-shadow:0 1px 3px #0000000d;overflow:hidden}.thumbnail-preview{flex-shrink:0;width:100%;aspect-ratio:16 / 10;background-color:#f0f0f0;border-bottom:1px solid #eee;border-radius:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:#888;cursor:pointer;overflow:hidden}.thumbnail-preview img{width:100%;height:100%;object-fit:cover}.category-title-wrapper{flex-grow:1;padding:10px;display:flex;flex-direction:column}.category-title{font-weight:700;font-size:16px;margin:0;flex-grow:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.add-file-button{flex-shrink:0;padding:8px 12px;background-color:#f0f0f0;color:#333;border:1px solid #ddd;border-radius:5px;cursor:pointer;font-size:12px;font-weight:700;margin-top:8px}.add-file-button:hover{background-color:#e5e5e5}.actions-widget-container{height:100%;display:flex;flex-direction:column}.actions-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;grid-template-rows:repeat(2,1fr);gap:15px;flex-grow:1;padding:10px 0}.action-grid-button{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:50px;font-size:16px;font-weight:700;color:#333;background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;cursor:pointer;transition:background-color .2s,box-shadow .2s}.action-grid-button:hover{background-color:#fff;border-color:#ccc;box-shadow:0 2px 5px #0000001a}.action-grid-button:disabled{background-color:#e9ecef;color:#aaa;cursor:not-allowed}.action-btn.labor{background-color:#9b59b6;color:#fff}.action-btn.labor:hover{background-color:#8e44ad}.worklog-modal-overlay{position:fixed;inset:0;background:#00000080;z-index:2000;display:flex;justify-content:center;align-items:center}.worklog-modal-content{background:#fff;width:500px;max-height:90vh;border-radius:8px;display:flex;flex-direction:column;box-shadow:0 4px 20px #0003}.worklog-header{padding:15px 20px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center}.worklog-header h3{margin:0;font-size:18px;color:#333}.btn-close{background:none;border:none;font-size:24px;cursor:pointer;color:#999}.worklog-body{padding:20px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:15px}.wl-row{display:flex;align-items:center;margin-bottom:5px}.wl-label{width:100px;font-weight:700;font-size:14px;color:#555}.wl-value{flex:1}.wl-value.read-only{background:#f5f5f5;padding:10px;border-radius:4px;font-size:14px;color:#777;border:1px solid #ddd}.wl-input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.wl-section{display:flex;flex-direction:column;gap:6px}.wl-section label{font-weight:700;font-size:13px;color:#333}.wl-textarea{width:100%;height:80px;padding:10px;border:1px solid #ddd;border-radius:4px;resize:vertical;font-size:14px;box-sizing:border-box}.req{color:#e74c3c;margin-left:4px}.file-upload-box{display:flex;align-items:center;gap:10px;margin-top:5px}.btn-file-select{padding:6px 12px;border:1px solid #ccc;background:#eee;border-radius:4px;font-size:13px;cursor:pointer}.file-info{font-size:13px;color:#666}.preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}.preview-item{position:relative;height:80px;border:1px solid #eee;border-radius:4px;overflow:hidden}.preview-item img{width:100%;height:100%;object-fit:cover}.btn-remove-img{position:absolute;top:2px;right:2px;background:#0009;color:#fff;border:none;border-radius:50%;width:20px;height:20px;cursor:pointer;font-size:12px;display:flex;justify-content:center;align-items:center}.worklog-footer{margin-top:20px;padding-top:15px;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:10px}.btn-cancel{padding:10px 20px;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer;font-weight:700}.btn-submit{padding:10px 25px;border:none;color:#fff;border-radius:4px;cursor:pointer;font-weight:700}.schedule-overlay *{box-sizing:border-box}.schedule-overlay{position:fixed;inset:0;background:#0009;z-index:9999;display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.schedule-modal{position:relative;width:98%;max-width:1800px;height:95vh;background:#fff;border-radius:12px;display:flex;overflow:hidden;box-shadow:0 15px 40px #00000040}.sidebar{width:360px;background:#fff;border-right:1px solid #e0e0e0;padding:25px;display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto}.sidebar-header{margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.sidebar-header h3{margin:0;font-size:18px;font-weight:800;color:#333}.control-box{background:#f8f9fa;border:1px solid #eee;border-radius:8px;padding:15px;margin-bottom:20px}.control-label{display:block;font-size:13px;font-weight:700;color:#555;margin-bottom:15px;border-left:3px solid #4a90e2;padding-left:8px}.form-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;width:100%;white-space:nowrap}.form-row label{font-size:13px;font-weight:600;color:#444;margin-right:10px;flex-shrink:0}.input-compact{width:140px;padding:8px;border:1px solid #ddd;border-radius:5px;font-size:13px;text-align:right;background:#fff}.check-group{display:flex;align-items:center;justify-content:flex-end;gap:8px;font-size:13px;font-weight:600;color:#d32f2f;cursor:pointer}.check-group input,.check-group label{cursor:pointer}.action-area{margin-top:auto}.btn{width:100%;padding:12px;border:none;border-radius:5px;font-weight:600;font-size:14px;cursor:pointer;transition:.2s;margin-top:5px}.btn-primary{background:#4a90e2;color:#fff}.btn-secondary{background:#fff;color:#555;border:1px solid #ddd}.btn-danger{background:#fff;color:#e74c3c;border:1px solid #e74c3c}.btn-print{background:#333;color:#fff;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px}.notice-section{margin-top:30px;border-top:2px solid #f0f0f0;padding-top:20px}.section-title{font-size:14px;font-weight:700;color:#333;margin-bottom:15px}.btn-notice-print{background:#e67e22;color:#fff;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px}.btn-setting{background:#fff;border:1px solid #ccc;color:#555;margin-top:8px}.btn-logo{background:#fff;border:1px dashed #ccc;color:#777;font-weight:400;font-size:13px;margin-top:5px}.screen-view{flex:1;background:#fff;padding:30px;overflow:auto;display:flex;flex-direction:column}.dashboard-table{width:100%;border-collapse:collapse;table-layout:fixed;border:1px solid #ddd}.dashboard-header th{position:sticky;top:0;background:#f1f3f5;border:1px solid #ddd;padding:12px;text-align:center;font-weight:700;color:#444;z-index:10}.dashboard-header th.sun{color:#e74c3c;background:#fff5f5}.dashboard-header th.sat{color:#1976d2;background:#f0f7ff}.dashboard-row td{border:1px solid #eee;vertical-align:top;padding:8px;height:140px;transition:background .1s}.dashboard-row td:hover{background-color:#fafafa}.print-view-container{display:none}.td-date{font-weight:800;font-size:14px;display:block;margin-bottom:6px;color:#333}.sun .td-date{color:#d32f2f}.sat .td-date{color:#1976d2}.proc-bar{padding:3px 6px;margin-bottom:3px;border-radius:4px;font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.noisy-badge{position:absolute;top:8px;right:8px;background:#d32f2f;color:#fff;font-size:10px;font-weight:700;padding:3px 6px;border-radius:12px}.btn-close-modal{position:absolute;top:20px;right:25px;background:none;border:none;font-size:32px;color:#888;cursor:pointer;z-index:1000}.ourproject-footer{margin-top:auto;padding-top:15px;border-top:1px solid #eee;text-align:center;width:100%;flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:8px}.footer-logo-img{height:30px;width:auto;object-fit:contain}.footer-slogan{font-size:11px;color:#888;font-weight:500}.settings-overlay{position:absolute;inset:0;background:#fffffff2;z-index:2000;display:flex;justify-content:center;align-items:center}.settings-box{background:#fff;border:1px solid #ccc;box-shadow:0 10px 30px #0003;width:420px;padding:30px;border-radius:8px}.settings-title{font-size:20px;font-weight:800;margin-bottom:25px;text-align:center;border-bottom:2px solid #eee;padding-bottom:15px}.settings-label{font-size:13px;font-weight:700;display:block;margin-bottom:6px;color:#444}.settings-input{width:100%;padding:10px;margin-bottom:15px;border:1px solid #ddd;border-radius:4px;font-size:14px}.notice-sheet{background:#fff;margin:0 auto;box-sizing:border-box;display:flex;flex-direction:column;position:relative;font-family:Pretendard,Noto Sans KR,sans-serif}.notice-sheet.a4{width:210mm;height:297mm;padding:15mm}.notice-sheet.a3{width:297mm;height:420mm;padding:25mm}.notice-design-layout{height:100%;display:flex;flex-direction:column;justify-content:space-between}.notice-top-bar{width:100%;height:8px;background:#222;margin-bottom:2%;flex-shrink:0}.notice-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ddd;padding-bottom:20px;margin-bottom:30px;flex-shrink:0}.notice-title{font-size:40px;font-weight:800;color:#111;letter-spacing:-1px;margin:0}.notice-logo{max-height:50px;max-width:150px;object-fit:contain}.notice-body{flex:1;display:flex;flex-direction:column;justify-content:center}.notice-intro{font-size:22px;font-weight:700;color:#222;margin-bottom:20px;line-height:1.3}.notice-desc{font-size:16px;color:#555;line-height:1.6;margin-bottom:40px}.info-grid{display:grid;grid-template-columns:110px 1fr;border-top:2px solid #222;margin-bottom:30px}.info-row-label{padding:12px 0;font-weight:700;color:#222;font-size:15px;border-bottom:1px solid #eee}.info-row-value{padding:12px 0 12px 20px;color:#444;font-size:15px;border-bottom:1px solid #eee}.notice-footer{text-align:center;flex-shrink:0;margin-top:20px}.notice-footer p{font-size:15px;color:#777;margin-bottom:30px;font-weight:600}.qr-wrapper{display:flex;justify-content:center;gap:40px;padding-top:25px;border-top:1px solid #eee;margin-bottom:30px}.qr-card{display:flex;flex-direction:column;align-items:center;gap:8px}.qr-icon-circle{width:36px;height:36px;border-radius:50%;display:flex;justify-content:center;align-items:center;margin-bottom:2px}.qr-label{font-size:11px;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:1px}@media print{body,html{margin:0;padding:0;height:100%}.schedule-overlay{position:static;display:block;background:none}.schedule-modal{width:100%;height:auto;box-shadow:none;border-radius:0;display:block;overflow:visible;max-width:none}.sidebar,.btn-close-modal,.screen-view,.settings-overlay{display:none!important}.print-view-container{display:block!important}.paper-sheet{width:100%;height:100vh;max-width:none;margin:0;padding:10mm;box-shadow:none;break-after:page;display:flex;flex-direction:column}.flex-table{width:100%;height:100%;border:2px solid #000;display:flex;flex-direction:column;justify-content:space-between}.flex-thead{flex:0 0 auto;border-bottom:2px solid #000}.flex-tbody{flex:1;display:flex;flex-direction:column}.flex-tr{flex:1;display:flex;border-bottom:1px solid #ccc}.flex-td{flex:1;border-right:1px solid #ccc;padding:5px;display:flex;flex-direction:column;overflow:visible}.flex-tr-header{display:flex;border-bottom:1px solid #000;background:#eee}.flex-th-day{flex:1;padding:10px;text-align:center;font-weight:700;border-right:1px solid #ccc}.notice-sheet{width:100%!important;height:100vh!important;padding:0!important;margin:0!important;border:none!important;break-after:page}.notice-design-layout{height:100%;padding:15mm;box-sizing:border-box}}.contract-info-scope .modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.contract-info-scope .modal-container{background:#fff;width:580px;max-width:95%;max-height:90vh;border-radius:12px;box-shadow:0 15px 40px #0003;display:flex;flex-direction:column;overflow:hidden;font-family:Pretendard,-apple-system,sans-serif}.contract-info-scope .modal-header{padding:20px 25px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center;background-color:#fff}.contract-info-scope .modal-header h2{margin:0;font-size:18px;font-weight:800;color:#222}.contract-info-scope .close-btn{background:none;border:none;font-size:26px;color:#bbb;cursor:pointer;padding:0;line-height:1;transition:color .2s}.contract-info-scope .close-btn:hover{color:#333}.contract-info-scope .contract-form{padding:25px;overflow-y:auto;flex:1;background-color:#fcfcfc}.contract-info-scope .control-box{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 5px #00000005}.contract-info-scope .box-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.contract-info-scope .box-title{font-size:14px;font-weight:700;color:#444;margin-bottom:15px;border-left:3px solid #4a90e2;padding-left:8px;line-height:1}.contract-info-scope .status-badge{font-size:11px;background-color:#e3f2fd;color:#1976d2;padding:3px 8px;border-radius:12px;font-weight:600}.contract-info-scope .form-row{display:flex;align-items:center;margin-bottom:15px}.contract-info-scope .form-row.vertical{flex-direction:column;align-items:flex-start;gap:8px}.contract-info-scope .form-row.split{gap:15px}.contract-info-scope .form-row:last-child{margin-bottom:0}.contract-info-scope .form-group{flex:1;display:flex;flex-direction:column;gap:6px}.contract-info-scope label{font-size:13px;font-weight:600;color:#666;margin-right:15px;white-space:nowrap}.contract-info-scope .req{color:#e74c3c;margin-left:2px}.contract-info-scope .input-modern{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:5px;font-size:14px;color:#333;background-color:#fff;transition:all .2s;box-sizing:border-box}.contract-info-scope .input-modern:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 3px #4a90e21a}.contract-info-scope .input-modern.right{text-align:right}.contract-info-scope .input-modern.readonly{background-color:#f9f9f9;color:#888;cursor:not-allowed}.contract-info-scope .input-modern.full{width:100%}.contract-info-scope .radio-group{display:flex;gap:20px}.contract-info-scope .radio-label{font-size:14px;color:#444;cursor:pointer;display:flex;align-items:center;gap:6px;margin:0}.contract-info-scope .radio-label input{width:16px;height:16px;accent-color:#4a90e2;cursor:pointer}.contract-info-scope .apt-row{display:flex;gap:10px;width:100%}.contract-info-scope .apt-row input{flex:1}.contract-info-scope .cim-footer-actions{padding:20px 25px;border-top:1px solid #eee;display:flex;justify-content:flex-end;align-items:center;gap:10px;background-color:#fff;height:auto}.contract-info-scope .cim-btn-cancel{height:46px;padding:0 24px;min-width:80px;background:#fff;border:1px solid #ccc;border-radius:5px;color:#555;font-weight:600;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;transition:all .2s;box-sizing:border-box}.contract-info-scope .cim-btn-cancel:hover{background-color:#f5f5f5;border-color:#bbb}.contract-info-scope .cim-btn-register{height:46px;padding:0 30px;border:none;background-color:#4a90e2;border-radius:5px;color:#fff!important;font-weight:700;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;transition:opacity .2s;box-sizing:border-box}.contract-info-scope .cim-btn-register:hover{opacity:.9}.contract-info-scope .cim-btn-register:disabled{background-color:#ccc!important;cursor:not-allowed}.labor-modal-wrapper .lm-content{background:#fff;width:500px;max-height:90vh;border-radius:8px;display:flex;flex-direction:column;box-shadow:0 10px 25px #0003}.lm-header{padding:15px 20px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center;background-color:#f8f9fa}.lm-header h3{margin:0;font-size:18px;color:#333}.lm-close-btn{border:none;background:none;font-size:24px;cursor:pointer;color:#999}.lm-group label{display:block;margin-bottom:5px;font-weight:700;font-size:13px;color:#555}.lm-group select,.lm-group input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px}.lm-day-chip{padding:8px 0;text-align:center;border:1px solid #eee;background-color:#fcfcfc;border-radius:4px;cursor:pointer;font-size:13px;transition:all .2s}.lm-day-chip:hover{background-color:#e3f2fd}.lm-group.bg-box{background:#f9f9f9;padding:15px;border-radius:6px;border:1px solid #eee}.lm-input-amount{font-size:18px;font-weight:700;text-align:right;color:#333}.lm-check-label{margin-left:10px;font-size:13px;display:flex;align-items:center;gap:4px;cursor:pointer}.lm-tax-detail{margin-top:15px;padding-top:15px;border-top:1px dashed #ccc;font-size:13px;color:#666}.lm-tax-detail p{display:flex;justify-content:space-between;margin:6px 0}.lm-tax-detail hr{border:0;border-top:1px solid #ddd;margin:10px 0}.lm-tax-detail .total{font-weight:700;color:#e74c3c;font-size:14px}.lm-result-bar strong{font-size:22px;color:#f1c40f}.lm-check-row label{display:flex;align-items:center;gap:5px;font-weight:400;cursor:pointer}.lm-footer{padding:15px 20px;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:10px;background-color:#f8f9fa}.lm-btn-cancel{padding:10px 20px;background:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-weight:700;color:#555}.lm-btn-save{padding:10px 25px;background:#1976d2;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:700}.lm-btn-save:disabled{background-color:#ccc;cursor:not-allowed}.btn-site-filter{font-size:11px;padding:2px 6px;background:#f1f3f5;border:1px solid #ccc;border-radius:4px;cursor:pointer;color:#555}.btn-site-filter:hover{background:#e9ecef}.lm-filter-overlay{position:absolute;inset:0;background:#0003;display:flex;justify-content:center;align-items:center;z-index:2100}.lm-filter-modal{background:#fff;padding:20px;border-radius:8px;width:250px;box-shadow:0 5px 15px #0000004d;border:1px solid #ddd}.lm-filter-modal h4{margin:0 0 15px;font-size:16px;color:#333;text-align:center}.lm-filter-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.lm-filter-item{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px}.lm-filter-footer{margin-top:20px;display:flex;justify-content:flex-end;gap:8px}.lm-filter-footer button{padding:6px 12px;border-radius:4px;border:1px solid #ccc;background:#fff;cursor:pointer}.lm-filter-footer button.primary{background:#1976d2;color:#fff;border:none}.lm-search-wrapper{position:relative}.lm-search-list{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ccc;border-radius:0 0 4px 4px;max-height:200px;overflow-y:auto;z-index:10;box-shadow:0 4px 10px #0000001a;list-style:none;padding:0;margin:0}.lm-search-list li{padding:10px;border-bottom:1px solid #eee;cursor:pointer;display:flex;align-items:center;justify-content:space-between}.lm-search-list li:hover{background-color:#f0f8ff}.lm-search-list .w-name{font-weight:700;color:#333}.lm-search-list .w-info{font-size:12px;color:#888}.lm-search-list .no-result{padding:10px;text-align:center;color:#999;font-size:13px}.lm-pension-warning{background-color:#ffebee;color:#c62828;padding:8px 12px;border-radius:4px;font-size:12px;font-weight:700;margin-top:10px;text-align:center;border:1px solid #ffcdd2;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.worker-modal-wrapper{--wm-primary: #1976d2;--wm-bg: #f8f9fa;--wm-border: #ddd}.worker-modal-wrapper .wm-overlay{position:fixed;inset:0;background:#0009;z-index:9999;display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.worker-modal-wrapper .wm-content{background:#fff;border-radius:12px;width:500px;max-width:95%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 30px #0003;overflow:hidden;outline:none}.worker-modal-wrapper .wm-header{padding:15px 20px;background:var(--wm-bg);border-bottom:1px solid var(--wm-border);display:flex;justify-content:space-between;align-items:center}.worker-modal-wrapper .wm-header h3{margin:0;font-size:18px;color:#333;font-weight:700}.worker-modal-wrapper .wm-close-btn{border:none;background:none;font-size:24px;cursor:pointer;color:#999}.worker-modal-wrapper .wm-body{padding:20px;overflow-y:auto;flex:1}.worker-modal-wrapper .wm-scroll::-webkit-scrollbar{width:8px}.worker-modal-wrapper .wm-scroll::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.worker-modal-wrapper .wm-section-title{font-size:14px;font-weight:700;color:var(--wm-primary);margin:20px 0 10px;border-bottom:1px dashed var(--wm-border);padding-bottom:5px;display:flex;justify-content:space-between}.worker-modal-wrapper .wm-section-title:first-child{margin-top:0}.worker-modal-wrapper .wm-req{color:#e74c3c;margin-left:3px}.worker-modal-wrapper .wm-req-info{font-size:12px;color:#e74c3c;font-weight:400}.worker-modal-wrapper .wm-form-group{margin-bottom:15px}.worker-modal-wrapper .wm-form-group label{display:block;margin-bottom:6px;font-weight:700;font-size:13px;color:#555;white-space:nowrap}.worker-modal-wrapper input[type=text],.worker-modal-wrapper select,.worker-modal-wrapper input[type=number]{width:100%;padding:10px 12px;border:1px solid var(--wm-border);border-radius:6px;box-sizing:border-box;font-size:14px;height:42px;transition:border-color .2s}.worker-modal-wrapper input:focus,.worker-modal-wrapper select:focus{border-color:var(--wm-primary);outline:none}.worker-modal-wrapper .wm-grid-row{display:flex;gap:15px;margin-bottom:15px}.worker-modal-wrapper .wm-grid-row .wm-form-group{flex:1;margin-bottom:0}.worker-modal-wrapper .wm-image-viewer{position:fixed;inset:0;background:#000000d9;z-index:11000;display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.worker-modal-wrapper .wm-image-box{position:relative;background:transparent;padding:0;display:flex;justify-content:center;align-items:center}.worker-modal-wrapper .wm-image-box img{max-width:90vw;max-height:80vh;border:4px solid #fff;border-radius:8px;box-shadow:0 10px 40px #00000080;object-fit:contain}.worker-modal-wrapper .wm-close-viewer{position:absolute;top:-40px;right:-10px;background:none;border:none;color:#fff;font-size:30px;cursor:pointer;font-weight:700;opacity:.8;transition:opacity .2s}.worker-modal-wrapper .wm-close-viewer:hover{opacity:1}.worker-modal-wrapper .wm-radio-group{display:flex;gap:10px}.worker-modal-wrapper .wm-radio-label{flex:1;padding:12px;border:1px solid var(--wm-border);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:700;background:#fff;transition:all .2s}.worker-modal-wrapper .wm-radio-label:hover{background:#f0f8ff}.worker-modal-wrapper .wm-radio-label.selected{background-color:#e3f2fd;border-color:var(--wm-primary);color:var(--wm-primary)}.worker-modal-wrapper .wm-radio-label input{margin:0}.worker-modal-wrapper .wm-account-layout{background:#f9f9f9;padding:15px;border-radius:8px;border:1px solid #eee}.worker-modal-wrapper .wm-account-layout .wm-grid-row{margin-bottom:10px}.worker-modal-wrapper .wm-input-half{flex:1}.worker-modal-wrapper .wm-input-full{width:100%}.worker-modal-wrapper .wm-file-group{margin-bottom:15px}.worker-modal-wrapper .wm-file-box{display:flex;align-items:center;gap:15px;border:1px dashed var(--wm-border);padding:15px;border-radius:6px;background:#fafafa}.worker-modal-wrapper .wm-preview{position:relative;width:60px;height:60px;border-radius:6px;overflow:hidden;border:1px solid #ddd;flex-shrink:0}.worker-modal-wrapper .wm-preview img{width:100%;height:100%;object-fit:cover}.worker-modal-wrapper .wm-preview button{position:absolute;top:0;right:0;width:100%;height:100%;background:#00000080;color:#fff;border:none;opacity:0;cursor:pointer;font-size:18px}.worker-modal-wrapper .wm-preview:hover button{opacity:1}.worker-modal-wrapper .ocr-loading{color:var(--wm-primary);font-weight:400;animation:blink 1s infinite}@keyframes blink{50%{opacity:.5}}.worker-modal-wrapper .wm-footer{padding:15px 20px;border-top:1px solid var(--wm-border);background:#fff;display:flex;justify-content:space-between;align-items:center}.worker-modal-wrapper .wm-right-btns{display:flex;gap:10px}.worker-modal-wrapper button{cursor:pointer;font-family:inherit}.worker-modal-wrapper .wm-btn-cancel{padding:10px 20px;background:#f1f3f5;border:1px solid #dce4ec;border-radius:6px;color:#555;font-weight:700}.worker-modal-wrapper .wm-btn-save{padding:10px 24px;background:var(--wm-primary);color:#fff;border:none;border-radius:6px;font-weight:700;box-shadow:0 2px 6px #1976d24d}.worker-modal-wrapper .wm-btn-save:disabled{background:#ccc;box-shadow:none;cursor:not-allowed}.worker-modal-wrapper .wm-btn-tax{padding:8px 15px;background:#fff;border:1px solid #ccc;border-radius:20px;font-size:13px;color:#555;display:flex;align-items:center;gap:5px}.worker-modal-wrapper .wm-btn-tax:hover{background:#f5f5f5;border-color:#999}.worker-modal-wrapper .wm-inner-overlay{position:absolute;inset:0;background:#0006;display:flex;justify-content:center;align-items:center;z-index:10000}.worker-modal-wrapper .wm-inner-modal{background:#fff;padding:25px;border-radius:12px;width:350px;max-height:80vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d}.worker-modal-wrapper .wm-inner-modal h4{margin:0 0 20px;color:#333;text-align:center}.worker-modal-wrapper .wm-inner-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.worker-modal-wrapper .wm-btn-upload{padding:8px 12px;background-color:#f0f0f0;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:13px;white-space:nowrap}.worker-modal-wrapper .wm-btn-upload:hover{background-color:#e0e0e0}.worker-modal-wrapper .wm-btn-camera{padding:8px 12px;background-color:#e3f2fd;border:1px solid #2196f3;color:#1976d2;border-radius:4px;cursor:pointer;font-size:13px;font-weight:700;white-space:nowrap}.worker-modal-wrapper .wm-btn-upload{padding:0 16px;height:42px;background-color:#fff;border:1px solid #ccc;border-radius:6px;cursor:pointer;font-size:13px;color:#333;display:flex;align-items:center;justify-content:center;transition:all .2s}.worker-modal-wrapper .wm-btn-upload:hover{background-color:#f8f9fa;border-color:#bbb}.worker-modal-wrapper .wm-btn-camera{padding:0 16px;height:42px;background-color:#e3f2fd;border:1px solid #2196f3;color:#1976d2;border-radius:6px;cursor:pointer;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .2s}.worker-modal-wrapper .wm-btn-camera:hover{background-color:#bbdefb}.expense-date-row{display:flex;gap:10px;align-items:center}.pretty-date-input{flex:1;height:42px;padding:0 12px;border:1px solid #ddd;border-radius:6px;font-size:15px;font-family:inherit;color:#333;background-color:#fff;cursor:pointer}.pretty-date-input:focus{border-color:#1976d2;outline:none}.input-disabled{background-color:#f5f5f5!important;color:#777!important;cursor:not-allowed;font-weight:700}.ocr-loading{color:#e67e22;font-weight:700;font-size:12px;margin-left:5px;animation:blink 1s infinite}.ord-modal-overlay{position:fixed;inset:0;background:#00000080;z-index:2000;display:flex;justify-content:center;align-items:center}.ord-modal-content{background:#fff;width:550px;max-height:90vh;border-radius:10px;display:flex;flex-direction:column;box-shadow:0 10px 30px #0003}.ord-header{padding:15px 20px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center;background:#f8f9fa}.ord-header h3{margin:0;font-size:18px;color:#333}.ord-close-btn{border:none;background:none;font-size:24px;cursor:pointer}.ord-body{padding:20px;overflow-y:auto}.ord-type-tabs{display:flex;gap:10px;margin-bottom:20px}.ord-tab{flex:1;padding:10px;border:1px solid #ddd;border-radius:6px;background:#fff;cursor:pointer;font-weight:700;color:#555}.ord-tab.active{background:#e3f2fd;border-color:#1976d2;color:#1976d2}.ord-section-title{font-size:14px;font-weight:700;color:#333;margin-bottom:10px;border-left:4px solid #1976d2;padding-left:8px}.ord-row{display:flex;gap:10px;margin-bottom:10px}.ord-group{flex:1;display:flex;flex-direction:column;gap:5px;margin-bottom:10px}.ord-group label{font-size:12px;font-weight:700;color:#555}.ord-group input,.ord-group select{padding:8px;border:1px solid #ddd;border-radius:4px;height:36px;box-sizing:border-box;font-size:13px}.ord-bg-box{background:#f9f9f9;padding:15px;border-radius:6px;margin-bottom:15px;border:1px solid #eee}.req{color:#e74c3c;margin-left:2px}.ord-footer{padding:15px 20px;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:10px}.ord-btn-cancel{padding:8px 16px;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer}.ord-btn-save{padding:8px 20px;border:none;background:#1976d2;color:#fff;border-radius:4px;cursor:pointer;font-weight:700}.order-page-container{padding:20px;max-width:1200px;margin:0 auto}.order-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:2px solid #333;padding-bottom:15px}.order-header h2{margin:0;font-size:24px}.btn-perm-setting{padding:8px 15px;background:#333;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:700;margin-right:10px}.btn-refresh{padding:8px 15px;background:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer}.order-table-wrapper{overflow-x:auto}.order-table{width:100%;border-collapse:collapse;font-size:13px;white-space:nowrap}.order-table th{background:#f5f5f5;padding:12px;border-bottom:1px solid #ddd;text-align:center;font-weight:700}.order-table td{padding:12px;border-bottom:1px solid #eee;vertical-align:middle}.status-badge{padding:4px 8px;border-radius:12px;font-size:11px;font-weight:700}.status-badge.pending{background:#fff3e0;color:#ef6c00;border:1px solid #ffe0b2}.status-badge.approved{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.status-badge.rejected{background:#ffebee;color:#c62828;border:1px solid #ffcdd2}.row-approved{background-color:#fcfcfc}.secret-mask{color:#aaa;font-style:italic;font-size:12px;display:flex;align-items:center;gap:5px}.link-text{color:#1976d2;text-decoration:none;font-weight:700}.link-text:hover{text-decoration:underline}.vendor{font-weight:700;color:#333}.item{font-size:12px;color:#666;margin-top:2px}.btn-approve{padding:6px 12px;background:#1976d2;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:700;font-size:12px}.btn-approve:hover{background:#1565c0}.done-text{color:#2e7d32;font-weight:700;font-size:12px}.perm-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.perm-item{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #eee;border-radius:6px;cursor:pointer;transition:background .2s}.perm-item:hover{background:#f9f9f9}.perm-item input{width:18px;height:18px;cursor:pointer}.perm-item .name{font-weight:700;font-size:14px;color:#333}.perm-item .email{font-size:12px;color:#888;margin-top:2px}.ord-history-list{margin-top:10px;border-top:1px solid #eee}.ord-history-item{padding:10px;border-bottom:1px solid #f5f5f5;font-size:13px}.hist-header{display:flex;justify-content:space-between;margin-bottom:4px;color:#888;font-size:12px}.hist-reject-reason{color:#d63031;font-weight:700;margin-top:4px;background:#fff5f5;padding:4px;border-radius:4px}.btn-reject{background:#d63031;color:#fff;border:none;border-radius:4px;padding:4px 8px;margin-right:4px;cursor:pointer}.btn-link{background:#555;color:#fff;border:none;border-radius:4px;padding:4px 8px;margin-right:4px;cursor:pointer}.btn-link.linked{background:#27ae60}.action-cell button{font-size:12px}.invoice-select-list{max-height:300px;overflow-y:auto}.invoice-item{display:flex;justify-content:space-between;align-items:center;padding:10px;border-bottom:1px solid #eee;cursor:pointer}.invoice-item:hover{background:#f0f8ff}.btn-select{background:#1976d2;color:#fff;border:none;padding:4px 10px;border-radius:4px;cursor:pointer}.change-order-modal-overlay{position:fixed;inset:0;background:#00000080;z-index:3000;display:flex;justify-content:center;align-items:center;padding:10px}.change-order-modal-content{background:#fff;width:1000px;max-width:95vw;max-height:90vh;border-radius:12px;display:flex;flex-direction:column;box-shadow:0 10px 30px #0003;overflow:hidden}.change-order-modal-header{padding:15px 20px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center;background:#f8f9fa}.change-order-modal-header h3{margin:0;font-size:18px;color:#333}.change-order-modal-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#999}.change-order-modal-body{flex:1;overflow-y:auto;padding:20px}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.change-order-modal-table-wrapper{overflow-x:auto;margin-bottom:10px;border:1px solid #eee;border-radius:4px}.change-order-modal-input-table{width:100%;border-collapse:collapse;min-width:900px;font-size:13px}.change-order-modal-input-table th{background:#f8f9fa;padding:10px 5px;text-align:center;border-bottom:1px solid #ddd;border-right:1px solid #eee;font-weight:600;color:#555}.change-order-modal-input-table td{padding:6px 4px;border-bottom:1px solid #eee;border-right:1px solid #f5f5f5}.change-order-modal-input-table input{width:100%;padding:6px;border:1px solid #ddd;box-sizing:border-box;border-radius:4px;font-size:13px}.change-order-modal-input-table input:focus{border-color:#1976d2;outline:none}.col-name{width:20%}.col-unit,.col-qty{width:60px}  .col-price{width:100px}.col-supply,.col-tax,.col-total{width:110px}.col-note{width:15%}.col-del{width:40px}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.bg-light{background-color:#fdfdfd}.change-order-modal-item{border:1px solid #eee;border-radius:8px;padding:15px;margin-bottom:10px;cursor:pointer;transition:all .2s}.change-order-modal-item:hover{background-color:#f9f9f9;border-color:#1976d2}.change-order-modal-item-header{display:flex;justify-content:space-between;margin-bottom:5px;font-size:13px;color:#666}.change-order-modal-item-title{font-size:16px;font-weight:700;color:#333;margin-bottom:5px}.change-order-modal-item-amount{font-size:14px;font-weight:700;color:#1976d2}.change-order-modal-item-author{font-size:12px;color:#888;margin-top:5px}.change-order-modal-badge{font-size:11px;padding:2px 6px;border-radius:4px;color:#fff}.change-order-modal-badge.pending{background-color:#ff9800}.change-order-modal-badge.customer{background-color:#2196f3}.change-order-modal-badge.approved{background-color:#4caf50}.change-order-modal-form .change-order-modal-form-group{margin-bottom:15px}.change-order-modal-form label{display:block;font-weight:700;margin-bottom:5px;font-size:14px}.change-order-modal-form input[type=text]{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.change-order-modal-btn-del-row{background:#ff5252;color:#fff;border:none;border-radius:4px;cursor:pointer;width:24px;height:24px;display:flex;align-items:center;justify-content:center;margin:0 auto}.change-order-modal-btn-add-row{padding:8px 15px;background:#fff;border:1px solid #ddd;cursor:pointer;font-size:13px;border-radius:4px;color:#555;font-weight:700}.change-order-modal-btn-add-row:hover{background:#f5f5f5;border-color:#bbb}.change-order-modal-total-box{text-align:right;font-size:18px;margin:20px 0;padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #eee}.change-order-modal-actions{display:flex;justify-content:flex-end;gap:10px}.change-order-modal-btn-cancel,.change-order-modal-btn-back{padding:10px 20px;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer;font-weight:700;color:#555}.change-order-modal-btn-save,.change-order-modal-btn-approve{padding:10px 20px;border:none;background:#1976d2;color:#fff;border-radius:4px;cursor:pointer;font-weight:700}.change-order-modal-btn-new{padding:8px 16px;background:#333;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px;font-weight:700}.change-order-modal-view-table{width:100%;border-collapse:collapse;font-size:13px;margin-top:15px;border:1px solid #eee}.change-order-modal-view-table th{background:#f8f9fa;padding:12px;border-bottom:2px solid #ddd;text-align:center;color:#555;font-weight:600}.change-order-modal-view-table td{padding:12px;border-bottom:1px solid #eee}.change-order-modal-list .no-data{text-align:center;padding:30px;color:#999}.change-order-modal-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.change-order-modal-detail-header h4{margin:0;font-size:20px;color:#333}.change-order-modal-detail-meta{font-size:12px;color:#888;margin-bottom:20px;border-bottom:1px dashed #eee;padding-bottom:10px}@media(max-width:768px){.change-order-modal-content{width:100%;max-height:98vh}.change-order-modal-header{padding:10px 15px}.change-order-modal-header h3{font-size:16px}.change-order-modal-body{padding:10px}.change-order-modal-detail .change-order-modal-table-wrapper{overflow-x:hidden}.change-order-modal-view-table{min-width:unset;width:100%;display:block}.change-order-modal-view-table thead,.change-order-modal-view-table tbody,.change-order-modal-view-table tr,.change-order-modal-view-table th,.change-order-modal-view-table td{display:block}.change-order-modal-view-table tr{margin-bottom:10px;border:1px solid #ddd;border-radius:4px;padding:5px}.change-order-modal-view-table th{display:none}.change-order-modal-view-table td{display:flex;justify-content:space-between;padding:6px 10px;border-bottom:none;font-size:13px}.change-order-modal-view-table td:before{content:attr(data-label);font-weight:600;color:#777}.change-order-modal-view-table td.text-right{justify-content:space-between}.change-order-modal-input-table{min-width:600px;font-size:12px}.change-order-modal-input-table th,.change-order-modal-input-table td{padding:8px 4px}.change-order-modal-input-table input{font-size:12px;padding:5px}.col-name{width:25%}.col-unit,.col-qty,.col-del{width:50px}.col-price{width:80px}.col-supply,.col-tax,.col-total{width:90px}.change-order-modal-total-box{font-size:16px;padding:15px;margin:15px 0}.change-order-modal-item{padding:12px}.change-order-modal-item-title{font-size:15px}.change-order-modal-item-amount{font-size:13px}.change-order-modal-actions{flex-direction:column}.change-order-modal-actions button{width:100%;padding:12px 10px;margin-top:5px;font-size:14px}.change-order-modal-btn-new{width:100%;font-size:14px}.change-order-modal-detail-header h4{font-size:18px}.change-order-modal-detail-meta{font-size:11px}}.EstimateModal{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#0009;z-index:3000;display:flex;justify-content:center;align-items:center;font-family:Pretendard,sans-serif;box-sizing:border-box}.EstimateModal *{box-sizing:border-box}.EstimateModal .est-modal-content{background:#f5f6f8;width:1600px;max-width:98vw;height:95vh;border-radius:8px;display:flex;flex-direction:column;box-shadow:0 10px 30px #0000004d;overflow:hidden;position:relative}.EstimateModal .est-header{background:#fff;padding:12px 20px;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.EstimateModal .est-title{font-size:18px;font-weight:800;color:#333}.EstimateModal .est-controls{display:flex;gap:8px}.EstimateModal .est-btn{padding:6px 12px;border:1px solid #ccc;background:#fff;border-radius:5px;font-size:13px;font-weight:600;color:#333;cursor:pointer}.EstimateModal .est-btn:hover{background:#f0f0f0}.EstimateModal .est-btn.primary{background:#1976d2;color:#fff;border:none}.EstimateModal .est-btn.primary:hover{background:#1565c0}.EstimateModal .est-btn.close{background:#d32f2f;color:#fff;border:none}.EstimateModal .est-btn.small{padding:4px 8px;font-size:12px}.EstimateModal .est-btn-del{background:#ff5252;color:#fff;border:none;padding:2px 6px;border-radius:4px;cursor:pointer;font-size:11px}.EstimateModal .est-body{flex:1;display:flex;overflow:hidden;background-color:#555;padding:20px;gap:20px}.EstimateModal .est-page-nav{width:200px;background:#fff;border-radius:4px;display:flex;flex-direction:column;overflow-y:auto;flex-shrink:0}.EstimateModal .est-nav-item{padding:10px 15px;border-bottom:1px solid #eee;cursor:pointer;font-size:13px;color:#333}.EstimateModal .est-nav-item.active{background:#e3f2fd;color:#1976d2;font-weight:700;border-left:4px solid #1976d2}.EstimateModal .est-nav-item-add{padding:10px;text-align:center;color:#1976d2;cursor:pointer;font-weight:700;border-top:1px solid #eee}.EstimateModal .est-preview-area{flex:1;overflow:auto;display:flex;flex-direction:column;align-items:center;gap:30px}.EstimateModal .est-sheet{width:297mm;min-height:210mm;background:#fff;box-shadow:0 0 15px #0000004d;padding:15mm;box-sizing:border-box;position:relative}.EstimateModal .cover-sheet{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.EstimateModal .cover-logo-wrapper{margin-bottom:30px}.EstimateModal .cover-logo{max-width:400px;max-height:150px;object-fit:contain}.EstimateModal .cover-title-box{margin-bottom:50px;width:100%}.EstimateModal .cover-bottom{width:100%;display:flex;justify-content:center}.EstimateModal .cover-info-box{border:2px solid #333;padding:30px;width:60%;display:flex;flex-direction:column;gap:10px;text-align:left}.EstimateModal .info-row{display:flex;font-size:16px;align-items:center}.EstimateModal .info-row .label{width:100px;font-weight:700;text-align-last:justify;margin-right:15px}.EstimateModal .doc-title{text-align:center;margin-bottom:15px;text-decoration:underline}.EstimateModal .doc-table{width:100%;border-collapse:collapse;table-layout:fixed}.EstimateModal .doc-table th,.EstimateModal .doc-table td{border:1px solid #444;padding:5px;vertical-align:middle;overflow:hidden}.EstimateModal .doc-table th{background:#eee;text-align:center;font-weight:700;height:30px}.EstimateModal input{width:100%;border:1px solid transparent;background:transparent;font-family:inherit;font-size:inherit;font-weight:inherit;color:inherit;transition:.2s}.EstimateModal input:focus{outline:2px solid #1976d2;background:#1976d20d}.EstimateModal .right{text-align:right}.EstimateModal .center{text-align:center}.EstimateModal .est-style-toolbar{background:#f1f1f1;border-bottom:1px solid #ddd;padding:8px 20px;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.EstimateModal .style-group{display:flex;align-items:center;gap:5px;font-size:13px}.EstimateModal .style-group .current-target-label{font-weight:700;color:#1976d2;padding-right:10px;border-right:1px solid #ccc;margin-right:5px}.EstimateModal .est-config-panel{position:absolute;top:60px;right:30px;width:300px;background:#fff;border:1px solid #ccc;border-radius:8px;box-shadow:0 5px 20px #0000004d;z-index:100;padding:20px;display:flex;flex-direction:column;gap:10px}.EstimateModal .est-panel-title{font-weight:700;border-bottom:1px solid #333;padding-bottom:5px}.EstimateModal .est-field label{font-size:12px;font-weight:700;display:block}.EstimateModal .est-field input{width:100%;padding:5px;border:1px solid #ddd;border-radius:4px}.EstimateModal .est-list-item{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px dashed #eee;font-size:13px}@media print{@page{size:A4 landscape;margin:0}body{-webkit-print-color-adjust:exact;background:#fff}.EstimateModal .no-print,.EstimateModal .est-header,.EstimateModal .est-page-nav,.EstimateModal .est-config-panel,.EstimateModal .est-style-toolbar,.EstimateModal .est-nav-item-add{display:none!important}.EstimateModal{position:absolute;left:0;top:0;width:100%;height:auto;background:#fff;display:block;overflow:visible}.EstimateModal .est-modal-content{width:100%;max-width:none;height:auto;box-shadow:none;overflow:visible}.EstimateModal .est-body{padding:0;background:#fff;display:block}.EstimateModal .est-preview-area{display:block;overflow:visible;padding:0}.EstimateModal .est-sheet{width:100%;height:100%;margin:0;box-shadow:none;page-break-after:always;padding:10mm}.EstimateModal .doc-table th,.EstimateModal .doc-table td{border:1px solid #000!important}}.site-info-widget{background-color:#fff;padding:15px;height:100%;box-sizing:border-box;overflow-y:auto}.widget-title-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;border-bottom:1px solid #eee;padding-bottom:8px}.widget-title-header h3{margin:0;font-size:16px;color:#333}.site-status-selector{display:flex;align-items:center;gap:5px}.status-label{font-size:12px;font-weight:700;color:#555}.status-dropdown{padding:2px 6px;border:1px solid #ddd;border-radius:4px;font-size:12px}.info-form-grid{display:flex;flex-direction:column;gap:8px}.info-row{display:flex;gap:10px}.info-row-4{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:10px}.form-group{flex:1;display:flex;flex-direction:column;gap:2px}.form-group.full-width{width:100%}.form-label{font-size:11px;font-weight:700;color:#666;white-space:nowrap}.required{color:red;margin-left:2px}.form-input,.form-select{padding:0 8px;border:1px solid #ddd;border-radius:4px;font-size:12px;height:30px;box-sizing:border-box}.form-input:focus{border-color:#333;outline:none}.address-inputs-row{display:flex;gap:8px}.addr-select{width:100px;flex-shrink:0}.addr-detail{flex:1}.contractor-info-box{background:#f8f9fa;padding:8px;border-radius:4px;font-size:11px;color:#555;margin-bottom:5px;border:1px solid #eee}.contractor-info-box p{margin:0}.info-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:5px;border-top:1px solid #eee;padding-top:10px}.btn-save-changes,.btn-invite-contractor{padding:6px 12px;border:none;border-radius:4px;font-weight:700;cursor:pointer;font-size:12px;color:#fff;transition:opacity .2s}.btn-save-changes:hover{opacity:.9}.btn-save-changes:disabled{background-color:#ccc!important;cursor:not-allowed}.btn-invite-contractor{background-color:#6c757d}.btn-invite-contractor:hover{background-color:#5a6268}.btn-invite-contractor:disabled{background-color:#e9ecef;color:#aaa;cursor:default}.contractors-list-section{margin-bottom:10px;display:flex;flex-direction:column;gap:5px}.contractor-info-box{background:#f8f9fa;padding:10px;border-radius:4px;font-size:12px;color:#555;border:1px solid #eee;display:flex;justify-content:space-between;align-items:center}.contractor-details{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.c-name{font-weight:700;color:#333}.c-phone{color:#666}.c-email{color:#888}.btn-remove-contractor{padding:4px 8px;background-color:#fff;border:1px solid #e74c3c;color:#e74c3c;border-radius:4px;cursor:pointer;font-size:11px;font-weight:700;transition:all .2s}.btn-remove-contractor:hover{background-color:#e74c3c;color:#fff}.invite-modal-backdrop{position:fixed;inset:0;background-color:#0009;z-index:3000;display:flex;justify-content:center;align-items:center}.invite-modal-content{background:#fff;padding:30px;border-radius:10px;width:420px;max-width:95%;box-shadow:0 10px 25px #0003;text-align:center;display:flex;flex-direction:column}.invite-modal-title{margin:0 0 20px;font-size:20px;color:#333;border-bottom:2px solid #333;padding-bottom:10px}.invite-desc{font-size:14px;color:#555;line-height:1.6;margin-bottom:25px}.btn-generate-link{background-color:#6f42c1;color:#fff;font-size:15px;font-weight:700;padding:12px 24px;border:none;border-radius:5px;cursor:pointer;width:100%}.link-display-box{display:flex;gap:8px;margin-bottom:15px}.link-display-box input{flex:1;padding:10px;border:1px solid #ddd;border-radius:5px;background:#f9f9f9;font-size:13px;color:#333}.btn-copy{padding:0 15px;background:#333;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:700;font-size:13px}.btn-regenerate{background-color:#fff;border:1px solid #ddd;color:#555;padding:8px 15px;border-radius:5px;cursor:pointer;font-size:13px;width:100%}.btn-regenerate.disabled{background-color:#f5f5f5;color:#aaa;cursor:not-allowed}.invite-divider{border:0;border-top:1px solid #eee;margin:20px 0}.sms-send-box{text-align:left}.sms-send-box label{display:block;font-size:13px;font-weight:700;margin-bottom:8px;color:#333}.sms-input-group{display:flex;gap:8px}.sms-input-group input{flex:1;padding:10px;border:1px solid #ccc;border-radius:5px;font-size:14px}.input-readonly{cursor:not-allowed;opacity:.8}.btn-send-sms{background-color:#007bff;color:#fff;border:none;border-radius:5px;padding:0 20px;font-weight:700;cursor:pointer;font-size:14px;min-width:100px}.btn-send-sms.disabled{background-color:#ccc;cursor:not-allowed}.btn-close-modal{margin-top:25px;background:none;border:none;color:#999;text-decoration:underline;cursor:pointer;font-size:14px}.react-calendar{width:350px;max-width:100%;background:#fff;border:1px solid #a0a096;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{display:flex;margin:-.5em}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar *:before,.react-calendar *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.react-calendar button{margin:0;border:0;outline:none}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{display:flex;height:44px;margin-bottom:1em}.react-calendar__navigation button{min-width:44px;background:none}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{display:flex;align-items:center;justify-content:center;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{max-width:100%;padding:10px 6.6667px;background:none;text-align:center;font:inherit;font-size:.833em}.react-calendar__tile:disabled{background-color:#f0f0f0;color:#ababab}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{background:#006edc;color:#fff}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}:root{--dc-bg: #ffffff;--dc-border: #e0e0e0;--dc-text: #333;--dc-sub: #666;--dc-accent: #007bff;--dc-hover: #f8f9fa}.dashboard-calendar-widget{display:flex;flex-direction:column;height:100%;background-color:var(--dc-bg);overflow:hidden}.dc-loading{padding:40px;text-align:center;color:var(--dc-sub)}.widget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid var(--dc-border)}.header-title-area{display:flex;align-items:center;gap:20px}.widget-title{margin:0;font-size:18px;font-weight:700;color:var(--dc-text)}.filter-chips{display:flex;gap:8px}.filter-chip{padding:6px 12px;border:1px solid var(--dc-border);background:#fff;border-radius:20px;font-size:12px;cursor:pointer;color:var(--dc-sub);transition:all .2s}.filter-chip:hover{background-color:var(--dc-hover)}.filter-chip.active{background-color:#333;color:#fff;border-color:#333}.header-actions{display:flex;align-items:center;gap:15px}.btn-text-save{background:none;border:none;color:var(--dc-sub);font-size:13px;cursor:pointer;text-decoration:underline}.btn-add-schedule{background:var(--dc-accent);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer}.btn-add-schedule:hover{opacity:.9}.calendar-wrapper{margin-bottom:20px}.react-calendar{border:none!important;width:100%!important;font-family:inherit}.react-calendar__navigation button{font-size:16px;font-weight:700}.react-calendar__month-view__weekdays{font-size:13px;color:var(--dc-sub);text-transform:uppercase}.react-calendar__tile{height:100px;padding:5px!important;text-align:left;font-size:13px;border:1px solid #f5f5f5;vertical-align:top;position:relative}.react-calendar__tile--now{background:#fffde7!important}.react-calendar__tile--active{background:#e3f2fd!important;color:inherit!important}.calendar-tile-content{display:flex;flex-direction:column;gap:3px;margin-top:20px}.calendar-dot{font-size:11px;padding:2px 4px;border-radius:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.calendar-dot.meeting{background:#e3f2fd;color:#1565c0}.calendar-dot.construction{background:#e8f5e9;color:#2e7d32}.calendar-dot.personal{background:#fff3e0;color:#ef6c00}.calendar-more{font-size:10px;color:#999;text-align:right}.schedule-list-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.view-tabs{display:flex;gap:5px;background:#f0f0f0;padding:3px;border-radius:6px}.view-tab{background:transparent;border:none;padding:6px 12px;font-size:13px;color:#666;border-radius:4px;cursor:pointer}.view-tab.active{background:#fff;color:#333;font-weight:600;box-shadow:0 1px 3px #0000001a}.list-date-label{font-size:14px;font-weight:600;color:var(--dc-text)}.list-content{flex:1;overflow-y:auto}.no-data-message{text-align:center;padding:40px;color:#999;font-size:14px}.schedule-ul{list-style:none;padding:0;margin:0}.schedule-li{display:flex;padding:15px 10px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background .2s}.schedule-li:hover{background:#f9f9f9}.li-time-col{width:120px;flex-shrink:0;display:flex;flex-direction:column;gap:4px}.li-date{font-size:12px;color:#888}.li-time{font-size:15px;font-weight:600;color:var(--dc-text)}.li-info-col{flex:1;min-width:0}.li-tags{display:flex;gap:6px;margin-bottom:6px}.badge-type{font-size:11px;padding:2px 6px;border-radius:4px;font-weight:600}.badge-type.meeting{background:#e3f2fd;color:#1565c0}.badge-type.construction{background:#e8f5e9;color:#2e7d32}.badge-type.personal{background:#fff3e0;color:#ef6c00}.badge-site{font-size:11px;background:#f0f0f0;color:#666;padding:2px 6px;border-radius:4px}.li-title{font-size:14px;color:#333;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-modal-overlay{position:fixed;inset:0;background:#00000080;z-index:2000;display:flex;justify-content:center;align-items:center}.cal-modal-box{background:#fff;width:400px;padding:30px;border-radius:12px;box-shadow:0 10px 30px #00000026}.cal-modal-box h3{margin:0 0 20px;font-size:20px;text-align:center}.cal-form-group{margin-bottom:15px}.cal-form-group label{display:block;font-size:13px;margin-bottom:5px;color:#555}.cal-form-group input{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;box-sizing:border-box}.cal-form-check{margin-bottom:20px;font-size:14px}.cal-form-actions{display:flex;justify-content:flex-end;gap:10px}.btn-text{background:none;border:none;color:#666;cursor:pointer;padding:8px 16px}.btn-submit{background:var(--dc-accent);color:#fff;border:none;padding:8px 20px;border-radius:6px;cursor:pointer}.permission-management-container{padding:10px}.permission-management-container .admin-dropdown{width:100%;max-width:400px;height:40px;padding:0 10px;font-size:14px;border:1px solid #ccc;border-radius:5px;margin-left:10px}.permissions-checklist{margin-top:20px;border:1px solid #eee;padding:20px;border-radius:5px;background-color:#fcfcfc}.permissions-checklist h3{margin-top:0}.permission-group{margin-bottom:15px}.permission-item{display:flex;align-items:center;margin-bottom:8px;font-size:14px;cursor:pointer}.permission-item input[type=checkbox]{width:16px;height:16px;margin-right:8px;cursor:pointer}.permission-item.parent{font-weight:700;font-size:15px}.permission-sub-items{padding-left:24px;margin-top:10px}.permission-invite-box{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:5px;margin-bottom:30px;padding:10px 20px}.permission-invite-box h4{margin-top:10px;margin-bottom:10px}.permission-invite-box p{font-size:14px;color:#555;margin-bottom:15px}.admin-save-button{background-color:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:14px;font-weight:700;margin-top:20px}.admin-save-button:disabled{background-color:#ccc}.permission-invite-box .admin-save-button{margin-top:0}.invite-link-wrapper{display:flex;margin-top:15px;gap:10px}.invite-link-input{flex-grow:1;padding:8px 10px;border:1px solid #ccc;border-radius:5px;background-color:#fff;font-size:14px}.invite-link-copy{flex-shrink:0;padding:8px 15px;background-color:#6c757d;color:#fff;border:none;border-radius:5px;cursor:pointer}.invite-info-box{border:1px solid #eee;padding:20px;border-radius:5px}.invite-info-box h4{margin-top:0}.invite-info-box ol{font-size:14px;line-height:1.8;padding-left:20px}.employee-table{width:100%;border-collapse:collapse;font-size:14px;border:1px solid #ddd;border-radius:5px}.employee-table th,.employee-table td{border-bottom:1px solid #eee;padding:12px;text-align:left;vertical-align:middle;white-space:nowrap}.employee-table th{background-color:#f7f7f7;font-weight:700}.employee-table tr:hover{background-color:#f9f9f9}.delete-button{background-color:#dc3545;color:#fff;border:none;padding:6px 12px;border-radius:5px;cursor:pointer;font-size:13px;font-weight:700}.delete-button:hover{background-color:#c82333}.delete-button:disabled{background-color:#ccc}.activity-log-list-container{display:flex;flex-direction:column;max-width:100%}.activity-log-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px}.activity-log-header-row h2{margin:0;font-size:24px;color:#333}.activity-log-search-bar{margin-bottom:15px;width:100%;max-width:400px;height:40px;padding:0 12px;font-size:16px;border:1px solid #ccc;border-radius:5px;box-sizing:border-box}.activity-log-table-wrapper{overflow-x:auto;border-top:1px solid #ddd}.activity-log-table{width:100%;border-collapse:collapse;font-size:14px}.activity-log-table th,.activity-log-table td{border-bottom:1px solid #ddd;padding:12px 10px;text-align:left;white-space:nowrap}.activity-log-table th{background-color:#f8f9fa;font-weight:700;color:#333;text-align:center;border-bottom:1px solid #ccc}.activity-log-table tr:hover{background-color:#f1f1f1}.log-type-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:700;text-align:center;min-width:60px}.log-type-badge.worklog{background-color:#e3f2fd;color:#1976d2}.log-type-badge.default{background-color:#f5f5f5;color:#333}.log-content-cell{max-width:500px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root{--w-bg: #ffffff;--w-border: #e0e0e0;--w-text-main: #333;--w-text-sub: #888;--w-accent: #007bff;--w-hover: #f8f9fa}.widget-container{height:100%;display:flex;flex-direction:column;background-color:var(--w-bg)}.widget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid var(--w-border)}.widget-title{margin:0;font-size:16px;font-weight:700;color:var(--w-text-main)}.btn-filter{background:transparent;border:1px solid #ddd;border-radius:4px;padding:4px 8px;font-size:12px;color:var(--w-text-sub);cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .2s}.btn-filter:hover{background-color:var(--w-hover);color:var(--w-text-main);border-color:#ccc}.widget-body{flex:1;overflow-y:auto;padding-right:5px}.loading-state,.empty-state{height:150px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:var(--w-text-sub);font-size:14px;text-align:center}.empty-state span{font-size:12px;margin-top:5px;opacity:.7}.site-list{display:flex;flex-direction:column;gap:8px}.site-item{padding:12px;border:1px solid #f0f0f0;border-radius:6px;cursor:pointer;transition:all .2s;background-color:#fff}.site-item:hover{border-color:var(--w-accent);box-shadow:0 2px 8px #0000000d;transform:translateY(-2px)}.site-info-main{display:flex;align-items:center;gap:8px;margin-bottom:6px}.site-name{font-size:15px;font-weight:600;color:var(--w-text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-info-sub{display:flex;justify-content:space-between;font-size:13px;color:var(--w-text-sub)}.status-badge{font-size:11px;padding:3px 8px;border-radius:4px;font-weight:700;white-space:nowrap;border:1px solid transparent}.status-active{background-color:#e3f2fd;color:#1565c0;border-color:#bbdefb}.status-done{background-color:#e8f5e9;color:#2e7d32;border-color:#c8e6c9}.status-gray{background-color:#f5f5f5;color:#616161;border-color:#e0e0e0}.status-default{background-color:#fff3e0;color:#ef6c00;border-color:#ffe0b2}.filter-modal-overlay{position:fixed;inset:0;background:#0006;z-index:2000;display:flex;justify-content:center;align-items:center;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.filter-modal{background:#fff;width:300px;border-radius:8px;box-shadow:0 10px 30px #0003;overflow:hidden;animation:slideUp .2s ease}@keyframes slideUp{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{padding:15px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center}.modal-header h4{margin:0;font-size:16px}.btn-close{background:none;border:none;font-size:20px;cursor:pointer;color:#999}.modal-body{padding:0;max-height:300px;overflow-y:auto}.filter-list{list-style:none;padding:0;margin:0}.filter-item{border-bottom:1px solid #f9f9f9}.filter-item:last-child{border-bottom:none}.checkbox-label{display:flex;align-items:center;width:100%;padding:12px 15px;cursor:pointer;transition:background .2s}.checkbox-label:hover{background-color:#f5f5f5}.checkbox-label input{margin-right:10px;transform:scale(1.2)}.checkbox-text{font-size:14px;color:#333}.modal-footer{padding:15px;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:8px;background-color:#fcfcfc}.btn-cancel{padding:8px 12px;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer}.btn-save{padding:8px 12px;border:none;background:var(--w-accent);color:#fff;border-radius:4px;cursor:pointer}.btn-save:hover{background-color:#0056b3}.hometax-page-container{padding:20px;max-width:1200px;margin:0 auto}.hometax-header{margin-bottom:30px;border-bottom:2px solid #333;padding-bottom:15px}.hometax-header h2{margin:0 0 10px}.hometax-header p{margin:0;color:#666}.hometax-top-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:30px}.hometax-card{background:#fff;border:1px solid #eee;border-radius:10px;padding:25px;box-shadow:0 2px 8px #0000000d;display:flex;flex-direction:column}.card-title{font-size:18px;font-weight:700;margin-bottom:20px;display:flex;align-items:center;gap:8px}.cert-status-box{background:#f9f9f9;padding:15px;border-radius:5px;text-align:center;margin-bottom:15px;font-weight:700;color:#555}.status-badge{display:inline-block;margin-left:10px;padding:4px 10px;border-radius:15px;font-size:13px;color:#fff}.status-badge.registered{background-color:#28a745}.status-badge.unregistered{background-color:#dc3545}.cert-desc{font-size:13px;color:#888;margin-bottom:20px;line-height:1.5;text-align:center}.btn-manage-cert{margin-top:auto;padding:12px;border:1px solid #ddd;background:#fff;border-radius:5px;cursor:pointer;font-weight:700;color:#555}.btn-manage-cert:hover{background:#f5f5f5}.date-range-picker{display:flex;align-items:flex-end;gap:10px;margin-bottom:20px}.date-input-group{flex:1}.date-input-group label{display:block;font-size:13px;color:#666;margin-bottom:5px}.date-input-group input{width:100%;padding:10px;border:1px solid #ccc;border-radius:5px;box-sizing:border-box}.tilde{padding-bottom:10px;font-weight:700}.btn-start-scrape{width:100%;padding:12px;border:none;border-radius:5px;font-weight:700;font-size:16px;color:#333;cursor:pointer;margin-top:auto}.btn-start-scrape:hover{opacity:.9}.btn-start-scrape:disabled{background-color:#ccc!important;cursor:not-allowed}.warning-text{color:#dc3545;font-size:12px;margin-top:10px;text-align:center}.scraping-progress-bar{background:#fff3e0;border:1px solid #ffe0b2;padding:20px;text-align:center;border-radius:8px;margin-bottom:30px}.spinner{display:inline-block;width:30px;height:30px;border:4px solid #ddd;border-top:4px solid #f57c00;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:10px}.step-text{font-weight:700;color:#f57c00;font-size:18px;margin:0 0 5px}.sub-text{font-size:13px;color:#888;margin:0}.hometax-result-section h3{margin-bottom:15px;font-size:18px}.result-table-wrapper{overflow-x:auto;border-top:1px solid #333}.hometax-table{width:100%;border-collapse:collapse;font-size:14px}.hometax-table th{background:#f8f9fa;padding:12px;border-bottom:1px solid #ddd;font-weight:700;color:#333}.hometax-table td{padding:12px;border-bottom:1px solid #eee;color:#555}.no-data{padding:50px;text-align:center;color:#999}.type-badge.sales{background:#e3f2fd;color:#1976d2}.type-badge.purchase{background:#ffebee;color:#c62828}.cert-modal-backdrop{position:fixed;inset:0;background:#0009;z-index:3000;display:flex;justify-content:center;align-items:center}.cert-modal-content{background:#fff;padding:30px;border-radius:10px;width:400px;box-shadow:0 10px 30px #0003}.cert-modal-content h3{margin-top:0;text-align:center}.cert-notice{background:#f1f3f5;padding:10px;font-size:13px;color:#555;border-radius:5px;margin-bottom:20px;line-height:1.5}.cert-form-group{margin-bottom:15px}.cert-form-group label{display:block;font-weight:700;font-size:13px;margin-bottom:5px}.cert-form-group input{width:100%;padding:8px;border:1px solid #ccc;border-radius:4px;box-sizing:border-box}.cert-modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.cert-modal-footer button{padding:10px 20px;border-radius:5px;font-weight:700;cursor:pointer;border:none}.cert-modal-footer .btn-cancel{background:#eee;color:#555}.cert-modal-footer .btn-save{background:#333;color:#fff}@keyframes blink{0%{opacity:1}50%{opacity:.4}to{opacity:1}}.keypad-container{position:relative;display:inline-block;border:4px solid #333;border-radius:4px;overflow:hidden;margin:0 auto;box-shadow:0 4px 12px #00000026;background-color:#eee}.keypad-image{max-width:100%;max-height:60vh;cursor:crosshair;display:block;-webkit-user-select:none;user-select:none}.click-marker{position:absolute;width:12px;height:12px;background-color:red;border-radius:50%;box-shadow:0 0 4px #fff,0 0 8px #ff000080;pointer-events:none;z-index:10;transform:translate(-50%,-50%);animation:popIn .2s cubic-bezier(.175,.885,.32,1.275)}@keyframes popIn{0%{transform:translate(-50%,-50%) scale(0)}to{transform:translate(-50%,-50%) scale(1)}}.click-marker-num{position:absolute;top:-20px;left:50%;transform:translate(-50%);color:red;font-weight:800;font-size:14px;text-shadow:-1px -1px 0 #fff,1px -1px 0 #fff,-1px 1px 0 #fff,1px 1px 0 #fff;white-space:nowrap}.keypad-status{margin:15px 0;font-size:16px;background:#f8f9fa;padding:10px;border-radius:5px;border:1px solid #eee}@media(max-width:768px){.cert-modal-content{width:95%!important;padding:20px!important}.keypad-image{max-height:50vh}}:root{--ati-bg: #f5f7fa;--ati-white: #ffffff;--ati-text: #333333;--ati-gray: #666666;--ati-border: #e0e0e0;--ati-blue: #1976d2;--ati-red: #d32f2f;--ati-ease: cubic-bezier(.25, .46, .45, .94)}.ati-container{padding:30px;background-color:var(--ati-bg);min-height:100%;font-family:Pretendard,sans-serif}.ati-header{margin-bottom:30px}.ati-title-area h2{margin:0 0 5px;font-size:24px;font-weight:800}.ati-title-area p{margin:0;color:var(--ati-gray);font-size:14px}.ati-filter-bar{display:flex;flex-wrap:wrap;gap:15px;align-items:center;background:var(--ati-white);padding:15px;border-radius:12px;box-shadow:0 2px 8px #00000008;margin-top:20px}.filter-group{display:flex;align-items:center;gap:10px}.mode-select{display:flex;background:#f0f0f0;padding:3px;border-radius:6px}.mode-btn{border:none;background:transparent;padding:6px 12px;font-size:13px;cursor:pointer;color:var(--ati-gray);border-radius:4px}.mode-btn.active{background:#fff;color:#000;font-weight:700;box-shadow:0 1px 3px #0000001a}.date-inputs input,.date-inputs select{padding:8px;border:1px solid var(--ati-border);border-radius:4px;font-size:14px}.filter-select,.search-input{padding:8px 10px;border:1px solid var(--ati-border);border-radius:6px;height:38px;box-sizing:border-box}.btn-site-select{padding:0 15px;height:38px;background:#fff;border:1px solid var(--ati-border);border-radius:6px;cursor:pointer;font-size:14px}.btn-manual,.btn-search{padding:0 20px;height:38px;border:none;border-radius:6px;font-weight:700;cursor:pointer;font-size:14px}.btn-manual{background:#333;color:#fff;margin-right:auto}.btn-search{background:var(--ati-blue);color:#fff}.btn-search:hover{background:#1565c0}.ati-summary{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:30px}.summary-card{background:var(--ati-white);border-radius:12px;padding:25px;display:flex;align-items:center;gap:20px;box-shadow:0 4px 12px #00000008;border:1px solid transparent}.summary-card.sales{border-left:5px solid var(--ati-blue)}.summary-card.purchase{border-left:5px solid var(--ati-red)}.card-icon{font-size:24px}.card-content{flex:1}.card-label{display:block;font-size:13px;color:var(--ati-gray);margin-bottom:8px}.card-values{display:flex;gap:15px;font-size:13px;color:#555;margin-bottom:5px}.card-total{display:block;font-size:24px;font-weight:800;color:var(--ati-text)}.ati-list-wrapper{background:var(--ati-white);border-radius:12px;box-shadow:0 2px 10px #00000008;padding:20px;min-height:500px}.ati-table-container{overflow-x:auto;scrollbar-width:none}.ati-table-container::-webkit-scrollbar{display:none}.ati-table{width:100%;border-collapse:collapse;min-width:1100px}.ati-table th{text-align:left;padding:15px 10px;border-bottom:2px solid #eee;font-size:13px;color:var(--ati-gray);background:#f9f9f9;white-space:nowrap}.ati-table td{padding:15px 10px;border-bottom:1px solid #f0f0f0;font-size:14px;color:var(--ati-text);vertical-align:top}.row-unassigned{background-color:#fff5f5!important}.row-assigned{background-color:#f0f9ff!important}.td-date{width:110px}.date-wrap{display:flex;align-items:center;gap:5px;font-size:13px}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.status-dot.paid{background:#4caf50}.status-dot.unpaid{background:#e0e0e0}.badge-type{font-size:11px;padding:2px 6px;border-radius:4px;font-weight:600;margin-right:5px}.badge-type.sales{background:#e3f2fd;color:var(--ati-blue)}.badge-type.purchase{background:#ffebee;color:var(--ati-red)}.sub-type{font-size:12px;color:#888}.td-vendor{font-weight:600;cursor:pointer;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-vendor:hover{text-decoration:underline;color:var(--ati-blue)}.td-right{text-align:right}.td-center{text-align:center}.text-gray{color:#999}.btn-link{padding:5px 10px;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer;font-size:12px;color:#333;font-weight:600}.btn-link.linked{background:#e8f5e9;color:#2e7d32;border-color:#c8e6c9}.ati-select,.ati-input{width:100%;padding:6px;border:1px solid #e0e0e0;border-radius:4px;font-size:13px;background:transparent}.ati-select:focus,.ati-input:focus{border-color:#333;outline:none;background:#fff}.ati-fade-up{opacity:0;transform:translateY(20px);transition:opacity .5s var(--ati-ease),transform .5s var(--ati-ease)}.ati-fade-up.ati-active{opacity:1;transform:translateY(0)}.ati-more-btn-wrap{text-align:center;margin-top:20px}.btn-more{padding:10px 40px;border:1px solid #ddd;background:#fff;border-radius:20px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-more:hover{background:#f5f5f5}.invoice-modal-backdrop{position:fixed;inset:0;background:#00000080;z-index:2000;display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.invoice-paper{background:#fff;padding:30px;border-radius:0;box-shadow:0 10px 30px #0003;max-width:900px;width:100%;max-height:90vh;overflow-y:auto}.manual-select-modal{width:400px;text-align:center;border-radius:12px}.manual-btns{display:flex;gap:15px;margin-top:20px}.manual-btn{flex:1;padding:20px;border-radius:8px;font-weight:700;cursor:pointer;border:1px solid transparent}.manual-btn.sales{background:#e3f2fd;color:var(--ati-blue);border-color:var(--ati-blue)}.manual-btn.purchase{background:#ffebee;color:var(--ati-red);border-color:var(--ati-red)}.site-item{padding:10px;border-bottom:1px solid #eee;cursor:pointer}.site-item:hover{background:#f0f8ff}.selected-row{background-color:#e3f2fd}.invoice-paper.red-theme{border:2px solid #e74c3c}.invoice-paper.red-theme .invoice-title{color:#e74c3c}.invoice-paper.red-theme .invoice-table th,.invoice-paper.red-theme .vertical-text{background-color:#ffebee;color:#e74c3c;border-color:#e74c3c}.invoice-paper.red-theme .invoice-table td{border-color:#e74c3c}.invoice-paper.blue-theme{border:2px solid #1976d2}.invoice-paper.blue-theme .invoice-title{color:#1976d2}.invoice-paper.blue-theme .invoice-table th,.invoice-paper.blue-theme .vertical-text{background-color:#e3f2fd;color:#1976d2;border-color:#1976d2}.invoice-paper.blue-theme .invoice-table td{border-color:#1976d2}.invoice-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;border-bottom:1px solid #ccc;padding-bottom:10px}.invoice-title{font-size:24px;font-weight:900;margin:0}.invoice-approval{font-size:12px;text-align:right}.invoice-body-content{padding:10px 0}.invoice-parties{display:flex;gap:0;margin-bottom:10px;border-bottom:1px solid #ccc}.party-table{width:50%;border-collapse:collapse}.party-table td{border:1px solid #ccc;padding:5px;font-size:12px}.vertical-text{width:25px;text-align:center;vertical-align:middle;font-weight:700}.label{text-align:center;background-color:#f9f9f9;width:70px}.value{padding-left:5px}.highlight{font-weight:700;letter-spacing:1px}.summary-table{width:100%;border-collapse:collapse;margin-bottom:10px}.summary-table th,.summary-table td{border:1px solid #ccc;padding:8px;font-size:13px}.summary-table th{text-align:center;font-weight:700}.center{text-align:center}.right{text-align:right}.items-wrapper{min-height:200px;border:1px solid #ccc;margin-bottom:10px}.items-table{width:100%;border-collapse:collapse}.items-table th{background-color:#f5f5f5;border-bottom:1px solid #ccc;padding:5px;font-size:12px}.items-table td{padding:5px;font-size:12px;border-bottom:1px solid #eee}.invoice-bottom{display:flex;justify-content:space-between;align-items:flex-start;margin-top:10px}.total-box{flex:1;padding:10px;background:#f9f9f9;border:1px solid #ddd;display:flex;justify-content:space-between;margin-right:10px}.user-memo-box{flex:1;display:flex;flex-direction:column}.user-memo-box label{font-size:12px;font-weight:700;margin-bottom:5px}.memo-area{width:100%;height:60px;padding:5px;border:1px solid #ccc;font-size:13px}.modal-close-btn{text-align:center;margin-top:20px}.modal-close-btn button{padding:8px 30px;background:#333;color:#fff;border:none;cursor:pointer}@media(max-width:768px){.ati-container{padding:15px}.ati-filter-bar{flex-direction:column;align-items:stretch}.filter-group{flex-wrap:wrap}.action-group{justify-content:space-between}.ati-summary{grid-template-columns:1fr;gap:10px}.summary-card{padding:20px}.ati-table,.ati-table thead,.ati-table tbody,.ati-table tr,.ati-table td{display:block;width:100%;box-sizing:border-box}.ati-table thead{display:none}.ati-table tr{background:#fff;border:1px solid #eee;border-radius:10px;margin-bottom:15px;padding:15px;box-shadow:0 2px 5px #00000005}.ati-table td{padding:8px 0;border:none;display:flex;justify-content:space-between;align-items:center;text-align:right}.ati-table td:before{content:attr(data-label);font-weight:600;color:#999;font-size:12px}.td-vendor{font-size:16px;color:#333;border-bottom:1px solid #eee!important;padding-bottom:10px!important;margin-bottom:5px;display:block!important;text-align:left!important}.td-vendor:before{display:none}.td-cat1,.td-cat2,.td-memo{flex-direction:column;align-items:flex-start;gap:5px}.ati-select,.ati-input{width:100%}.invoice-paper{width:100%;padding:10px;max-height:100vh;border-radius:0}.invoice-parties{flex-direction:column}.party-table{width:100%;margin-bottom:10px}.items-wrapper{overflow-x:auto}.items-table{min-width:500px}.invoice-bottom{flex-direction:column;gap:10px}}.manual-sales-page-container{padding:20px;max-width:1200px;margin:0 auto}.placeholder-text .sub-text{font-size:12px;font-weight:400}.expense-setting-container{display:flex;gap:20px;align-items:stretch;height:600px;margin-top:20px}.expense-column{flex:1;background:#fff;border:1px solid #ddd;border-radius:8px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 2px 5px #0000000d}.column-header{background:#f8f9fa;padding:15px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center}.column-header h3{margin:0;font-size:16px;color:#333}.btn-add-mini{padding:5px 12px;background:#333;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px}.btn-add-mini:hover{background:#555}.btn-add-mini:disabled{cursor:not-allowed;background:#ccc}.column-body{flex:1;overflow-y:auto;padding:10px;background:#fff}.category-item{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;border-bottom:1px solid #f1f1f1;cursor:pointer;border-radius:4px;transition:background .2s}.category-item:hover{background-color:#f9f9f9}.category-item.active{background-color:#e3f2fd;border-color:#bbdefb;font-weight:700;color:#1976d2}.cat-name{font-size:14px}.item-actions{display:flex;gap:5px;opacity:0;transition:opacity .2s}.category-item:hover .item-actions{opacity:1}.item-actions button{padding:2px 6px;font-size:12px;border:1px solid #ddd;background:#fff;border-radius:3px;cursor:pointer;color:#666}.item-actions button:hover{background:#eee}.item-actions button.del:hover{background:#ffebee;color:#c62828;border-color:#ffcdd2}.arrow-divider{display:flex;align-items:center;color:#ccc;font-size:20px}.empty-state{text-align:center;color:#999;margin-top:50px;font-size:13px}.selected-label{padding:10px;background:#f0f8ff;border-radius:4px;margin-bottom:10px;font-size:13px;color:#555}.small-modal{width:400px;padding:25px}.modal-input{width:100%;padding:10px;border:1px solid #ccc;border-radius:4px;font-size:14px;box-sizing:border-box}.modal-btn-group{display:flex;justify-content:flex-end;gap:10px}.btn-cancel{padding:8px 20px;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer}.btn-save{padding:8px 20px;border:none;color:#fff;border-radius:5px;cursor:pointer;font-weight:700}.category-tab-container{display:flex;gap:10px;margin-top:15px;background:#f1f3f5;padding:5px;border-radius:8px;width:fit-content}.tab-radio{display:flex;align-items:center;padding:8px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;color:#666;transition:all .2s}.tab-radio:hover{background-color:#0000000d}.tab-radio.active{background-color:#fff;color:#333;font-weight:700;box-shadow:0 2px 5px #0000001a}.tab-radio input{display:none}.btn-reset-defaults{padding:8px 15px;background-color:#fff;border:1px solid #ddd;border-radius:5px;color:#555;font-size:13px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:5px}.btn-reset-defaults:hover{background-color:#f8f9fa;border-color:#ccc;color:#333}.divider-vertical{width:1px;height:12px;background-color:#ddd;margin:0 2px}.item-actions button{padding:2px 5px;min-width:20px}.manual-purchase-page-container{padding:20px;max-width:1200px;margin:0 auto}.page-header{border-bottom:2px solid #333;padding-bottom:15px;margin-bottom:30px}.content-grid{display:flex;gap:30px;align-items:flex-start}.image-section{flex:0 0 350px;display:flex;flex-direction:column;gap:10px}.image-preview-box{width:100%;height:450px;background-color:#f8f9fa;border:2px dashed #ccc;border-radius:8px;cursor:pointer;background-size:contain;background-repeat:no-repeat;background-position:center;display:flex;justify-content:center;align-items:center;transition:all .2s}.image-preview-box:hover{border-color:#999;background-color:#f1f1f1}.placeholder-text{text-align:center;color:#999}.placeholder-text span{font-size:40px;display:block;margin-bottom:10px}.placeholder-text p{margin:0;font-size:14px;font-weight:700}.btn-remove-img{padding:8px;background:#ff5252;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:700}.form-section{flex:1;background:#fff}.form-row{margin-bottom:20px}.form-row label{display:block;font-weight:700;margin-bottom:5px;color:#333}.form-row input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.tax-bill-box{border:1px solid #ddd;border-radius:8px;overflow:hidden;margin-bottom:20px;display:flex;flex-direction:column}@media(min-width:768px){.tax-bill-box{flex-direction:row}}.bill-part{flex:1}.bill-part.vendor{border-right:1px solid #ddd}.part-header{padding:10px;text-align:center;font-weight:700;color:#fff;font-size:14px}.part-header.red{background-color:#e57373}.part-header.blue{background-color:#64b5f6}.part-body{padding:15px;display:flex;flex-wrap:wrap;gap:10px}.input-group{flex:1 1 45%}.input-group.full{flex:1 1 100%}.input-group label{font-size:12px;color:#666;margin-bottom:4px;display:block}.input-group input{width:100%;padding:8px;border:1px solid #eee;border-radius:4px;font-size:13px;box-sizing:border-box}.input-group input:focus{border-color:#333;outline:none}.amount-section{background:#f9f9f9;padding:20px;border-radius:8px;margin-bottom:20px;display:flex;gap:20px;align-items:flex-end}.amount-row{flex:1}.amount-row label{font-size:13px;font-weight:700;color:#555;display:block;margin-bottom:5px}.amount-row input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;text-align:right;font-weight:700}.amount-row.total .total-display{font-size:20px;font-weight:900;color:#1976d2;text-align:right;padding:8px 0}.action-buttons{display:flex;justify-content:flex-end;gap:10px;margin-top:30px}.btn-save-manual{padding:12px 40px;border:none;color:#fff;font-weight:700;border-radius:5px;cursor:pointer;font-size:16px}.btn-save-manual:disabled{background-color:#ccc!important;cursor:not-allowed}.manual-list-section{margin-top:50px;border-top:2px solid #333;padding-top:20px}.manual-list-section h3{font-size:18px;color:#333;margin-bottom:15px}.hometax-table{width:100%;border-collapse:collapse;font-size:13px}.hometax-table th{background:#f5f5f5;padding:10px;border:1px solid #ddd;font-weight:700;text-align:center}.hometax-table td{padding:10px;border:1px solid #ddd;vertical-align:middle}.hometax-table tr:hover{background-color:#f9f9f9}.btn-edit-mini{padding:5px 10px;background:#fff;border:1px solid #ccc;border-radius:4px;font-size:12px;cursor:pointer}.btn-edit-mini:hover{background:#f0f0f0;border-color:#999}.items-section{margin-bottom:20px;overflow-x:auto}.items-table-input{width:100%;border-collapse:collapse;font-size:13px}.items-table-input th{background-color:#f1f3f5;border:1px solid #ddd;padding:8px;text-align:center;font-weight:700;color:#333}.items-table-input td{border:1px solid #ddd;padding:0}.items-table-input input{width:100%;height:34px;border:none;padding:0 5px;box-sizing:border-box;font-size:13px}.items-table-input input:focus{background-color:#e3f2fd;outline:none}.items-table-input input.right{text-align:right}.items-table-input input.center{text-align:center}.items-table-input input.bg-read{background-color:#fafafa}.btn-del-row{width:100%;height:34px;background:#fff;border:none;color:#d63031;font-weight:700;cursor:pointer}.btn-del-row:hover{background:#ffebee}.btn-add-row{width:100%;padding:10px;background:#fff;border:1px dashed #ccc;color:#555;cursor:pointer;margin-top:5px}.btn-add-row:hover{background:#f8f9fa;border-color:#999}.total-summary-box{background-color:#f8f9fa;padding:20px;border-radius:8px;border:1px solid #eee;margin-bottom:20px;text-align:right}.summary-row{font-size:16px;margin-bottom:5px}.amount-text.blue{font-size:24px;font-weight:900;color:#1976d2;margin-left:15px}.summary-sub{font-size:13px;color:#666;margin-bottom:15px}.main-remark-row{display:flex;align-items:center;justify-content:flex-end;gap:10px}.main-remark-row label{font-weight:700;font-size:13px}.main-remark-row input{width:300px;padding:8px;border:1px solid #ddd;border-radius:4px}.banking-excel-container{padding:20px;max-width:1400px;margin:0 auto}.page-header h2{margin:0 0 10px;font-size:24px;color:#333}.banking-tabs{display:flex;gap:5px;margin-bottom:20px;border-bottom:1px solid #ccc}.tab-btn{padding:10px 20px;border:1px solid #ccc;border-bottom:none;background-color:#f9f9f9;cursor:pointer;font-size:14px;color:#555;border-radius:5px 5px 0 0;transition:all .2s}.tab-btn.active{background-color:#fff;font-weight:700;color:#1976d2;border-top:2px solid #1976d2;margin-bottom:-1px;position:relative;z-index:1}.action-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;background:#f8f9fa;padding:15px;border-radius:5px}.info-text{font-size:12px;color:#666;line-height:1.5}.right-group{display:flex;gap:10px}.btn-download{padding:8px 16px;background-color:#fff;border:1px solid #27ae60;color:#27ae60;border-radius:4px;cursor:pointer;font-weight:700;transition:.2s}.btn-download:hover{background-color:#eafaf1}.btn-upload{padding:8px 20px;background-color:#1976d2;border:none;color:#fff;border-radius:4px;cursor:pointer;font-weight:700}.btn-upload:hover{background-color:#1565c0}.btn-upload:disabled{background-color:#ccc;cursor:not-allowed}.data-list-section{overflow-x:auto;border-top:2px solid #333}.banking-table{width:100%;border-collapse:collapse;font-size:13px}.banking-table th{background-color:#f1f3f5;padding:10px 5px;border-bottom:1px solid #ddd;font-weight:700;color:#333;text-align:center;white-space:nowrap}.banking-table td{padding:8px 5px;border-bottom:1px solid #eee;vertical-align:middle;color:#333}.banking-table tr:hover{background-color:#f8fbff}.no-data{text-align:center;padding:50px!important;color:#888;font-size:14px}.btn-delete-mini{padding:4px 8px;background-color:#fff;border:1px solid #ddd;color:#e74c3c;border-radius:3px;cursor:pointer;font-size:11px}.btn-delete-mini:hover{background-color:#ffebee;border-color:#e74c3c}.settlement-page-container{padding:20px;max-width:1200px;margin:0 auto}.page-header{border-bottom:2px solid #333;padding-bottom:15px;margin-bottom:20px}.page-header h2{margin:0 0 5px;color:#333}.page-header p{margin:0;color:#666;font-size:14px}.settlement-control-panel{background:#f8f9fa;padding:20px;border-radius:8px;border:1px solid #eee;margin-bottom:20px}.status-filter-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:15px}.status-filter-row .label{font-weight:700;margin-right:10px;font-size:14px;white-space:nowrap}.status-btn{padding:6px 12px;border:1px solid #ddd;background:#fff;border-radius:20px;cursor:pointer;font-size:13px;color:#555;transition:all .2s}.status-btn:hover{background:#f1f1f1}.status-btn.active{background:#333;color:#fff;border-color:#333;font-weight:700}.site-select-row .site-select{width:100%;max-width:400px;padding:10px;font-size:15px;border:1px solid #1976d2;border-radius:4px;background:#fff}.settlement-summary-box{display:flex;align-items:center;justify-content:space-around;background:#fff;border:1px solid #ddd;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 8px #0000000d}.summary-item{text-align:center}.summary-item .label{display:block;font-size:13px;color:#888;margin-bottom:5px;white-space:nowrap}.summary-item .value{font-size:20px;font-weight:900;white-space:nowrap}.summary-item .value.revenue{color:#1976d2}.summary-item .value.expense{color:#c62828}.summary-item .value.profit{color:#2e7d32}.summary-item .value.profit.negative{color:#e74c3c}.summary-divider{font-size:24px;color:#ccc;font-weight:lighter}.category-filter-bar{background-color:#eef2f5;padding:12px 15px;border-radius:6px;margin-bottom:15px;display:flex;align-items:center;flex-wrap:wrap;gap:20px;border:1px solid #dde3e9}.category-filter-bar .filter-group{display:flex;align-items:center;gap:8px;white-space:nowrap}.category-filter-bar .label{font-weight:700;font-size:14px;color:#333;white-space:nowrap;background-color:transparent;margin:0}.category-select{padding:6px;border:1px solid #ccc;border-radius:4px;min-width:140px;background-color:#fff}.category-select:disabled{background-color:#f0f0f0;color:#999}.category-filter-bar .info-text{font-size:12px;color:#888;margin-left:auto;white-space:nowrap}.settlement-table-wrapper{overflow-x:auto;border-top:2px solid #333}.settlement-table{width:100%;border-collapse:collapse;font-size:14px;white-space:nowrap}.settlement-table th{background:#f5f5f5;padding:12px;border-bottom:1px solid #ddd;font-weight:700;text-align:center}.settlement-table td{padding:12px;border-bottom:1px solid #eee;vertical-align:middle}.settlement-table tr:hover{background-color:#f9f9f9}.row-revenue{background-color:#f3f9ff}.type-badge{padding:3px 8px;border-radius:4px;font-size:11px;font-weight:700}.type-badge.sales{background:#e3f2fd;color:#1565c0;border:1px solid #bbdefb}.type-badge.expense{background:#ffebee;color:#c62828;border:1px solid #ffcdd2}.btn-del-mini{padding:4px 8px;border:1px solid #e74c3c;color:#e74c3c;background:#fff;border-radius:4px;cursor:pointer;font-size:12px}.empty-state{text-align:center;padding:50px;background:#fafafa;border-radius:8px;color:#888;font-size:16px}.loading,.no-data{text-align:center;padding:30px;color:#999}@media(max-width:768px){.category-filter-bar{flex-direction:column;align-items:flex-start;gap:10px}.category-filter-bar .info-text{margin-left:0}}:root{--or-bg: #f8f9fa;--or-white: #ffffff;--or-text: #333;--or-sub: #666;--or-border: #e0e0e0;--or-accent: #007bff;--or-ease: cubic-bezier(.25, .46, .45, .94)}.or-page-container{padding:30px;background-color:var(--or-bg);min-height:100%;box-sizing:border-box}.or-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:30px;border-bottom:1px solid var(--or-border);padding-bottom:20px}.or-title{font-size:24px;font-weight:800;color:var(--or-text);margin:0}.or-desc{font-size:14px;color:var(--or-sub);margin-top:5px}.header-right{display:flex;gap:10px}.btn-perm,.btn-refresh{padding:8px 16px;border:1px solid #ddd;background:#fff;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s}.btn-perm:hover,.btn-refresh:hover{background:#f0f0f0;border-color:#ccc}.or-content-wrapper{background:var(--or-white);border-radius:12px;box-shadow:0 2px 10px #00000008;padding:20px;min-height:500px}.or-loading,.or-empty{text-align:center;padding:100px 0;color:#999;font-size:15px}.or-table-container{overflow-x:auto}.or-table{width:100%;border-collapse:collapse;min-width:1000px}.or-table th{text-align:left;padding:15px;border-bottom:2px solid #eee;font-size:13px;font-weight:700;color:#555;background:#f9f9f9;white-space:nowrap}.or-table td{padding:15px;border-bottom:1px solid #f0f0f0;font-size:14px;color:#333;vertical-align:top}.th-status{width:90px;text-align:center}.th-date{width:100px;text-align:center}.th-site{width:120px}.th-user,.th-type{width:80px;text-align:center}.th-detail{width:250px}.th-amount{width:140px;text-align:right}.th-action{width:200px;text-align:center}.td-date,.td-user,.td-type{text-align:center}.td-amount{text-align:right}.td-action{text-align:center}.or-fade-up{opacity:0;transform:translateY(20px);transition:opacity .5s var(--or-ease),transform .5s var(--or-ease)}.or-fade-up.or-active{opacity:1;transform:translateY(0)}.or-status-badge{padding:4px 8px;border-radius:20px;font-size:11px;font-weight:600;white-space:nowrap}.or-status-badge.pending{background:#fff3e0;color:#ef6c00}.or-status-badge.pending_payment{background:#e3f2fd;color:#1976d2}.or-status-badge.approved{background:#e8f5e9;color:#2e7d32}.or-status-badge.rejected{background:#ffebee;color:#c62828}.or-type-tag{font-size:11px;color:#666;background:#f0f0f0;padding:2px 6px;border-radius:4px}.or-detail-box{display:flex;flex-direction:column;gap:4px}.or-category{font-size:11px;color:#999;margin-bottom:2px}.or-vendor{font-weight:600;color:#333;font-size:13px}.or-item-name{color:#555;font-size:13px}.or-link{font-size:12px;color:var(--or-accent);text-decoration:none}.or-link:hover{text-decoration:underline}.or-reject-reason{font-size:12px;color:#d32f2f;background:#fff5f5;padding:4px;border-radius:4px;margin-top:5px}.or-amount-val{font-size:15px;color:#111;display:block}.or-bank-info{font-size:11px;color:#888;margin-top:4px}.or-secret-mask{font-size:12px;color:#aaa;letter-spacing:-.5px}.or-action-btns{display:flex;gap:5px;justify-content:center;align-items:center;flex-wrap:wrap}.btn-mini{padding:5px 10px;border:1px solid #ddd;background:#fff;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s}.btn-mini:hover{border-color:#999}.btn-mini.approve{background:var(--or-accent);color:#fff;border:none}.btn-mini.approve:hover{background:#0056b3}.btn-mini.complete{background:#2e7d32;color:#fff;border:none}.btn-mini.complete:hover{background:#1b5e20}.btn-mini.link.active{background:#e3f2fd;color:var(--or-accent);border-color:var(--or-accent)}.btn-mini.reset{color:#d32f2f;border-color:#ffcdd2;background:#fff}.btn-mini.reset:hover{background:#ffebee}.btn-icon-del{background:none;border:none;cursor:pointer;font-size:16px;opacity:.5;transition:opacity .2s}.btn-icon-del:hover{opacity:1}.or-done-text{font-size:12px;color:#2e7d32;font-weight:600}.or-reject-text{font-size:12px;color:#c62828}@media(max-width:768px){.or-page-container{padding:15px}.or-header{flex-direction:column;align-items:flex-start;gap:15px}.header-right{width:100%;justify-content:flex-end}.or-content-wrapper{padding:15px}.or-table,.or-table thead,.or-table tbody,.or-table tr,.or-table td{display:block;width:100%;box-sizing:border-box}.or-table thead{display:none}.or-table tr{background:#fff;border:1px solid #eee;border-radius:8px;margin-bottom:15px;padding:15px;box-shadow:0 2px 5px #00000005;position:relative}.or-table td{padding:5px 0;border:none;display:flex;justify-content:space-between;align-items:center;text-align:right;font-size:14px}.or-table td:before{content:attr(data-label);font-weight:600;color:#999;font-size:12px;margin-right:10px;text-align:left}.td-detail{display:block!important;text-align:left;margin-top:10px;padding-top:10px!important;border-top:1px dashed #eee!important}.td-detail:before{display:none}.td-action{display:block!important;text-align:right;margin-top:10px}.td-action:before{display:none}.or-action-btns{justify-content:flex-end}.or-amount-val{font-size:16px}.td-site{font-weight:700;color:#333;font-size:16px;border-bottom:1px solid #eee!important;padding-bottom:10px!important;margin-bottom:5px;display:block!important;text-align:left!important}.td-site:before{display:none}}.worklog-list-container{display:flex;flex-direction:column;width:100%;max-width:100%;padding-bottom:40px}.worklog-header-row{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #333;padding-bottom:10px;margin-bottom:20px}.worklog-header-row h2{margin:0;font-size:24px;color:#333}.header-actions{display:flex;gap:8px}.header-btn{background-color:#fff;border:1px solid #ccc;padding:8px 15px;border-radius:5px;cursor:pointer;font-size:13px;font-weight:700;color:#555;display:flex;align-items:center;gap:5px;transition:all .2s}.header-btn:hover{background-color:#f8f9fa;border-color:#bbb;color:#333}.btn-back{background:#f8f9fa;border:1px solid #ddd;padding:6px 12px;border-radius:5px;margin-right:10px;cursor:pointer;font-size:13px;font-weight:600}.btn-back:hover{background:#e9ecef}.worklog-search-bar{margin-bottom:15px;width:100%;max-width:400px;height:40px;padding:0 12px;font-size:15px;border:1px solid #ccc;border-radius:5px;box-sizing:border-box}.worklog-search-bar:focus{outline:none;border-color:#333}.worklog-table-wrapper{overflow-x:auto;border-top:1px solid #ddd}.worklog-table{width:100%;border-collapse:collapse;font-size:14px}.worklog-table th,.worklog-table td{border-bottom:1px solid #ddd;padding:12px 10px;text-align:left;white-space:nowrap}.worklog-table th{background-color:#f8f9fa;font-weight:700;color:#333;text-align:center;border-bottom:1px solid #ccc}.worklog-table tr:hover{background-color:#f8fff9}.worklog-link-button{background:none;border:none;padding:0;margin:0;color:#007bff;font-weight:700;font-size:14px;text-align:left;cursor:pointer}.worklog-link-button:hover{text-decoration:underline}.col-content{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.modal-backdrop{position:fixed;inset:0;background-color:#00000080;z-index:2000;display:flex;justify-content:center;align-items:center}.sort-modal-content{background:#fff;padding:20px;border-radius:8px;width:320px;box-shadow:0 4px 15px #0003;display:flex;flex-direction:column}.sort-modal-content h3{margin-top:0;margin-bottom:15px;text-align:center;font-size:18px;color:#333}.modal-list{list-style:none;padding:0;margin:0 0 20px;border:1px solid #ddd;border-radius:4px;max-height:400px;overflow-y:auto}.modal-item{padding:10px 15px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center;background:#fff;font-size:14px}.modal-item:last-child{border-bottom:none}.sort-controls button{background:#f1f3f5;border:1px solid #ddd;padding:4px 8px;margin-left:5px;cursor:pointer;border-radius:4px;font-size:12px;color:#555}.sort-controls button:hover{background-color:#e2e6ea}.sort-controls button:disabled{opacity:.3;cursor:default}.visibility-label{display:flex;align-items:center;width:100%;cursor:pointer}.visibility-label input{margin-right:10px;transform:scale(1.2);cursor:pointer}.modal-footer{display:flex;justify-content:flex-end;gap:10px}.btn-save{background:#28a745;color:#fff;border:none;padding:8px 15px;border-radius:4px;cursor:pointer;font-weight:700;font-size:13px}.btn-save:hover{opacity:.9}.btn-close{background:#6c757d;color:#fff;border:none;padding:8px 15px;border-radius:4px;cursor:pointer;font-weight:700;font-size:13px}.btn-close:hover{opacity:.9}.detail-modal{background-color:#fff;width:800px;max-width:95%;max-height:90vh;border-radius:8px;overflow-y:auto;box-shadow:0 5px 15px #0000004d;display:flex;flex-direction:column}.detail-header{padding:20px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center}.detail-header h2{margin:0;font-size:22px;color:#333}.detail-body{padding:30px}.detail-section{margin-bottom:20px}.detail-label{font-weight:700;display:block;margin-bottom:8px;font-size:14px;color:#555}.detail-content-box{padding:15px;background:#f9f9f9;border:1px solid #eee;border-radius:5px;min-height:40px;white-space:pre-line;line-height:1.5;font-size:14px;color:#333}.photo-grid{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.photo-item{width:100px;height:100px;border:1px solid #ddd;border-radius:5px;overflow:hidden;cursor:zoom-in}.photo-item img{width:100%;height:100%;object-fit:cover;transition:transform .2s}.photo-item:hover img{transform:scale(1.1)}.site-delete-container{display:flex;flex-direction:column;width:100%;max-width:100%;padding:0}.section-header{border-bottom:2px solid #333;padding-bottom:10px;margin-bottom:20px}.section-header h2{margin:0 0 5px;font-size:24px;color:#333}.section-header p{margin:0;font-size:14px;color:#666}.list-section h3{font-size:18px;margin-bottom:10px;margin-top:0;display:flex;align-items:center}.table-wrapper{overflow-x:auto;border-top:1px solid #333;margin-bottom:40px}.delete-table{width:100%;border-collapse:collapse;font-size:14px}.delete-table th,.delete-table td{border-bottom:1px solid #ddd;padding:12px 10px;text-align:left;white-space:nowrap}.delete-table th{background-color:#f8f9fa;font-weight:700;color:#333;text-align:center;border-bottom:1px solid #ccc}.row-deleted{background-color:#fff5f5}.row-deleted td{color:#888}.empty-cell{text-align:center!important;padding:50px!important;color:#999}.btn-action{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:700;color:#fff}.btn-action.delete{background-color:#dc3545}.btn-action.restore{background-color:#28a745}.btn-action:hover{opacity:.9}.worker-page-container{padding:20px;max-width:1200px;margin:0 auto}.worker-header{border-bottom:2px solid #333;padding-bottom:15px;margin-bottom:20px}.worker-header h2{margin:0 0 5px;color:#333;font-size:24px}.worker-header p{margin:0;color:#666;font-size:14px}.worker-control-panel{background:#f8f9fa;padding:15px;border-radius:8px;margin-bottom:20px}.filter-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.search-box{position:relative;width:250px}.search-box input{width:100%;padding:10px 35px 10px 10px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.search-box .icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:#999}.filter-box select{padding:10px;border:1px solid #ddd;border-radius:4px;min-width:150px;cursor:pointer}.btn-add-worker{padding:10px 20px;border:none;color:#fff;border-radius:5px;cursor:pointer;font-weight:700;white-space:nowrap}.btn-manage-trade{padding:10px 15px;background:#fff;border:1px solid #ccc;border-radius:5px;margin-right:5px;cursor:pointer;font-size:13px;color:#555;white-space:nowrap}.btn-manage-trade:hover{background:#f1f1f1}.worker-table-wrapper{overflow-x:auto;border-top:2px solid #333}.worker-table{width:100%;border-collapse:collapse;font-size:14px}.worker-table th{background-color:#f5f5f5;padding:12px 10px;border-bottom:1px solid #ddd;font-weight:700;color:#333;text-align:left}.worker-table th:first-child{padding-left:20px}.worker-table th:last-child{text-align:center}.worker-table td{padding:12px 10px;border-bottom:1px solid #eee;color:#555;vertical-align:middle}.worker-table td:first-child{padding-left:20px}.worker-table tr:hover{background-color:#f9f9f9}.badge{background:#e3f2fd;color:#1565c0;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:700;display:inline-block}.btn-edit-mini,.btn-del-mini{padding:5px 10px;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer;font-size:12px;margin:0 2px}.btn-edit-mini:hover{border-color:#1976d2;color:#1976d2;background:#e3f2fd}.btn-del-mini:hover{border-color:#d63031;color:#d63031;background:#ffebee}.loading,.no-data{text-align:center;padding:50px;color:#999}.btn-bulk-edit{padding:8px 15px;background:#fff;border:1px solid #ccc;border-radius:5px;margin-right:5px;cursor:pointer;font-size:13px;color:#555;white-space:nowrap}.btn-bulk-edit:hover{background:#f1f1f1;color:#333}.worker-table tr.selected-row{background-color:#e3f2fd!important}.worker-table input[type=checkbox]{transform:scale(1.2);cursor:pointer}.labor-page-container{padding:20px;max-width:1200px;margin:0 auto}.labor-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:2px solid #333;padding-bottom:15px}.labor-header h2{margin:0;font-size:24px}.header-controls{display:flex;gap:10px;align-items:center}.header-controls input[type=month],.header-controls select.status-filter{padding:8px;border:1px solid #ccc;border-radius:4px;font-size:14px}.btn-excel{padding:8px 15px;background:#27ae60;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:700}.btn-add{padding:8px 20px;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:700}.labor-list-wrapper{overflow-x:auto;min-height:300px}.labor-table{width:100%;border-collapse:collapse;font-size:14px;white-space:nowrap}.labor-table th{background:#f8f9fa;padding:12px;border-bottom:1px solid #ddd;font-weight:700;text-align:center}.labor-table td{padding:12px;border-bottom:1px solid #eee;vertical-align:middle}.tar{text-align:right}.tac{text-align:center}.text-red{color:#e74c3c}.bold{font-weight:700}.type-badge{font-size:11px;padding:2px 6px;background:#eee;border-radius:10px;margin-left:5px;color:#555;white-space:nowrap;display:inline-block;vertical-align:middle}.status-select{padding:4px 8px;border-radius:4px;border:1px solid #ddd;font-size:12px;cursor:pointer}.status-select.paid{color:#1976d2;font-weight:700;border-color:#1976d2}.status-select.unpaid{color:#d63031;font-weight:700;border-color:#d63031}.btn-mini-edit{padding:4px 8px;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer;margin-right:4px}.btn-mini-del{padding:4px 8px;border:1px solid #e74c3c;background:#fff;color:#e74c3c;border-radius:4px;cursor:pointer}.no-data{text-align:center;padding:50px;color:#999}.labor-modal-wrapper .lm-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:2000}.labor-modal-wrapper .lm-content{background:#fff;width:500px;max-height:90vh;border-radius:8px;display:flex;flex-direction:column}.lm-header{padding:15px 20px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center}.lm-header h3{margin:0}.lm-close-btn{border:none;background:none;font-size:24px;cursor:pointer}.lm-body{padding:20px;overflow-y:auto}.lm-row{display:flex;gap:10px;margin-bottom:15px}.lm-group{margin-bottom:15px}.lm-group.half{flex:1}.lm-group label{display:block;margin-bottom:5px;font-weight:700;font-size:13px}.lm-group select,.lm-group input{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.lm-day-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.lm-day-chip{padding:8px 0;text-align:center;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:13px}.lm-day-chip.selected{background:#3498db;color:#fff;border-color:#3498db;font-weight:700}.lm-group.bg-box{background:#f9f9f9;padding:15px;border-radius:6px}.lm-row.baseline{align-items:baseline}.lm-group.grow{flex:1}.lm-input-amount{font-size:16px;font-weight:700;text-align:right;color:#333}.lm-check-label{margin-left:10px;font-size:13px;display:flex;align-items:center;gap:4px}.lm-tax-detail{margin-top:10px;padding-top:10px;border-top:1px dashed #ccc;font-size:13px;color:#666}.lm-tax-detail p{display:flex;justify-content:space-between;margin:4px 0}.lm-tax-detail hr{border:0;border-top:1px solid #ddd;margin:8px 0}.lm-tax-detail .total{font-weight:700;color:#e74c3c}.lm-result-bar{background:#333;color:#fff;padding:15px;border-radius:6px;display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.lm-result-bar strong{font-size:20px;color:#f1c40f}.lm-check-row{display:flex;gap:20px}.lm-footer{padding:15px;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:10px}.lm-btn-cancel{padding:10px 20px;background:#f1f3f5;border:none;border-radius:4px;cursor:pointer}.lm-btn-save{padding:10px 20px;background:#1976d2;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:700}.program-main-layout{display:flex;flex-direction:row;width:100%;min-height:calc(100vh - 120px);background-color:#f5f7fa;margin:0;padding:0;box-sizing:border-box;position:static}.program-content-area{flex-grow:1;padding:10px;box-sizing:border-box;overflow-x:hidden;display:flex;flex-direction:column}.dashboard-grid{display:grid;grid-template-columns:3fr 1fr;grid-template-rows:auto auto;gap:20px;width:100%}.widget{background-color:#fff;border-radius:8px;padding:20px;box-shadow:0 1px 3px #0000001a;border:1px solid #eee}.calendar-widget-area{grid-column:1 / 2;grid-row:1 / 3;display:flex;flex-direction:column;min-height:800px}.widget-top-right{grid-column:2 / 3;grid-row:1 / 2}.widget-bottom-right{grid-column:2 / 3;grid-row:2 / 3}@media(max-width:768px){.program-main-layout{flex-direction:column}.dashboard-grid{grid-template-columns:1fr;display:flex;flex-direction:column}.program-content-area{padding:15px}}.join-page-container{display:flex;align-items:center;justify-content:center;min-height:80vh;background-color:#f8f9fa;padding:20px}.join-status-box{background-color:#fff;border:1px solid #eee;border-radius:8px;box-shadow:0 4px 12px #0000000d;padding:40px;width:100%;max-width:500px;text-align:center}.join-message{font-size:16px;line-height:1.6;margin-top:20px;margin-bottom:30px}.join-message.success{color:#155724}.join-message.error{color:#721c24}.join-message.requiresLogin{color:#0c5460}.join-actions{display:flex;gap:15px;justify-content:center}.join-button{display:inline-block;padding:10px 20px;font-size:16px;font-weight:700;text-decoration:none;border-radius:5px;cursor:pointer;border:none;background-color:#007bff;color:#fff}.join-button.secondary{background-color:#6c757d}.loader{border:5px solid #f3f3f3;border-top:5px solid #007bff;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.join-site-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#f5f7fa;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Pretendard,Roboto,sans-serif}.join-site-card{background:#fff;width:100%;max-width:400px;padding:40px 30px;border-radius:24px;box-shadow:0 10px 40px #00000014;text-align:center;display:flex;flex-direction:column;align-items:center;animation:slideUpFade .6s cubic-bezier(.16,1,.3,1)}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.join-site-header{margin-bottom:30px}.join-site-logo{height:40px;object-fit:contain}.join-site-icon-area{height:80px;display:flex;align-items:center;justify-content:center;margin-bottom:20px}.join-icon{font-size:48px;animation:popIn .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes popIn{0%{transform:scale(0)}to{transform:scale(1)}}.join-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#333;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.join-site-content{margin-bottom:35px;width:100%}.join-site-title{font-size:22px;font-weight:800;color:#1a1a1a;margin:0 0 12px;letter-spacing:-.5px}.join-site-message{font-size:15px;color:#666;line-height:1.6;white-space:pre-line;margin:0;word-break:keep-all}.join-site-actions{width:100%;display:flex;flex-direction:column;gap:12px}.join-auth-buttons{display:flex;gap:10px;width:100%}.join-btn{display:flex;align-items:center;justify-content:center;width:100%;height:52px;border-radius:14px;font-size:16px;font-weight:700;cursor:pointer;text-decoration:none;transition:all .2s ease;border:none}.join-btn.primary{background-color:#1a1a1a;color:#fff;box-shadow:0 4px 12px #00000026}.join-btn.primary:hover{background-color:#333;transform:translateY(-2px);box-shadow:0 6px 16px #0003}.join-btn.secondary{background-color:#fff;color:#1a1a1a;border:1px solid #e0e0e0}.join-btn.secondary:hover{background-color:#f9f9f9;border-color:#ccc}.join-link-home{margin-top:15px;font-size:13px;color:#999;text-decoration:underline;cursor:pointer;background:none;border:none}.join-link-home:hover{color:#666}.join-site-footer{margin-top:40px;font-size:11px;color:#ccc;text-transform:uppercase;letter-spacing:1px}@media(max-width:480px){.join-site-card{padding:30px 20px;box-shadow:none;background:transparent}.join-site-container{background:#fff}}:root{--cs-ease: cubic-bezier(.25, .46, .45, .94)}.cs-reveal-mask{overflow:hidden;display:block}.cs-reveal-text{transform:translateY(110%);transition:transform 1s var(--cs-ease);display:block}.cs-reveal-text.cs-active{transform:translateY(0)}.cs-fade-up{opacity:0;transform:translateY(20px);transition:opacity .6s var(--cs-ease),transform .6s var(--cs-ease)}.cs-fade-up.cs-active{opacity:1;transform:translateY(0)}.cs-modal-overlay{position:fixed;inset:0;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:center;justify-content:center;animation:csFadeIn .3s ease}@keyframes csFadeIn{0%{opacity:0}to{opacity:1}}.cs-modal-container{background-color:#fff;width:100%;max-width:500px;height:80vh;border-radius:16px;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;overflow:hidden;animation:csSlideUp .3s ease}@keyframes csSlideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.cs-modal-header{padding:20px 24px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:flex-start;background-color:#fff}.header-content{display:flex;flex-direction:column}.cs-site-name{font-size:18px;font-weight:700;color:#111;margin:0;line-height:1.2}.cs-modal-title{font-size:14px;color:#666;margin-top:4px}.btn-close{background:none;border:none;font-size:28px;color:#999;cursor:pointer;line-height:1;padding:0;margin-left:10px}.cs-modal-body{flex:1;overflow-y:auto;padding:20px;background-color:#f9f9f9}.cs-loading,.cs-empty{text-align:center;padding:60px 0;color:#888;font-size:15px}.schedule-timeline{display:flex;flex-direction:column;gap:12px}.schedule-item{background-color:#fff;border:1px solid #eee;border-radius:12px;padding:16px;display:flex;gap:20px}.schedule-item.today{border:2px solid #333;background-color:#fff;box-shadow:0 4px 12px #00000014}.date-col{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:80px;border-right:1px solid #f0f0f0;padding-right:16px}.date-text{font-size:15px;font-weight:700;color:#333;margin-bottom:4px}.today-badge{font-size:10px;font-weight:800;color:#fff;background-color:#ff5252;padding:2px 6px;border-radius:4px}.content-col{flex:1;display:flex;flex-direction:column;justify-content:center;gap:8px}.process-list{display:flex;flex-wrap:wrap;gap:6px}.process-tag{font-size:13px;padding:4px 10px;border-radius:6px;font-weight:600;white-space:nowrap}.noisy-alert{font-size:12px;color:#d32f2f;font-weight:700;display:flex;align-items:center;gap:4px}.cs-modal-footer{padding:15px 24px;border-top:1px solid #eee;background-color:#fff;text-align:center}.cs-modal-footer p{margin:0;font-size:13px;color:#888}@media(max-width:480px){.cs-modal-container{height:100%;border-radius:0}.schedule-item{gap:15px;padding:14px}.date-col{min-width:70px;padding-right:12px}}:root{--wl-ease: cubic-bezier(.25, .46, .45, .94);--wl-text-main: #333;--wl-text-sub: #666;--wl-border: #e0e0e0}.wl-reveal-mask{overflow:hidden;display:block}.wl-header-anim{transform:translateY(110%);transition:transform 1.2s var(--wl-ease);display:block}.wl-header-anim.wl-active{transform:translateY(0)}.wl-fade-up{opacity:0;transform:translateY(30px);transition:opacity .6s var(--wl-ease),transform .6s var(--wl-ease)}.wl-fade-up.wl-active{opacity:1;transform:translateY(0)}.wl-modal-overlay{position:fixed;inset:0;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:3000;display:flex;align-items:center;justify-content:center;animation:wlFadeIn .3s ease}@keyframes wlFadeIn{0%{opacity:0}to{opacity:1}}.wl-modal-container{background-color:#fff;width:95%;height:85vh;border-radius:12px;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;overflow:hidden;animation:wlSlideUp .4s var(--wl-ease)}.wl-modal-container.wide{max-width:900px}@keyframes wlSlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.wl-modal-header{padding:25px 40px;border-bottom:1px solid var(--wl-border);display:flex;justify-content:space-between;align-items:flex-start;background-color:#fff}.wl-modal-title{margin:0;font-size:24px;font-weight:800;color:#111;letter-spacing:-.5px}.wl-modal-body{flex:1;overflow-y:auto;padding:40px;background-color:#fcfcfc}.wl-loading,.wl-empty{text-align:center;padding:80px 0;color:#888;font-size:16px}.log-list-container{display:flex;flex-direction:column;gap:12px}.log-row-item{display:flex;align-items:center;background:#fff;padding:25px 30px;border:1px solid var(--wl-border);border-radius:8px;cursor:pointer;transition:all .2s}.log-row-item:hover{border-color:#333;transform:translate(5px);box-shadow:0 5px 15px #0000000d}.log-row-left{width:140px;flex-shrink:0}.log-row-date{font-size:18px;font-weight:700;color:#333;letter-spacing:-.5px}.log-row-center{flex:1;min-width:0;padding:0 30px}.log-row-summary{margin:0 0 6px;font-size:16px;color:#555;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge-issue{font-size:12px;color:#e53935;background:#ffebee;padding:2px 8px;border-radius:4px;font-weight:600}.log-row-right{display:flex;align-items:center;gap:15px}.badge-photo{font-size:13px;color:#666;background:#f0f0f0;padding:4px 10px;border-radius:20px}.row-arrow{font-size:20px;color:#ccc;transition:transform .2s}.log-row-item:hover .row-arrow{transform:translate(5px);color:#333}.log-detail-wrapper{max-width:800px;margin:0 auto}.btn-back{background:none;border:none;color:#666;font-size:15px;cursor:pointer;padding:0;margin-bottom:30px;font-weight:600;transition:color .2s}.detail-content{background:#fff;border:1px solid var(--wl-border);border-radius:12px;padding:50px;box-shadow:0 10px 30px #00000008}.detail-top-row{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:2px solid #333;padding-bottom:20px;margin-bottom:40px}.detail-date{margin:0;font-size:28px;font-weight:800;color:#111}.detail-author{font-size:14px;color:#888}.detail-block{margin-bottom:40px}.block-label{display:block;font-size:14px;color:#999;margin-bottom:12px;letter-spacing:1px}.block-text{font-size:16px;color:#333;line-height:1.7;white-space:pre-wrap}.detail-block.alert .block-label{color:#e53935}.detail-block.alert{background:#fff5f5;padding:20px;border-radius:8px;border-left:4px solid #e53935}.detail-block.note .block-label{color:#1565c0}.detail-block.note{background:#e3f2fd;padding:20px;border-radius:8px;border-left:4px solid #1565c0}.detail-gallery-section{margin-top:60px}.gallery-label{display:block;font-size:16px;font-weight:700;margin-bottom:20px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.gallery-item{aspect-ratio:4/3;overflow:hidden;border-radius:6px;cursor:zoom-in;border:1px solid #eee}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.gallery-item:hover img{transform:scale(1.05)}.image-viewer-controls{position:absolute;top:30px;right:30px;z-index:4001}.image-viewer-controls button{background:transparent;border:1px solid #fff;color:#fff;padding:10px 20px;border-radius:30px;cursor:pointer;transition:all .2s}.image-viewer-controls button:hover{background:#fff;color:#000}@media(max-width:768px){.wl-modal-container.wide{width:100%;height:100%;border-radius:0}.wl-modal-body,.wl-modal-header{padding:20px}.log-row-item{flex-direction:column;align-items:flex-start;gap:10px}.log-row-left{width:100%;margin-bottom:5px}.log-row-center{padding:0;width:100%}.log-row-right{width:100%;justify-content:flex-end;margin-top:10px}.row-arrow{display:none}.gallery-grid{grid-template-columns:1fr}.detail-content{padding:25px}.detail-date{font-size:22px}}:root{--cf-ease: cubic-bezier(.25, .46, .45, .94);--cf-text-main: #333;--cf-text-sub: #666;--cf-border: #e0e0e0;--cf-accent: #111}.cf-reveal-mask{overflow:hidden;display:block}.cf-header-anim{transform:translateY(110%);transition:transform 1.2s var(--cf-ease);display:block}.cf-header-anim.cf-active{transform:translateY(0)}.cf-fade-up{opacity:0;transform:translateY(30px);transition:opacity .6s var(--cf-ease),transform .6s var(--cf-ease)}.cf-fade-up.cf-active{opacity:1;transform:translateY(0)}.cf-modal-overlay{position:fixed;inset:0;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:3000;display:flex;align-items:center;justify-content:center;animation:cfFadeIn .3s ease}@keyframes cfFadeIn{0%{opacity:0}to{opacity:1}}.cf-modal-container{background-color:#fff;width:95%;height:85vh;border-radius:12px;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;overflow:hidden;animation:cfSlideUp .4s var(--cf-ease)}.cf-modal-container.wide{max-width:1000px}@keyframes cfSlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.cf-modal-header{padding:25px 40px;border-bottom:1px solid var(--cf-border);display:flex;justify-content:space-between;align-items:flex-start;background-color:#fff}.cf-modal-title{margin:0;font-size:24px;font-weight:800;color:#111;letter-spacing:-.5px}.btn-close{background:none;border:none;font-size:32px;color:#999;cursor:pointer;line-height:1;padding:0;margin-left:20px;transition:color .2s}.cf-modal-body{flex:1;overflow-y:auto;padding:40px;background-color:#fcfcfc;display:flex;flex-direction:column}.cf-tabs{display:flex;gap:40px;margin-bottom:40px;border-bottom:1px solid var(--cf-border)}.cf-tab{background:none;border:none;font-size:16px;font-weight:600;color:#999;padding:0 0 15px;cursor:pointer;transition:all .3s;position:relative}.cf-tab:hover{color:#333}.cf-tab.active{color:var(--cf-accent)}.cf-tab.active:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:2px;background-color:var(--cf-accent)}.cf-grid-container{flex:1}.cf-loading,.cf-empty{text-align:center;padding:80px 0;color:#888;font-size:16px}.cf-file-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.cf-file-card{background:#fff;border-radius:8px;overflow:hidden;border:1px solid var(--cf-border);transition:all .3s}.cf-file-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0000000d;border-color:#ccc}.cf-thumb-wrap{width:100%;aspect-ratio:4/3;position:relative;cursor:zoom-in;overflow:hidden;border-bottom:1px solid #f0f0f0}.cf-thumb-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.cf-thumb-overlay{position:absolute;inset:0;background:#0000004d;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s}.icon-zoom{font-size:24px;color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.cf-file-card:hover img{transform:scale(1.05)}.cf-file-card:hover .cf-thumb-overlay{opacity:1}.cf-file-info{padding:20px;display:flex;flex-direction:column;gap:12px}.cf-file-name{font-size:16px;font-weight:600;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-download{background:#f5f5f5;border:1px solid #ddd;color:#555;padding:10px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.btn-download:hover{background:#333;color:#fff;border-color:#333}.image-viewer-overlay{position:fixed;inset:0;background:#000000f2;z-index:4000;display:flex;justify-content:center;align-items:center}.image-viewer-controls{position:absolute;top:30px;right:30px;z-index:4001;display:flex;gap:15px;color:#fff;font-size:14px;align-items:center}.image-viewer-controls button{background:transparent;border:1px solid #fff;color:#fff;padding:8px 16px;border-radius:30px;cursor:pointer}.image-viewer-content img{max-width:90vw;max-height:90vh;object-fit:contain;box-shadow:0 0 50px #00000080}@media(max-width:768px){.cf-modal-container.wide{width:100%;height:100%;border-radius:0}.cf-modal-body,.cf-modal-header{padding:20px}.cf-file-grid{grid-template-columns:1fr;gap:20px}.cf-tabs{gap:20px;justify-content:center}.cf-tab{font-size:14px}}:root{--co-ease: cubic-bezier(.25, .46, .45, .94);--co-text-main: #333;--co-text-sub: #666;--co-border: #e0e0e0;--co-accent: #111}.co-reveal-mask{overflow:hidden;display:block}.co-header-anim{transform:translateY(110%);transition:transform 1.2s var(--co-ease);display:block}.co-header-anim.co-active{transform:translateY(0)}.co-fade-up{opacity:0;transform:translateY(30px);transition:opacity .6s var(--co-ease),transform .6s var(--co-ease)}.co-fade-up.co-active{opacity:1;transform:translateY(0)}.co-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:3000;display:flex;align-items:center;justify-content:center;animation:coFadeIn .3s ease}@keyframes coFadeIn{0%{opacity:0}to{opacity:1}}.co-modal-container{background:#f7f7f7;width:95%;height:85vh;border-radius:12px;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;overflow:hidden;animation:coSlideUp .4s var(--co-ease)}.co-modal-container.wide{max-width:1000px}@keyframes coSlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.co-modal-header{padding:25px 40px;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;align-items:flex-start;background:#fff;flex-shrink:0}.co-modal-title{margin:0;font-size:22px;font-weight:800;color:#111;letter-spacing:-.5px}.btn-close{background:none;border:none;font-size:30px;color:#999;cursor:pointer;line-height:1;padding:0;margin-left:20px;transition:color .2s}.btn-close:hover{color:#333}.co-modal-body{flex:1;overflow-y:auto;padding:40px;display:flex;flex-direction:column;align-items:center;overscroll-behavior:contain}.co-loading,.co-empty{text-align:center;padding:80px 0;color:#888;font-size:16px;width:100%}.co-list-container{display:flex;flex-direction:column;gap:15px;width:100%;max-width:800px}.co-list-card{background:#fff;border:1px solid #e0e0e0;border-radius:10px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 5px #00000005;display:flex;flex-direction:column;padding:20px}.co-list-card:hover{border-color:#333;transform:translateY(-3px);box-shadow:0 8px 15px #00000014}.co-card-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.co-card-date{font-size:13px;color:#888;font-weight:500}.co-card-title{margin:0;font-size:18px;font-weight:700;color:#333;word-break:keep-all}.co-card-divider{height:1px;background:#f0f0f0;margin:15px 0}.co-card-footer{display:flex;justify-content:space-between;align-items:center}.co-card-footer span:first-child{font-size:13px;color:#666}.co-card-amount{font-size:18px;font-weight:800;color:#111}.co-status{font-size:11px;padding:4px 8px;border-radius:4px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.co-status.pending{background:#f5f5f5;color:#999;border:1px solid #ddd}.co-status.waiting{background:#e3f2fd;color:#1565c0;border:1px solid #bbdefb}.co-status.approved{background:#333;color:#fff;border:1px solid #333}.co-detail-wrapper{width:100%;max-width:800px;margin:0 auto;display:flex;flex-direction:column}.btn-back{align-self:flex-start;background:none;border:none;color:#666;font-size:15px;cursor:pointer;padding:0;margin-bottom:20px;font-weight:600;transition:color .2s}.btn-back:hover{color:#111}.invoice-paper{background:#fff;border:1px solid #ddd;border-radius:0;padding:50px;box-shadow:0 5px 20px #0000000d;width:100%;box-sizing:border-box}.invoice-header{border-bottom:2px solid #333;padding-bottom:25px;margin-bottom:30px}.invoice-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.invoice-title-row h3{font-size:26px;font-weight:800;margin:0;word-break:keep-all}.invoice-meta{font-size:13px;color:#888;display:flex;gap:20px}.invoice-table-wrapper{overflow-x:auto;margin-bottom:30px}.invoice-table{width:100%;border-collapse:collapse;min-width:600px}.invoice-table th{text-align:left;padding:12px;border-bottom:1px solid #999;font-size:13px;color:#555;font-weight:600;background:#f9f9f9}.invoice-table td{padding:16px 12px;border-bottom:1px solid #eee;font-size:15px;color:#333}.th-center,.td-center{text-align:center}.th-right,.td-right{text-align:right}.font-bold{font-weight:700}.item-name{font-weight:600}.item-note{font-size:12px;color:#999;margin-top:4px}.invoice-footer{display:flex;flex-direction:column;align-items:flex-end;padding-top:20px;border-top:1px solid #333;gap:10px}.invoice-summary-row{display:flex;gap:40px;font-size:14px;color:#666;width:300px;justify-content:space-between}.invoice-summary-row strong{color:#333}.invoice-total-row{display:flex;gap:40px;font-size:18px;color:#111;width:300px;justify-content:space-between;margin-top:10px;padding-top:15px;border-top:1px dashed #ddd}.total-amount{font-size:24px;font-weight:800;color:#1a237e}.invoice-actions{margin-top:50px;text-align:center;background:#f5f7fa;padding:30px;border-radius:8px;width:100%;box-sizing:border-box}.btn-approve{background:#1a237e;color:#fff;border:none;padding:15px 50px;font-size:16px;font-weight:700;border-radius:4px;cursor:pointer;transition:background .2s}.btn-approve:hover{background:#0d1560}@media(max-width:768px){.co-modal-container.wide{width:100%;height:100%;border-radius:0}.co-modal-header{padding:20px}.co-modal-body{padding:20px 16px;background:#f0f0f0}.invoice-paper{padding:20px;box-shadow:none;border:none}.invoice-header{padding-bottom:20px;margin-bottom:20px}.invoice-title-row{flex-direction:column;align-items:flex-start;gap:10px}.invoice-meta{flex-direction:column;gap:5px;font-size:12px}.invoice-table-wrapper{overflow:visible}.invoice-table{display:block;width:100%;min-width:auto}.invoice-table thead{display:none}.invoice-table tbody{display:block}.invoice-table tr{display:block;background:#fff;border:1px solid #eee;border-radius:8px;margin-bottom:15px;padding:15px;box-shadow:0 2px 5px #00000008}.invoice-table td{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border:none;font-size:14px;text-align:right}.invoice-table td:before{content:attr(data-label);font-weight:600;color:#999;font-size:12px;margin-right:10px}.invoice-table td:first-child{display:block;text-align:left;border-bottom:1px dashed #eee;padding-bottom:10px;margin-bottom:10px}.invoice-table td:first-child:before{display:none}.item-name{font-size:16px;color:#111}.invoice-footer{width:100%;align-items:stretch}.invoice-summary-row,.invoice-total-row{width:100%;gap:0}.total-amount{font-size:22px}.invoice-actions{padding:20px;margin-top:30px}.btn-approve{width:100%}}:root{--mp-bg: #ffffff;--mp-text-main: #333333;--mp-text-gray: #888888;--mp-border: #e0e0e0;--k-brand: #F8EF99;--k-brand-dark: #e6dd88;--mp-transition: cubic-bezier(.19, 1, .22, 1);--mp-ease: cubic-bezier(.25, .46, .45, .94)}.mp-page-container{background-color:var(--mp-bg);min-height:100vh;display:flex;flex-direction:column;font-family:Pretendard,-apple-system,BlinkMacSystemFont,Roboto,sans-serif;color:var(--mp-text-main);padding:80px 20px;overflow-x:hidden}.mp-main-content{flex:1;width:100%;display:flex;justify-content:center;padding:0 20px 80px}.mp-inner-container{width:100%;max-width:1200px}.mp-reveal-mask{overflow:hidden;display:block}.mp-reveal-text{transform:translateY(110%);transition:transform 1.2s var(--mp-ease);display:block}.mp-reveal-text.mp-active{transform:translateY(0)}.mp-fade-up{opacity:0;transform:translateY(30px);transition:opacity .8s var(--mp-ease),transform .8s var(--mp-ease)}.mp-fade-up.mp-active{opacity:1;transform:translateY(0)}.mp-header-section{margin-bottom:60px}.mp-title{font-size:30px;font-weight:800;margin:0;letter-spacing:-1px;line-height:1;text-transform:uppercase;color:var(--mp-text-main)}.mp-divider-long{width:100%;height:2px;background-color:var(--mp-text-main);margin:20px 0}.mp-subtitle{font-size:16px;color:var(--mp-text-gray);font-weight:400;text-align:left}.mp-empty-state{padding:100px 0;text-align:center;border:1px dashed var(--mp-border)}.mp-empty-icon{font-size:40px;margin-bottom:20px;opacity:.3}.mp-project-card{border-bottom:1px solid var(--mp-border);transition:box-shadow .4s var(--mp-transition),border .4s,border-radius .4s;background-color:#fff;position:relative;overflow:hidden}.mp-project-card:hover{background-color:#fafafa}.mp-project-card.active{background-color:#fff;box-shadow:0 20px 60px -10px #0000001a;border-bottom:none;border-radius:4px;z-index:10;margin:20px 0}.mp-project-card.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background-color:var(--k-brand)}.mp-card-header{padding:40px 20px;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.mp-status-indicator{font-size:12px;font-weight:700;color:var(--mp-text-main);border:1px solid var(--mp-text-main);padding:4px 10px;border-radius:20px;display:inline-block;margin-bottom:10px}.mp-site-name{font-size:32px;font-weight:700;margin:0;letter-spacing:-1px;color:var(--mp-text-main)}.mp-site-addr{font-size:15px;color:var(--mp-text-gray);margin-top:8px}.mp-header-action{display:flex;align-items:center;gap:10px}.mp-expand-text{font-size:12px;font-weight:700;letter-spacing:1px;color:var(--mp-text-main)}.mp-toggle-btn{background:transparent;border:1px solid var(--mp-border);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s;color:var(--mp-text-main)}.mp-toggle-btn svg{width:20px;height:20px;transition:transform .3s}.mp-project-card.active .mp-toggle-btn{background-color:var(--mp-text-main);color:var(--k-brand);border-color:var(--mp-text-main);transform:rotate(180deg)}.mp-card-body{max-height:0;overflow:hidden;transition:max-height .6s var(--mp-transition)}.mp-project-card.active .mp-card-body{max-height:1200px}.mp-body-inner{padding:0 40px 60px}.mp-info-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:60px;margin-bottom:60px;border-top:1px solid var(--mp-border);padding-top:40px}.mp-label{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--mp-text-gray);margin-bottom:20px;display:block}.mp-data-row{display:flex;justify-content:space-between;margin-bottom:12px;font-size:15px}.mp-data-row span{color:var(--mp-text-gray)}.mp-data-row strong{font-weight:600;color:var(--mp-text-main)}.mp-data-row.highlight{background-color:transparent}.mp-data-row.highlight strong{color:#d32f2f}.mp-total-row{margin-top:20px;padding-top:15px;border-top:1px solid var(--mp-text-main);display:flex;justify-content:space-between;font-size:18px;font-weight:700;color:var(--mp-text-main)}.mp-partner-row{display:flex;justify-content:space-between;align-items:center}.mp-p-name{font-size:18px;font-weight:700;display:block;margin-bottom:10px;color:var(--mp-text-main)}.mp-chat-btn{padding:10px 20px;border:1px solid var(--mp-border);background-color:transparent;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;color:var(--mp-text-main)}.mp-chat-btn:hover{background-color:var(--k-brand);border-color:var(--k-brand);color:#333}.mp-actions-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}.mp-menu-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;padding:30px 10px;background-color:#fcfcfc;border:none;cursor:pointer;transition:all .3s var(--mp-transition);position:relative;overflow:hidden}.mp-menu-btn .icon-box{width:50px;height:50px;border-radius:50%;background-color:#fff;border:1px solid var(--mp-border);display:flex;align-items:center;justify-content:center;transition:all .3s;color:var(--mp-text-main)}.mp-menu-btn .btn-text{font-size:13px;font-weight:600;color:var(--mp-text-gray);transition:color .3s}.mp-menu-btn:hover{background-color:var(--k-brand);transform:translateY(-5px)}.mp-menu-btn:hover .icon-box{background-color:#333;border-color:#333;color:var(--k-brand)}.mp-menu-btn:hover .btn-text{color:#333}.mp-menu-btn.disabled{opacity:.3;cursor:not-allowed}.mp-menu-btn.disabled:hover{background-color:#fcfcfc;transform:none}.mp-menu-btn.disabled:hover .icon-box{background-color:#fff;border-color:var(--mp-border);color:var(--mp-text-gray)}@media(max-width:900px){.mp-info-grid{grid-template-columns:1fr;gap:40px}.mp-actions-grid{grid-template-columns:repeat(4,1fr)}.mp-card-header{padding:30px 20px}.mp-body-inner{padding:0 20px 40px}}@media(max-width:768px){.mp-main-content{padding:100px 20px 80px}.mp-title{font-size:30px}.mp-site-name{font-size:24px}.mp-actions-grid{grid-template-columns:repeat(3,1fr);gap:8px}.mp-menu-btn{padding:20px 5px}.mp-menu-btn .icon-box{width:40px;height:40px}.mp-menu-btn .btn-text{font-size:12px}}
