@import"https://cdn.rawgit.com/moonspam/NanumSquare/master/nanumsquare.css";.header-wallet{display:inline-flex;align-items:center;gap:8px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:6px 12px;font-size:13px;color:var(--text-secondary);white-space:nowrap}.header-wallet i{color:var(--primary-color)}.header-wallet .wallet-text{font-weight:600;color:var(--text-secondary)}.header-wallet .wallet-amount{font-weight:700;color:var(--text-primary)}.domain-renew-modal{max-height:90vh!important;overflow:visible!important}.domain-renew-modal .swal2-html-container{overflow:visible!important;max-height:none!important;padding:0 1.6em!important}.domain-renew-modal .swal2-input{max-width:100%!important;margin:.5em 0!important;padding:8px 12px!important;font-size:14px!important;height:auto!important;line-height:1.5!important}.domain-renew-modal .swal2-actions{margin-top:1em!important;padding-bottom:0!important}:root{--primary-color: #4285F4;--primary-hover: #3367D6;--secondary-color: #5F6368;--success-color: #34A853;--danger-color: #EA4335;--warning-color: #FBBC04;--info-color: #4285F4;--bg-primary: #202124;--bg-secondary: #303134;--bg-card: #3C4043;--bg-hover: #424548;--bg-surface: #1E1E1E;--text-primary: #E8EAED;--text-secondary: #9AA0A6;--text-muted: #80868B;--text-disabled: #5F6368;--border-color: #5F6368;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 0 1px rgba(0, 0, 0, .4);--shadow-lg: 0 4px 8px rgba(0, 0, 0, .4), 0 0 2px rgba(0, 0, 0, .5);--shadow-card: 0 2px 4px rgba(0, 0, 0, .3);--sidebar-width: 280px;--sidebar-collapsed-width: 88px;--header-height: 64px;--header-bg: #1a73e8;--header-bg-hover: #185abc;--header-text: #ffffff;--sidebar-bg: #f8f9fb;--spacing-unit: 8px;--transition: all .2s cubic-bezier(.4, 0, .2, 1);--transition-fast: all .15s cubic-bezier(.4, 0, .2, 1)}[data-theme=light]{--bg-primary: #F8F9FA;--bg-secondary: #FFFFFF;--bg-card: #FFFFFF;--bg-hover: #F1F3F4;--bg-surface: #FFFFFF;--text-primary: #202124;--text-secondary: #5F6368;--text-muted: #80868B;--text-disabled: #9AA0A6;--border-color: #DADCE0;--shadow: 0 1px 2px rgba(60, 64, 67, .3), 0 0 1px rgba(60, 64, 67, .4);--shadow-lg: 0 4px 8px rgba(60, 64, 67, .15), 0 0 2px rgba(60, 64, 67, .2);--shadow-card: 0 1px 2px rgba(60, 64, 67, .15);--sidebar-bg: #f8f9fb}[data-theme=dark]{--sidebar-bg: var(--bg-secondary)}[data-theme=dark] .sidebar{border-right:1px solid rgba(255,255,255,.08);box-shadow:none}[data-theme=dark] .sidebar-profile{border-bottom:1px solid rgba(255,255,255,.08)}[data-theme=dark] .sidebar .nav-link{color:var(--text-secondary)}[data-theme=dark] .sidebar .nav-link:hover{background-color:#ffffff14;color:var(--text-primary)}[data-theme=dark] .sidebar-nav li.active .nav-link{background-color:#ffffff29;color:var(--text-primary)}[data-theme=dark] .sidebar-nav li.active .nav-link i,[data-theme=dark] .sidebar-nav li.active .nav-link span{color:var(--text-primary)}[data-theme=dark] .sidebar-nav i{color:var(--text-muted)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Google Sans,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5;font-size:14px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sidebar{position:fixed;left:0;top:var(--header-height);height:calc(100vh - var(--header-height));width:var(--sidebar-width);background-color:var(--sidebar-bg);border-right:1px solid rgba(32,33,36,.12);display:flex;flex-direction:column;z-index:1600;transition:var(--transition);box-shadow:0 1px 4px #20212414}.sidebar-profile{padding:20px;border-bottom:1px solid rgba(32,33,36,.08);background-color:transparent}.user-profile{display:flex;align-items:center;gap:12px}.user-avatar-large{width:40px;height:40px;border-radius:50%;background:var(--primary-color);display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;font-weight:500}.user-name{font-weight:600;font-size:15px;color:var(--text-primary)}.user-role{font-size:13px;color:var(--text-muted)}.sidebar-nav{flex:1;overflow-y:auto;padding:8px}.sidebar-nav ul{list-style:none;padding-left:0}.sidebar-nav li{margin:2px 0}.nav-link{display:flex;align-items:center;gap:16px;padding:12px 16px;color:#3c4043;text-decoration:none;border-radius:24px;transition:var(--transition-fast);font-weight:500;font-size:14px;margin:2px 0}.nav-link:hover{background-color:#1a73e814;color:#1a73e8}.sidebar-nav li.active .nav-link{background-color:#1a73e82e;color:#1a73e8;font-weight:500}.sidebar-nav li.active .nav-link i,.sidebar-nav li.active .nav-link span{color:#1a73e8}.sidebar-nav i{font-size:20px;width:24px;color:#5f6368;display:flex;align-items:center;justify-content:center}.nav-link:hover i{color:#1a73e8}.main-content{margin-left:var(--sidebar-width);min-height:calc(100vh - var(--header-height));transition:var(--transition);padding-top:var(--header-height);background-color:var(--bg-primary)}.app-header{position:fixed;top:0;left:0;right:0;height:var(--header-height);background-color:var(--header-bg);display:flex;align-items:center;justify-content:space-between;padding:0 28px;z-index:1700;transition:var(--transition);box-shadow:0 2px 6px #1a73e840;color:var(--header-text)}.header-left,.header-right{display:flex;align-items:center;gap:16px}.header-left{flex:1 1 auto;min-width:0}.header-right{flex-shrink:0}.header-menu-toggle{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--header-text);cursor:pointer;transition:color .2s ease}.header-menu-toggle:hover{color:#ffffffd9}.header-title{font-size:18px;font-weight:600;letter-spacing:.4px}.header-icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 10px;border-radius:20px;background:transparent;border:none;color:var(--header-text);cursor:pointer;transition:color .2s ease;font-size:14px}.header-icon-btn i{font-size:18px}.header-icon-btn:hover{color:#ffffffd9}.header-divider{width:1px;height:28px;background-color:#ffffff4d}.header-action-text{font-weight:500;color:var(--header-text)}.header-logout-btn{color:var(--header-text)}body.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed-width)}body.sidebar-collapsed .main-content{margin-left:var(--sidebar-collapsed-width)}body.sidebar-collapsed .sidebar-profile{align-items:center;padding:20px 0}body.sidebar-collapsed .sidebar-profile .user-profile{justify-content:center}body.sidebar-collapsed .sidebar-profile .user-info{display:none}body.sidebar-collapsed .nav-link{justify-content:center;gap:0;border-radius:16px}body.sidebar-collapsed .nav-link .nav-text{display:none}body.sidebar-collapsed .sidebar-nav{padding:12px 8px}.mobile-menu-overlay{display:none;position:fixed;top:var(--header-height);left:0;width:100%;height:calc(100% - var(--header-height));background:#00000073;z-index:1500;opacity:0;transition:opacity .3s ease;pointer-events:none;touch-action:none}.mobile-menu-overlay.show{opacity:1;pointer-events:auto;touch-action:auto}.search-box{position:relative;display:flex;align-items:center}.search-box i{position:absolute;left:15px;color:var(--text-muted)}.search-box input{width:300px;padding:10px 15px 10px 45px;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:14px;transition:var(--transition)}.search-box input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #007bff1a}.header-right{display:flex;align-items:center;gap:12px}.header-btn{position:relative;width:40px;height:40px;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;font-size:18px;transition:var(--transition)}.header-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.header-btn .badge{position:absolute;top:-5px;right:-5px;background-color:var(--danger-color);color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:10px}@media(max-width:960px){.app-header{padding:0 18px}.dashboard-content,.vps-content,.templates-content,.settings-content,.billing-content,.support-content,.domain-content{padding:1px!important}.header-left{gap:10px}.header-title{font-size:15px;max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-right{gap:8px}.header-wallet{padding:5px 10px;font-size:12px}.header-wallet .wallet-amount{font-size:12px}}@media(max-width:480px){.app-header{padding:0 14px}.header-title{display:none}}.theme-toggle{width:40px;height:40px;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;color:var(--warning-color);cursor:pointer;font-size:18px;transition:var(--transition)}.theme-toggle:hover{background-color:var(--bg-hover)}#themeToggle{width:40px;height:40px;cursor:pointer;font-size:18px;transition:var(--transition);display:flex;align-items:center;justify-content:center}#themeToggle:hover{background-color:var(--bg-hover);transform:rotate(20deg)}[data-theme=light] .section,[data-theme=light] .instance-card,[data-theme=light] .modal-content{box-shadow:0 2px 8px #00000014}[data-theme=light] .plan-card,[data-theme=light] .os-card{box-shadow:0 1px 3px #0000001a}[data-theme=light] .plan-card:hover,[data-theme=light] .os-card:hover{box-shadow:0 4px 12px #8020fa26}.notification-container,.notification-btn{position:relative}.notification-badge{position:absolute;top:-5px;right:-5px;background-color:#ea4335;color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:10px;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;border:2px solid var(--bg-primary)}.notification-dropdown{position:absolute;top:calc(100% + 10px);right:0;width:380px;max-height:500px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-lg);z-index:1000;display:flex;flex-direction:column;overflow:hidden}.notification-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color)}.notification-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.notification-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:16px;padding:4px;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.notification-close:hover{color:var(--text-primary);background:var(--bg-hover);border-radius:4px}.notification-list{flex:1;overflow-y:auto;max-height:400px;padding:8px 0}.notification-item{display:flex;align-items:flex-start;padding:12px 20px;border-bottom:1px solid var(--border-color);cursor:pointer;transition:var(--transition);gap:12px}.notification-item:hover{background:var(--bg-hover)}.notification-item:last-child{border-bottom:none}.notification-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px;position:relative}.notification-icon i{color:#fff}.notification-content{flex:1;min-width:0}.notification-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.notification-message{font-size:13px;color:var(--text-secondary);line-height:1.4;margin-bottom:4px;word-break:break-word}.notification-time{font-size:11px;color:var(--text-muted)}.notification-empty{padding:40px 20px;text-align:center;color:var(--text-secondary)}.notification-empty i{font-size:48px;margin-bottom:12px;color:var(--text-muted);opacity:.5}.notification-loading{padding:40px 20px;text-align:center;color:var(--text-secondary)}.notification-footer{padding:12px 20px;border-top:1px solid var(--border-color)}.notification-view-all{width:100%;padding:10px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition)}.notification-view-all:hover{background:var(--bg-hover)}@media(max-width:768px){.notification-dropdown{width:calc(100vw - 40px);right:-20px;max-width:380px}}.notification-list::-webkit-scrollbar{width:6px}.notification-list::-webkit-scrollbar-track{background:var(--bg-secondary)}.notification-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.notification-list::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}[data-theme=light] input[type=text],[data-theme=light] input[type=password],[data-theme=light] input[type=email],[data-theme=light] textarea,[data-theme=light] select{background-color:#fff;border-color:#e2e8f0;color:#1a202c}[data-theme=light] input[type=text]:focus,[data-theme=light] input[type=password]:focus,[data-theme=light] input[type=email]:focus,[data-theme=light] textarea:focus,[data-theme=light] select:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #007bff1a}[data-theme=light] .dropdown-menu{background-color:#fff;border-color:#e2e8f0;box-shadow:0 4px 12px #00000026}[data-theme=light] .dropdown-item{color:#1a202c}[data-theme=light] .dropdown-item:hover{background-color:#f0f2f5}[data-theme=light] .modal{background-color:#0006}[data-theme=light] .activity-item{background-color:#fff;border-color:#e2e8f0}[data-theme=light] .stat-icon.blue{background-color:#007bff1a}[data-theme=light] .stat-icon.green{background-color:#28a7451a}[data-theme=light] .stat-icon.orange{background-color:#ffc1071a}[data-theme=light] .stat-icon.purple{background-color:#6f42c11a}[data-theme=light] .btn-primary{box-shadow:0 2px 8px #8020fa4d}[data-theme=light] .btn-secondary{background-color:#f8f9fa;color:#495057}[data-theme=light] .btn-secondary:hover{background-color:#e9ecef}[data-theme=light] label{color:#495057}[data-theme=light] .modal-header,[data-theme=light] .modal-footer{border-color:#e2e8f0}.dashboard-content,.vps-content,.templates-content,.settings-content,.billing-content,.domain-content,.support-content{padding:32px 40px}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.page-header h1{font-size:22px;font-weight:400;color:var(--text-primary);letter-spacing:0}.page-actions{display:flex;align-items:center;gap:16px}.wallet-summary{display:inline-flex;align-items:center;gap:8px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:8px 14px;font-size:14px;color:var(--text-secondary)}.wallet-summary .wallet-label{font-weight:600;color:var(--text-secondary)}.wallet-summary .wallet-value{font-weight:700;color:var(--text-primary)}.billing-topup{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-bottom:32px}.topup-summary-card,.topup-form-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:24px;box-shadow:0 12px 32px #0f172a2e}.topup-summary-card{display:flex;flex-direction:column;justify-content:center;gap:12px;text-align:left}.topup-label{font-size:14px;color:var(--text-secondary);font-weight:500}.topup-balance{font-size:32px;font-weight:700;color:var(--text-primary)}.topup-subtext{font-size:13px;color:var(--text-muted);margin:0}.topup-form-card label{font-size:14px;font-weight:600;color:var(--text-primary);display:block;margin-bottom:10px}.topup-form-card input[type=number]{width:100%;padding:12px 14px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-primary);color:var(--text-primary);font-size:15px;transition:border-color .2s ease,box-shadow .2s ease}.topup-form-card input[type=number]:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 4px #783bff2e}.topup-hint{font-size:12px;color:var(--text-muted);margin:10px 0 18px}.topup-form-card .btn-primary{width:100%;justify-content:center;margin-bottom:16px}.topup-alert{border-radius:10px;padding:12px 14px;font-size:13px;display:none}.topup-alert.info{background:#3b82f61f;color:#60a5fa}.topup-alert.success{background:#22c55e1f;color:#4ade80}.topup-alert.error{background:#ef44441f;color:#f87171}.toss-widget-section{border:1px solid var(--border-color);border-radius:16px;padding:24px;background:var(--bg-secondary);box-shadow:inset 0 0 0 1px #94a3b81a}.toss-widget-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.toss-widget-header p{margin:6px 0 18px;font-size:13px;color:var(--text-muted)}.toss-widget{margin-bottom:16px}.toss-agreement{margin-bottom:20px}.toss-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;border-radius:12px;background:var(--bg-secondary);color:var(--text-secondary);font-size:14px}.toss-agreement-fallback{padding:16px;border-radius:12px;background:#f8717114;color:var(--text-secondary);font-size:14px;text-align:center}.toss-pay-button{width:100%;justify-content:center;margin-bottom:10px}.modal-footer .toss-pay-button{width:auto;margin-bottom:0}.toss-test-notice{font-size:11px;color:var(--text-muted);text-align:center}.btn-primary:disabled,.btn-primary.disabled{background-color:var(--border-color);color:var(--text-secondary);cursor:not-allowed;box-shadow:none}.wallet-modal-banner{display:flex;flex-direction:column;gap:6px;margin-bottom:20px;padding:14px 16px;border-radius:8px;background:var(--bg-secondary);border:1px solid var(--border-color)}.wallet-modal-balance{font-size:15px;font-weight:600;color:var(--text-primary)}.wallet-modal-warning{font-size:13px;color:var(--warning-color, #f97316);font-weight:500}@media(max-width:768px){.page-actions{flex-direction:column;align-items:stretch;gap:12px}.wallet-summary{width:100%;justify-content:space-between}.billing-topup{grid-template-columns:1fr}.toss-widget-section{padding:20px}.page-actions .btn-primary{width:100%;justify-content:center}}.btn-primary{background-color:var(--primary-color);color:#fff;border:none;padding:10px 24px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:var(--transition-fast);box-shadow:0 1px 2px #3c40434d;text-transform:none;letter-spacing:.25px}.btn-primary:hover{background-color:var(--primary-hover);box-shadow:0 2px 4px #3c40434d}.btn-primary:active{box-shadow:0 1px 2px #3c40434d}.btn-ghost{background:transparent;color:var(--text-primary);border:1px solid var(--border-color);padding:8px 14px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:var(--transition-fast)}.btn-ghost:hover{background:var(--bg-hover);border-color:var(--primary-color);color:var(--primary-color)}.btn-ghost.danger{color:var(--danger-color);border-color:#ea433559}.btn-ghost.danger:hover{background:#ea433514;border-color:var(--danger-color)}.btn-sm{padding:6px 12px;font-size:12px;border-radius:6px}.btn-secondary{background-color:transparent;color:var(--primary-color);border:1px solid var(--border-color);padding:10px 24px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:var(--transition-fast);text-transform:none;letter-spacing:.25px}.btn-secondary:hover{background-color:var(--bg-hover);border-color:var(--primary-color)}.table-actions{display:inline-flex;gap:6px;justify-content:flex-end}.proxy-toggle{display:inline-flex;align-items:center;gap:8px}.proxy-pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.2px;border:1px solid var(--border-color);background:var(--bg-hover)}.proxy-pill.on{color:#f57c00;border-color:#f57c0059;background:#f57c0014}.proxy-pill.off{color:var(--text-secondary);background:#ffffff0a}.switch{position:relative;display:inline-block;width:42px;height:24px}.switch .slider{position:absolute;cursor:pointer;inset:0;background-color:var(--border-color);transition:.2s;border-radius:999px}.switch .slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.2s;border-radius:50%;box-shadow:0 1px 3px #00000040}.switch input:checked+.slider:before{transform:translate(18px)}.switch .slider.round{border-radius:999px}.switch .slider.round:before{border-radius:50%}.swal2-field{text-align:left;margin-bottom:10px}.swal2-field label{display:block;margin-bottom:4px;color:var(--text-secondary);font-size:12px}.proxy-switch-field{display:flex;align-items:center;gap:10px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--border-color)}.stat-item{display:flex;flex-direction:column;gap:8px}.stat-label{font-size:14px;color:var(--text-secondary);font-weight:400;letter-spacing:.15px}.stat-value{font-size:32px;font-weight:400;color:var(--text-primary);line-height:1.2;letter-spacing:-.5px}@media(max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:20px}}@media(max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:16px}.stat-value{font-size:28px}}@media(max-width:480px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.stat-label{font-size:12px}.stat-value{font-size:24px}}.section{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;padding:24px;margin-bottom:24px;box-shadow:var(--shadow-card);overflow:visible}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.section-header h2{font-size:16px;font-weight:500;color:var(--text-primary);letter-spacing:.15px}.section-actions{display:flex;gap:12px}.link{color:var(--primary-color);text-decoration:none;font-weight:500;transition:var(--transition)}.link:hover{text-decoration:underline}.instances-toolbar{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--border-color);margin-bottom:16px}.toolbar-left,.toolbar-right{display:flex;align-items:center;gap:8px}.filter-input{padding:8px 16px;border:1px solid var(--border-color);border-radius:4px;background-color:var(--bg-card);color:var(--text-primary);font-size:14px;width:300px;transition:var(--transition-fast)}.filter-input:focus{outline:none;border-color:var(--primary-color);border-width:2px}.instances-table-container{overflow-x:auto;overflow-y:visible}.instances-grid-mobile{display:none;flex-direction:column;gap:16px}.instance-card-mobile{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;padding:16px;box-shadow:var(--shadow-card)}.instance-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.instance-card-name{font-size:16px;font-weight:600;color:var(--text-primary)}.instance-card-status-wrapper{display:flex;align-items:center}.instance-card-body{margin-bottom:12px}.instance-card-info{display:flex;flex-direction:column;gap:8px}.info-row{display:flex;justify-content:space-between;align-items:center;font-size:14px}.info-label{color:var(--text-secondary);font-weight:400}.info-value{color:var(--text-primary);font-weight:500}.instance-card-footer{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding-top:12px;border-top:1px solid var(--border-color)}.instances-table{width:100%;border-collapse:collapse;background-color:var(--bg-card)}.instances-table thead{background-color:var(--bg-surface);border-bottom:1px solid var(--border-color)}.instances-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.instances-table td{padding:12px 16px;border-bottom:1px solid var(--border-color);font-size:14px;color:var(--text-primary);white-space:nowrap}.instances-table tbody tr{transition:var(--transition-fast)}.instances-table tbody tr:hover{background-color:var(--bg-hover)}.instances-table tbody tr:last-child td{border-bottom:none}.checkbox-col{width:40px;text-align:center}.checkbox-col input[type=checkbox]{cursor:pointer;width:16px;height:16px}.actions-col{width:120px;text-align:right}.instance-table-status{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:400}.instance-table-status .status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.instance-table-status.running{color:var(--success-color)}.instance-table-status.running .status-dot{background-color:var(--success-color);box-shadow:0 0 0 2px #34a85333}.instance-table-status.stopped{color:var(--text-muted)}.instance-table-status.stopped .status-dot{background-color:var(--text-muted)}.instance-table-status.pending{color:var(--warning-color)}.instance-table-status.pending .status-dot{background-color:var(--warning-color);box-shadow:0 0 0 2px #f59e0b40}.instance-table-status.connection-lost{color:var(--danger-color)}.instance-table-status.connection-lost .status-dot{background-color:var(--danger-color);box-shadow:0 0 0 2px #ea433540}.os-cell{display:inline-flex;align-items:center;gap:8px}.os-mini-icon{width:18px;height:18px;display:inline-block;background-repeat:no-repeat;background-position:center;background-size:contain}.os-mini-linux{background-image:url(/assets/os/linux-tux.png)}.os-mini-windows{background-image:url(/assets/os/windows-logo.png)}.regions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;margin-bottom:24px}.region-card{border:1px solid var(--border-color);border-radius:10px;padding:16px;background:var(--bg-secondary);cursor:pointer;transition:var(--transition);display:flex;flex-direction:column;gap:10px}.region-card:hover{border-color:var(--primary-color);box-shadow:var(--shadow-card)}.region-card.selected{border-color:var(--primary-color);background:#4285f414;box-shadow:0 6px 16px #4285f433}.region-card.offline{opacity:.85}.region-card.offline .region-warning{color:var(--warning-color)}.region-card .region-header{display:flex;justify-content:space-between;align-items:center}.region-card .region-name{font-weight:600;font-size:15px}.region-card .region-code{font-size:12px;color:var(--text-secondary)}.region-card .region-meta{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-secondary)}.region-card .region-description{font-size:12px;line-height:1.4;color:var(--text-muted)}.region-card .region-warning{font-size:12px;color:var(--warning-color);font-weight:600}.empty-region{padding:24px;text-align:center;color:var(--text-secondary);border:1px dashed var(--border-color);border-radius:8px;background:var(--bg-secondary)}.region-card.loading{align-items:center;justify-content:center;color:var(--text-secondary);font-size:14px}.instance-row-clickable.connection-issue,.instance-card-mobile.connection-issue{position:relative}.table-action-btn.ruleset-applied i{color:var(--primary-color)}.instance-row-clickable.connection-issue:before,.instance-card-mobile.connection-issue:before{content:"연결 끊김";position:absolute;top:-8px;right:16px;font-size:11px;font-weight:600;color:var(--danger-color)}.table-action-btn[disabled],.table-menu-btn[disabled],.dropdown-toggle[disabled]{cursor:not-allowed;opacity:.4;pointer-events:none}.table-action-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:6px 12px;border-radius:4px;font-size:13px;transition:var(--transition-fast);display:inline-flex;align-items:center;gap:6px}.table-action-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.table-action-btn.danger:hover{background-color:#ea43351a;color:var(--danger-color)}.table-menu-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:4px;transition:var(--transition-fast)}.table-menu-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.empty-state{text-align:center;padding:60px 20px;color:var(--text-secondary)}.empty-state i{color:var(--text-muted)}.empty-state .btn-primary{margin-top:8px}.instance-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--border-color);background-color:var(--bg-surface)}.instance-status{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600}.status-dot{width:8px;height:8px;border-radius:50%}.instance-status.running{color:var(--success-color)}.instance-status.running .status-dot{background-color:var(--success-color);box-shadow:0 0 8px var(--success-color);animation:pulse 2s infinite}.instance-status.stopped{color:var(--text-muted)}.instance-status.stopped .status-dot{background-color:var(--text-muted)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.action-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:6px;transition:var(--transition)}.action-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.instance-body{padding:24px;text-align:center}.instance-icon{font-size:48px;margin-bottom:12px;color:var(--primary-color)}.instance-name{font-size:18px;font-weight:600;margin-bottom:16px}.instance-info{display:flex;flex-direction:column;gap:8px}.info-item{display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px;color:var(--text-secondary)}.info-item i{color:var(--text-muted)}.instance-footer{padding:16px 20px;border-top:1px solid var(--border-color)}.resource-usage{display:flex;flex-direction:column;gap:12px}.resource-item{display:flex;align-items:center;gap:10px}.resource-label{font-size:12px;color:var(--text-muted);width:50px}.progress-bar{flex:1;height:6px;background-color:var(--bg-primary);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary-color),var(--info-color));border-radius:3px;transition:width .3s ease}.resource-value{font-size:12px;font-weight:600;color:var(--text-primary);width:40px;text-align:right}.activity-list{display:flex;flex-direction:column;gap:16px}.activity-item{display:flex;align-items:center;gap:16px;padding:16px;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;transition:var(--transition)}.activity-item:hover{background-color:var(--bg-hover)}.activity-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px}.activity-icon.blue{background-color:#007bff1a;color:var(--primary-color)}.activity-icon.green{background-color:#28a7451a;color:var(--success-color)}.activity-icon.orange{background-color:#ffc1071a;color:var(--warning-color)}.activity-details{flex:1}.activity-pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:20px;padding:16px 0}.pagination-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;min-width:40px;height:40px;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition)}.pagination-btn:hover:not(:disabled){background-color:var(--bg-hover);border-color:var(--primary-color);color:var(--primary-color)}.pagination-btn.active{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff;cursor:default}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-ellipsis{padding:0 8px;color:var(--text-secondary);font-size:14px}@media(max-width:768px){.pagination-btn{padding:6px 12px;min-width:36px;height:36px;font-size:13px}.pagination-btn span{display:none}.pagination-btn i{margin:0}}.activity-text{font-size:14px;margin-bottom:4px}html{touch-action:manipulation;-webkit-touch-callout:none}body{touch-action:manipulation;-webkit-overflow-scrolling:touch}button,a,input,select,textarea,[role=button],[onclick],.btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.scrollable,[style*=overflow],.table-container,.modal-content{-webkit-overflow-scrolling:touch;touch-action:pan-y}@media(max-width:1024px){.sidebar{transform:translate(-100%);transition:transform .3s ease;z-index:1600}.sidebar.mobile-open{transform:translate(0)}.main-content{margin-left:0;padding-top:var(--header-height)}.app-header{left:0;padding:0 18px}.mobile-menu-overlay{display:block}.page-header{margin-top:0}.search-box input{width:200px}.instances-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media(max-width:768px){.page-header{flex-direction:column;align-items:flex-start;gap:16px;margin-top:0}.stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.stat-label{font-size:12px}.stat-value{font-size:24px}.instances-table-container{display:none}.vps-content .instances-table-container,.vps-content .instances-table{display:none!important}.vps-content .instances-grid-mobile{display:flex!important}.dashboard-content .instances-table-container{display:block}.dashboard-content .instances-grid-mobile{display:none!important}.instances-grid-mobile{display:flex!important}.instances-toolbar{flex-direction:column;gap:12px;align-items:stretch}.toolbar-left,.toolbar-right,.filter-input{width:100%}.search-box{display:none}.section-header{flex-direction:column;align-items:flex-start;gap:12px}.header-action-text{display:none}.header-icon-btn{padding:10px}}.modal{display:none;position:fixed;inset:0;z-index:2000;width:100%;height:100%;background:linear-gradient(135deg,#4f639b3d,#2d334924);-webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%)}.modal.active{display:flex;align-items:center;justify-content:center;padding:24px}.modal-content{position:relative;margin:0 auto;padding:0;width:100%;max-width:640px;max-height:calc(100vh - 48px);background:linear-gradient(145deg,#fff,#f7f9ff);border:1px solid rgba(82,109,255,.08);border-radius:28px;box-shadow:0 48px 140px #243e8e2e,0 24px 70px #1a237e1f;display:flex;flex-direction:column;overflow:hidden;animation:modalSlideIn .25s cubic-bezier(.33,1,.68,1)}.swal2-container{z-index:12000!important}.swal2-popup{z-index:12001!important}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:28px 32px 18px;border-bottom:1px solid rgba(82,109,255,.08)}.modal-header h3{margin:0;font-size:22px;font-weight:600;color:#111827;letter-spacing:-.01em}.modal-close{background:none;border:none;color:#475569e6;cursor:pointer;font-size:20px;padding:8px;border-radius:999px;transition:all .2s ease}.modal-close:hover{background:#3b82f61f;color:#2563eb}.modal-body{padding:12px 32px 32px;flex:1;overflow-y:auto;max-height:calc(100vh - 200px)}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:24px 32px 32px;border-top:1px solid rgba(82,109,255,.08);flex-shrink:0}.modal-footer .btn-primary,.modal-footer .btn-secondary{min-width:112px;justify-content:center;border-radius:999px}[data-theme=dark] .modal{background:linear-gradient(135deg,#0f172ac7,#0f172a9e);-webkit-backdrop-filter:blur(20px) saturate(140%);backdrop-filter:blur(20px) saturate(140%)}[data-theme=dark] .modal-content{background:linear-gradient(150deg,#1e293beb,#0f172af5);border-color:#94a3b83d;box-shadow:0 38px 120px #0f172a8c,0 18px 60px #0f172a73}[data-theme=dark] .modal-header{border-color:#94a3b82e}[data-theme=dark] .modal-header h3{color:#e2e8f0}[data-theme=dark] .modal-close{color:#e2e8f0b3}[data-theme=dark] .modal-close:hover{background:#60a5fa29;color:#bfdbfe}[data-theme=dark] .modal-body{color:#e2e8f0}[data-theme=dark] .modal-footer{border-color:#94a3b82e}[data-theme=dark] .modal-grid .form-group label{color:#e2e8f0e0}[data-theme=dark] .modal-grid .form-group input,[data-theme=dark] .modal-grid .form-group textarea,[data-theme=dark] .modal-grid .form-group select{background:#0f172ad9;border-color:#94a3b857;color:#f8fafc}[data-theme=dark] .modal-grid .form-group input:focus,[data-theme=dark] .modal-grid .form-group textarea:focus,[data-theme=dark] .modal-grid .form-group select:focus{border-color:#60a5fab3;box-shadow:0 0 0 4px #60a5fa2e}@media(max-width:768px){.modal.active{padding:16px}.modal-content{border-radius:22px;max-height:calc(100vh - 32px)}.modal-body{padding:10px 20px 24px;max-height:calc(100vh - 180px)}.modal-header{padding:22px 20px 14px}.modal-footer{padding:20px;flex-direction:column;gap:10px}.modal-footer .btn-primary,.modal-footer .btn-secondary{width:100%;justify-content:center}}.modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px;margin-top:20px}.modal-grid .form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:0}.modal-grid .form-group label{font-size:13px;font-weight:600;color:#374151;letter-spacing:.01em}.modal-grid .form-group input,.modal-grid .form-group textarea,.modal-grid .form-group select{border-radius:14px;border:1px solid rgba(148,163,184,.36);padding:12px 16px;font-size:14px;color:#1f2937;background:#ffffffeb;transition:border-color .2s ease,box-shadow .2s ease}.modal-grid .form-group input:focus,.modal-grid .form-group textarea:focus,.modal-grid .form-group select:focus{outline:none;border-color:#4f46e5b3;box-shadow:0 0 0 4px #4f46e51f}.modal-grid .form-group.full{grid-column:span 2}@media(max-width:768px){.modal-grid{grid-template-columns:1fr;gap:16px}.modal-grid .form-group.full{grid-column:span 1}}.form-group{margin-bottom:16px}.form-section{margin-bottom:24px;padding:20px;background-color:var(--bg-surface);border-radius:8px;border:1px solid var(--border-color)}.form-section-title{margin:0 0 16px;font-size:16px;font-weight:500;color:var(--text-primary);letter-spacing:.15px}@media(max-width:768px){.form-group{margin-bottom:12px}.form-row{gap:12px}.form-section{margin-bottom:16px;padding:12px}.form-section-title{margin-bottom:12px;font-size:13px}}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.status-badge.running{background-color:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.2)}.status-badge.stopped{background-color:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.status-badge.loading{background-color:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.2)}.status-badge i{font-size:10px}.fa-spin{animation:spin 1s linear infinite}.form-group input.error,.form-group select.error{border-color:#ef4444;box-shadow:0 0 0 2px #ef44441a}.field-error{color:#ef4444;font-size:12px;margin-top:4px;display:block}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group label{display:block;margin-bottom:8px;font-weight:400;font-size:14px;color:var(--text-primary);letter-spacing:.15px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 16px;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:14px;transition:var(--transition-fast);font-family:Roboto,sans-serif}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);border-width:2px;box-shadow:0 0 0 2px #4285f433}.empty-state{text-align:center;padding:60px 20px;color:var(--text-muted)}.empty-state i{color:#fff}.empty-state h3{font-size:24px;margin-bottom:12px;color:var(--text-primary)}.empty-state p{font-size:16px;margin-bottom:24px}.vnc-modal{max-width:90vw;max-height:90vh;width:1200px}.vnc-body{padding:0;height:600px}.vnc-body iframe{border:none;border-radius:0 0 8px 8px}.dropdown{position:relative;display:inline-block}.dropdown-menu{display:none;position:fixed;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg);min-width:160px;z-index:10000;margin-top:4px}.dropdown-menu.show{display:block}.dropdown-item{display:flex;align-items:center;gap:8px;padding:12px 16px;color:var(--text-primary);text-decoration:none;font-size:14px;transition:var(--transition)}.dropdown-item:hover{background-color:var(--bg-hover)}.dropdown-item.danger{color:var(--danger-color)}.dropdown-item.danger:hover{background-color:#dc35451a}.dropdown-divider{height:1px;background-color:var(--border-color);margin:4px 0}.loading-overlay{display:none;position:fixed;z-index:3000;left:0;top:0;width:100%;height:100%;background-color:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.loading-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:var(--text-primary)}.loading-spinner i{font-size:32px;margin-bottom:16px;color:var(--primary-color)}.loading-spinner span{display:block;font-size:16px;font-weight:500}.success-message{background-color:#28a7451a;border:1px solid var(--success-color);color:var(--success-color)}.error-message{background-color:#dc35451a;border:1px solid var(--danger-color);color:var(--danger-color)}.action-buttons{display:flex;align-items:center;gap:4px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.empty-card{text-align:center;padding:40px 20px;background:linear-gradient(135deg,var(--bg-card) 0%,var(--bg-hover) 100%);border:2px dashed var(--border-color);border-radius:12px;transition:var(--transition)}.empty-card:hover{border-color:var(--primary-color);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.empty-card .card-header{margin-bottom:20px}.empty-card .vps-info h3{font-size:24px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.empty-card .vps-info p{color:var(--text-secondary);font-size:16px}.empty-card .card-body{margin-bottom:30px}.empty-content{display:flex;flex-direction:column;align-items:center;gap:16px}.empty-icon{font-size:48px;color:var(--text-muted);opacity:.6}.empty-content p{color:var(--text-secondary);font-size:16px;line-height:1.5;max-width:300px}.empty-card .card-footer{display:flex;justify-content:center}.create-vps-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;font-size:16px;font-weight:600;border-radius:8px;transition:var(--transition);background:linear-gradient(135deg,var(--primary-color) 0%,#0056b3 100%);border:none;color:#fff;cursor:pointer}.create-vps-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #007bff4d}.create-vps-btn i{font-size:18px}.plans-grid,.os-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-bottom:8px}.plan-card,.os-card{background-color:var(--bg-card);border:2px solid var(--border-color);border-radius:12px;padding:20px;cursor:pointer;transition:all .3s ease;position:relative}.plan-card:hover,.os-card:hover{border-color:var(--primary-color);transform:translateY(-4px);box-shadow:0 8px 24px #8020fa33}.plan-card.selected,.os-card.selected{border-color:var(--primary-color);background:linear-gradient(135deg,#8020fa1a,#572efa0d);box-shadow:0 4px 16px #8020fa4d}.plan-card.selected:after,.os-card.selected:after{content:"✓";position:absolute;top:12px;right:12px;width:24px;height:24px;background:var(--primary-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}.plan-card.disabled,.os-card.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.plan-header,.os-header{display:flex;flex-direction:column;align-items:center;margin-bottom:16px}.plan-name,.os-name{font-size:18px;font-weight:600;margin-bottom:8px;text-align:center}.plan-price,.os-version{font-size:16px;font-weight:700;color:var(--primary-color)}.plan-specs,.os-info{display:flex;flex-direction:column;gap:8px;font-size:14px}.plan-spec-item,.os-info-item{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--border-color)}.plan-spec-item:last-child,.os-info-item:last-child{border-bottom:none}.plan-spec-label,.os-info-label{color:var(--text-secondary);font-weight:500}.plan-spec-value,.os-info-value{color:var(--text-primary);font-weight:600}.os-icon-wrapper{width:64px;height:64px;margin-bottom:12px;display:flex;align-items:center;justify-content:center}.os-icon{width:100%;height:100%;object-fit:contain}.os-icon-fallback{display:flex!important}.switch{position:relative;display:inline-block;width:48px;height:24px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:var(--border-color);transition:var(--transition);border-radius:24px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:var(--transition);border-radius:50%}.switch input:checked+.slider{background-color:var(--primary-color)}.switch input:checked+.slider:before{transform:translate(24px)}.switch input:disabled+.slider{opacity:.5;cursor:not-allowed}.os-version-item{transition:all .2s ease}.os-version-item:hover{background-color:var(--bg-hover);border-color:var(--primary-color)!important}.os-version-item.selected{background-color:#8020fa1a;border-color:var(--primary-color)!important}@media(max-width:768px){.plans-grid,.os-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.plan-card,.os-card{padding:16px}.plan-name,.os-name{font-size:16px}.plan-price,.os-version{font-size:14px}}.instance-detail-modal{max-width:1200px;width:90%;max-height:90vh}.instance-detail-loading{padding:60px;text-align:center;color:var(--text-secondary)}.instance-detail-loading i{font-size:32px;margin-bottom:16px;color:var(--primary-color)}.instance-detail-content{padding:0}.detail-section{margin-bottom:32px;padding:24px;background:var(--bg-surface);border-radius:8px;border:1px solid var(--border-color)}.detail-section:last-child{margin-bottom:0}.detail-section h3{margin:0 0 20px;font-size:18px;font-weight:500;color:var(--text-primary)}.detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.detail-item{display:flex;flex-direction:column;gap:8px}.detail-label{font-size:13px;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:15px;color:var(--text-primary)}.resource-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}.resource-stat{padding:20px;background:var(--bg-card);border-radius:8px;border:1px solid var(--border-color)}.resource-stat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.resource-stat-label{font-size:14px;color:var(--text-secondary);font-weight:500}.resource-stat-value{font-size:24px;font-weight:600;color:var(--text-primary)}.resource-progress-bar{width:100%;height:8px;background:var(--bg-secondary);border-radius:4px;overflow:hidden;margin-bottom:8px}.resource-progress-fill{height:100%;transition:width .3s ease;border-radius:4px}.resource-stat-info{font-size:13px;color:var(--text-secondary)}.graph-container{position:relative;height:250px;margin-bottom:24px;padding:16px;background:var(--bg-card);border-radius:8px;border:1px solid var(--border-color)}.graph-container:last-child{margin-bottom:0}.graph-timeframe-selector{display:flex;gap:8px}.timeframe-btn{padding:6px 12px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:4px;cursor:pointer;font-size:13px;transition:var(--transition)}.timeframe-btn:hover{background:var(--bg-hover);border-color:var(--primary-color)}.timeframe-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}@media(max-width:768px){.instance-detail-modal{width:95%;max-height:95vh}.detail-section{padding:16px}.detail-grid,.resource-stats-grid{grid-template-columns:1fr;gap:16px}.graph-container{height:200px;padding:12px}.graph-timeframe-selector{flex-wrap:wrap}.timeframe-btn{flex:1;min-width:80px}}.rulesets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:24px;margin-top:20px}.ruleset-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;padding:20px;transition:var(--transition)}.ruleset-card:hover{border-color:var(--primary-color);box-shadow:var(--shadow-lg)}.ruleset-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.ruleset-card-name{margin:0;font-size:18px;font-weight:500;color:var(--text-primary);flex:1}.ruleset-card-actions{display:flex;gap:8px}.btn-icon{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);padding:6px 10px;border-radius:4px;cursor:pointer;transition:var(--transition);font-size:14px}.btn-icon:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--primary-color)}.btn-icon.danger:hover{background:var(--danger-color);color:#fff;border-color:var(--danger-color)}.ruleset-card-body{margin-bottom:16px}.ruleset-card-description{color:var(--text-secondary);font-size:14px;margin:0 0 12px;line-height:1.6}.ruleset-card-stats{display:flex;gap:16px;flex-wrap:wrap}.stat-item{display:flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:13px}.stat-item i{color:var(--primary-color)}.ruleset-card-footer{padding-top:16px;border-top:1px solid var(--border-color)}.ruleset-card-footer .btn-primary{width:100%;justify-content:center}.rules-section{border-top:1px solid var(--border-color);padding-top:24px}.rules-list{display:flex;flex-direction:column;gap:16px}.rule-item{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;padding:16px}.rule-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.rule-item-number{font-weight:500;color:var(--text-primary);font-size:14px}.rule-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.rule-form-grid .form-group{margin-bottom:0}.rule-form-grid label{display:block;margin-bottom:6px;font-size:13px;color:var(--text-secondary);font-weight:500}.rule-form-grid select,.rule-form-grid input{width:100%;padding:10px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-secondary);color:var(--text-primary);font-size:14px}.ruleset-rules-table{width:100%;border-collapse:collapse;margin-top:16px}.ruleset-rules-table th,.ruleset-rules-table td{padding:12px;text-align:left;border-bottom:1px solid var(--border-color)}.ruleset-rules-table th{background:var(--bg-secondary);color:var(--text-primary);font-weight:500;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.ruleset-rules-table td{color:var(--text-secondary);font-size:14px}.ruleset-rules-table tr:hover{background:var(--bg-hover)}.table-responsive{overflow-x:auto}.instances-list{max-height:400px;overflow-y:auto}.instance-select-item{margin-bottom:8px}.instance-select-item label:hover{background:var(--bg-hover);border-color:var(--primary-color)}.instance-select-item input[type=checkbox]:checked+div{color:var(--primary-color)}@media(max-width:768px){.rulesets-grid{grid-template-columns:1fr;gap:16px}.rule-form-grid{grid-template-columns:1fr}.ruleset-rules-table{font-size:12px}.ruleset-rules-table th,.ruleset-rules-table td{padding:8px}}:root{--primary-color: #03c75a;--primary-hover: #02b150;--secondary-color: #5f6368;--success-color: #0fbf60;--danger-color: #e53935;--warning-color: #f6b400;--info-color: #2d7ff9;--bg-primary: #f5f6f7;--bg-secondary: #ffffff;--bg-card: #ffffff;--bg-hover: #f0f2f4;--bg-surface: #ffffff;--text-primary: #1f2328;--text-secondary: #4b5563;--text-muted: #6b7280;--text-disabled: #9aa0a6;--border-color: #e5e8eb;--shadow: 0 1px 2px rgba(31, 35, 40, .08);--shadow-lg: 0 12px 28px rgba(31, 35, 40, .12);--shadow-card: 0 8px 18px rgba(31, 35, 40, .08);--header-height: 64px;--header-bg: #ffffff;--header-text: #1f2328;--sidebar-bg: #ffffff}[data-theme=dark]{--bg-primary: #0f1317;--bg-secondary: #14181d;--bg-card: #171c22;--bg-hover: #1c232b;--bg-surface: #171c22;--text-primary: #e8eaed;--text-secondary: #c5c9d1;--text-muted: #9aa0a6;--text-disabled: #7a8087;--border-color: #2a3038;--shadow: 0 1px 2px rgba(0, 0, 0, .45);--shadow-lg: 0 16px 32px rgba(0, 0, 0, .5);--shadow-card: 0 10px 20px rgba(0, 0, 0, .45);--header-bg: #14181d;--header-text: #e8eaed;--sidebar-bg: #14181d}body{font-family:Noto Sans KR,Apple SD Gothic Neo,Malgun Gothic,Segoe UI,sans-serif;background:linear-gradient(180deg,#f7f8f9,#eef1f4);color:var(--text-primary);font-size:14px}[data-theme=dark] body{background:linear-gradient(180deg,#0f1317,#11161b)}.app-header{background:var(--header-bg);color:var(--header-text);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow)}.header-title{font-weight:600;letter-spacing:0}.header-icon-btn{background:transparent;border-radius:8px;color:var(--header-text)}.header-icon-btn:hover{background:var(--bg-hover);color:var(--header-text)}.sidebar{background:var(--sidebar-bg);border-right:1px solid var(--border-color);box-shadow:none}.sidebar-profile{border-bottom:1px solid var(--border-color)}.user-avatar-large{background:#e9f9f0;color:var(--primary-color)}.nav-link{border-radius:10px;color:var(--text-secondary);font-weight:500}.nav-link:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-nav li.active .nav-link{background:#03c75a1f;color:var(--primary-color)}.sidebar-nav li.active .nav-link i,.sidebar-nav li.active .nav-link span{color:var(--primary-color)}.card,.section,.section-card,.stat-card,.topup-summary-card,.topup-form-card,.resource-stat-card,.ruleset-card,.region-card,.plan-card,.os-card,.instance-card,.instance-card-mobile,.empty-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-card)}.page-header{border-bottom:1px solid var(--border-color)}.page-header h1{font-size:20px;font-weight:600;color:var(--text-primary)}.btn-primary{background:var(--primary-color);border-radius:8px;box-shadow:none}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{background:#fff;color:var(--text-primary);border:1px solid var(--border-color);border-radius:8px}.btn-secondary:hover{background:var(--bg-hover);border-color:#cfd4d9}.btn-ghost{border-radius:8px}input,select,textarea{border-radius:8px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary)}input:focus,select:focus,textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #03c75a33}table th{background:#f7f8fa;color:#6b7280;font-size:12px;text-transform:none;letter-spacing:.02em}.table-container{border:1px solid var(--border-color);border-radius:12px;background:var(--bg-card)}.notification-dropdown{border-radius:14px;border-color:var(--border-color);box-shadow:var(--shadow-lg)}.notification-icon{background:#03c75a26}.notification-icon i{color:var(--primary-color)}.modal{background:#0f172873}.modal-content{background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px}.status.pending,.status.processing{background:#f6b4001f;color:#b7791f}.status.running,.status.active,.status.registered{background:#03c75a24;color:#059669}.status.failed,.status.cancelled{background:#e5393524;color:#dc2626}:root{--sidebar-width: 240px;--sidebar-collapsed-width: 72px;--header-height: 56px;--radius-md: 10px;--radius-sm: 8px;--spacing-unit: 8px}.main-content{background:var(--bg-primary);padding:calc(var(--header-height) + 24px) 28px 40px}.page-header{margin-bottom:24px;padding-bottom:12px}.app-header{height:var(--header-height);padding:0 20px}.header-left{gap:12px}.header-title{font-size:16px;font-weight:700}.header-menu-toggle{width:32px;height:32px;border-radius:6px;background:var(--bg-hover)}.header-menu-toggle:hover{background:#03c75a24}.sidebar{top:var(--header-height);height:calc(100vh - var(--header-height))}.sidebar-profile{padding:16px 18px}.user-avatar-large{width:36px;height:36px;font-size:16px}.user-name{font-size:14px;font-weight:700}.user-role{font-size:12px}.sidebar-nav{padding:8px 12px 16px}.nav-link{padding:10px 12px;gap:12px;font-size:14px}.sidebar-nav i{font-size:18px;width:20px}body.sidebar-collapsed .sidebar-profile{padding:16px 0}body.sidebar-collapsed .nav-link{border-radius:8px}.card,.section,.section-card,.stat-card,.topup-summary-card,.topup-form-card,.resource-stat-card,.ruleset-card,.region-card,.plan-card,.os-card,.instance-card,.instance-card-mobile,.empty-card{padding:20px}.card h2,.section h2{font-size:16px;font-weight:700;margin-bottom:12px}.form-grid{gap:12px}.form-grid input[type=text],.form-grid input[type=number],.form-grid select,.dns-add-form input[type=text],.nameserver-section input[type=text],textarea{padding:10px 12px;border-radius:8px;border:1px solid var(--border-color);background:#fff;font-size:14px}.form-grid input[type=text]:focus,.form-grid input[type=number]:focus,.form-grid select:focus,.dns-add-form input[type=text]:focus,.nameserver-section input[type=text]:focus,textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #03c75a2e}label{font-size:13px;font-weight:600;color:var(--text-secondary)}.btn-primary,.btn-secondary,.btn-ghost,button{border-radius:8px}.btn-primary,.btn-secondary{padding:10px 18px;font-weight:600}.table-container table{min-width:720px}table th{font-weight:600;background:#f7f8fa}table td{padding:12px 10px}.notification-dropdown{width:360px}.modal-content{padding:20px}@media(max-width:1024px){.main-content{padding:calc(var(--header-height) + 16px) 18px 32px}.sidebar{width:240px}}@media(max-width:768px){.main-content{padding:calc(var(--header-height) + 12px) 14px 24px}.header-title{font-size:14px}}:root{--font-sans: "Sora", "Space Grotesk", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: "Space Grotesk", "Sora", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--bg-base: #f5f8ff;--bg-surface: #ffffff;--bg-muted: #eef3ff;--bg-glass: rgba(255, 255, 255, .72);--border-subtle: rgba(37, 99, 235, .12);--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--primary: #2563eb;--primary-strong: #1d4ed8;--primary-glow: rgba(37, 99, 235, .25);--accent: #14b8a6;--accent-strong: #0f766e;--warning: #f97316;--danger: #ef4444;--shadow-soft: 0 18px 45px rgba(15, 23, 42, .08);--shadow-card: 0 20px 60px rgba(15, 23, 42, .08);--shadow-floating: 0 30px 80px rgba(37, 99, 235, .18);--radius-lg: 20px;--radius-md: 14px;--radius-sm: 10px;--transition: .18s ease;--header-height: 72px;--sidebar-width: 280px;--sidebar-collapsed-width: 90px}body{margin:0;font-family:var(--font-sans);color:var(--text-primary);background:radial-gradient(circle at top left,rgba(37,99,235,.12),transparent 40%),radial-gradient(circle at 20% 30%,rgba(20,184,166,.12),transparent 45%),var(--bg-base);min-height:100vh}[data-theme=dark]{--bg-base: #0b1220;--bg-surface: #121a2b;--bg-muted: #1c2540;--bg-glass: rgba(15, 23, 42, .8);--border-subtle: rgba(148, 163, 184, .18);--text-primary: #e2e8f0;--text-secondary: #cbd5f5;--text-muted: #94a3b8;--primary: #60a5fa;--primary-strong: #3b82f6;--primary-glow: rgba(96, 165, 250, .28);--accent: #22d3ee;--accent-strong: #0891b2;--shadow-soft: 0 18px 45px rgba(2, 6, 23, .5);--shadow-card: 0 24px 60px rgba(2, 6, 23, .6);--shadow-floating: 0 30px 80px rgba(15, 23, 42, .6)}[data-theme=dark] body{background:radial-gradient(circle at top left,rgba(96,165,250,.14),transparent 40%),radial-gradient(circle at 20% 30%,rgba(34,211,238,.12),transparent 45%),var(--bg-base)}[data-theme=dark] .app-header{background:linear-gradient(120deg,#0b1220,#111827 45%,#0b1220);border-bottom:1px solid rgba(148,163,184,.12);box-shadow:0 12px 30px #02061799}[data-theme=dark] .header-icon-btn{background:#94a3b81f}[data-theme=dark] .header-icon-btn:hover{background:#94a3b833}[data-theme=dark] .header-wallet{background:#0f172ab3;border-color:#94a3b833}[data-theme=dark] .sidebar{background:linear-gradient(180deg,#0f172a,#111827);border-right:1px solid rgba(148,163,184,.12)}[data-theme=dark] .sidebar-profile{background:#60a5fa1f;border-color:#60a5fa33}[data-theme=dark] .sidebar-nav li.active .nav-link{background:linear-gradient(120deg,#60a5fa33,#22d3ee2e);border-color:#60a5fa4d}[data-theme=dark] .card,[data-theme=dark] .section,[data-theme=dark] .section-card,[data-theme=dark] .stat-card,[data-theme=dark] .topup-summary-card,[data-theme=dark] .topup-form-card,[data-theme=dark] .resource-stat-card,[data-theme=dark] .ruleset-card,[data-theme=dark] .region-card,[data-theme=dark] .plan-card,[data-theme=dark] .os-card,[data-theme=dark] .instance-card,[data-theme=dark] .instance-card-mobile,[data-theme=dark] .empty-card{background:var(--bg-surface);border-color:#94a3b829;box-shadow:var(--shadow-card)}[data-theme=dark] .stat-card,[data-theme=dark] .resource-stat-card{background:linear-gradient(135deg,#60a5fa29,#22d3ee24)}[data-theme=dark] .btn-secondary{background:#0f172acc;color:var(--text-primary);border-color:#94a3b84d}[data-theme=dark] .admin-page .btn:not(.btn-primary):not(.btn-secondary):not(.btn-ghost):not(.btn-danger):not(.btn-warning):not(.btn-success):not(.btn-info){background:#0f172ab8;color:var(--text-primary);border:1px solid rgba(148,163,184,.32)}[data-theme=dark] .btn-ghost{background:#60a5fa24;color:var(--primary)}[data-theme=dark] .table-container,[data-theme=dark] .domain-table-container{border-color:#94a3b82e}[data-theme=dark] table th{background:#94a3b81f;color:var(--text-muted)}[data-theme=dark] table td{color:var(--text-secondary)}[data-theme=dark] .modal{background:#02061799}[data-theme=dark] .modal-content{background:#0f172af2;border-color:#60a5fa33}[data-theme=dark] .modal-footer{background:#0f172ae6}[data-theme=dark] .modal-body{background:linear-gradient(180deg,#0f172afa,#020617f5)}[data-theme=dark] .modal-stepper{background:#60a5fa1f;border-color:#60a5fa33}[data-theme=dark] .stepper-item{background:#0f172ae6;border-color:#94a3b84d;color:var(--text-muted)}[data-theme=dark] .stepper-item:after{background:#94a3b840}[data-theme=dark] .step-index{background:#94a3b82e;color:var(--text-secondary)}[data-theme=dark] .wallet-modal-banner{background:linear-gradient(120deg,#60a5fa2e,#22d3ee2e);border-color:#60a5fa4d}[data-theme=dark] .plan-price,[data-theme=dark] .region-code{background:#60a5fa33;color:#e0f2fe}[data-theme=dark] .os-versions{background:#0f172a99}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:#0f172ae6;color:var(--text-primary);border-color:#94a3b84d}[data-theme=dark] .login-page{background:radial-gradient(circle at top,rgba(96,165,250,.25),transparent 45%),linear-gradient(120deg,#05070f,#0f172a,#05070f)}[data-theme=dark] .login-card{background:#0f172ae6;border:1px solid rgba(148,163,184,.2);box-shadow:0 40px 90px #020617a6}#app{min-height:100vh}.app-header{height:var(--header-height);background:linear-gradient(120deg,#0f172a,#1e293b 45%,#0f172a);color:#f8fafc;border-bottom:1px solid rgba(148,163,184,.15);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 12px 30px #0f172a2e}.header-title,.header-action-text,.header-icon-btn,.header-logout-btn{color:#f8fafc}.header-icon-btn{border-radius:999px;background:#ffffff14}.header-icon-btn:hover{background:#ffffff29}.header-wallet{background:#0f172a80;border:1px solid rgba(148,163,184,.2)}.sidebar{background:linear-gradient(180deg,#fff,#f1f5ff);border-right:1px solid var(--border-subtle);box-shadow:0 20px 60px #0f172a14}.sidebar-profile{background:#2563eb0f}.sidebar-nav li.active .nav-link{background:linear-gradient(120deg,#2563eb24,#14b8a61a);border:1px solid rgba(37,99,235,.2);box-shadow:0 12px 30px #2563eb1f}.sidebar-nav .nav-link{border-radius:14px;transition:var(--transition)}.sidebar-nav .nav-link:hover{transform:translate(4px);background:#2563eb14}.instance-row-clickable{cursor:pointer}.table-action-btn.ruleset-applied i{color:var(--primary)}.main-content{background:transparent;padding:calc(var(--header-height) + 24px) 32px 40px}.page-header{align-items:flex-end;gap:16px}.page-header h1{font-family:var(--font-display);font-size:28px;font-weight:700;letter-spacing:-.02em}.page-title{font-family:var(--font-display);font-size:26px;font-weight:700;margin:0 0 6px}.page-subtitle{margin:0;color:var(--text-muted)}a{color:var(--primary);text-decoration:none}a:hover{color:var(--primary-strong)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-bottom:24px}.stat-card{position:relative;padding:18px;display:flex;align-items:center;gap:14px}.stat-card--glow:after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at top right,rgba(56,189,248,.22),transparent 60%);pointer-events:none}.stat-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#2563eb1f;color:var(--primary)}.stat-info h3{margin:0 0 4px;font-size:20px}.stat-info p{margin:0;color:var(--text-muted);font-size:13px}.stat-sparkline{margin-left:auto;width:44px;height:24px;border-radius:999px;background:linear-gradient(120deg,#0e749059,#6366f10d)}.dashboard-section{margin-bottom:24px}.dashboard-section--grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.dashboard-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px}.dashboard-card h2{margin-top:0;font-size:18px;font-weight:600}.link{color:var(--primary);text-decoration:none;font-weight:600}.link:hover{color:var(--primary-strong)}.section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.section-actions{display:flex;align-items:center;gap:10px}.activity-list{display:flex;flex-direction:column;gap:12px}.activity-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--radius-md);background:#94a3b81f}.activity-item i{color:var(--primary)}.activity-text{margin:0;font-weight:600}.activity-time{font-size:12px;color:var(--text-muted)}.system-status{display:flex;flex-direction:column;gap:12px}.status-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:var(--radius-md);background:#94a3b81a}.status-label{color:var(--text-muted);font-weight:600}.status-value{font-weight:600}.chart-card{position:relative;overflow:hidden}.chart-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.chart-header p{margin:6px 0 0;color:var(--text-muted);font-size:13px}.chart-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;background:#22c55e2e;color:#16a34a;font-size:11px;font-weight:700;letter-spacing:.08em}.chart-canvas{background:#0f172a08;border-radius:16px;padding:12px}.chart-svg{width:100%;height:120px}.search-filters{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;padding:16px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-soft)}.search-box{display:flex;align-items:center;gap:8px;background:#94a3b81f;border-radius:999px;padding:6px 10px}.search-box i{position:static;color:inherit}.search-box input{flex:1;min-width:0;width:100%;border:0;background:transparent;padding:6px 8px;color:var(--text-primary)}.search-box input::placeholder{color:var(--text-muted)}.filter-options{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.filter-section{padding:12px 0}.filter-btn{border-radius:999px;border:1px solid rgba(148,163,184,.3);background:transparent;color:var(--text-muted);padding:8px 14px;font-weight:600}.filter-btn.active{background:linear-gradient(120deg,var(--primary),var(--accent));color:#fff;border-color:transparent}.table-container{background:var(--bg-surface);max-height:none}.table-mobile-cards{display:none}.pagination-container{display:flex;justify-content:center;margin-top:16px}.pagination-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;min-width:44px;min-height:40px;border:none;border-radius:6px;background:#95a5a6;color:#fff;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.pagination-btn:hover:not(:disabled){background:#7f8c8d}.pagination-btn.active{background:#6a3dff;cursor:default}.pagination-btn:disabled{opacity:.6;cursor:not-allowed}.page-number{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;min-width:44px;min-height:40px;border:none;border-radius:6px;background:#95a5a6;color:#fff;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.page-number:hover:not(.active){background:#7f8c8d}.page-number.active{background:#6a3dff;cursor:default}.status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;background:#2563eb1f;color:var(--primary-strong)}.status-badge.active{background:#22c55e2e;color:#16a34a}.status-badge.pending{background:#f59e0b33;color:#f59e0b}.status-badge.disabled,.status-badge.inactive{background:#94a3b833;color:var(--text-muted)}.ip-range-card,.node-card,.template-card,.customer-info-section,.customer-wallet-section,.nameserver-section,.vm-list-section,.wallet-adjustment-card,.wallet-history-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);padding:16px}.ip-range-header,.node-header,.template-header,.wallet-history-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.ip-range-actions,.template-actions,.vm-actions{display:flex;gap:8px}.btn-icon{width:36px;height:36px;border-radius:10px;border:1px solid rgba(148,163,184,.3);background:var(--bg-surface);color:var(--text-secondary)}.btn-icon:hover{border-color:var(--primary);color:var(--primary)}.wallet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.wallet-balance{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.wallet-amount{font-size:18px;font-weight:700}.wallet-updated{font-size:12px;color:var(--text-muted)}.loading-overlay{position:fixed;inset:0;background:#0f172a59;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;z-index:3000}.loading-overlay.active{display:flex}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-primary)}.loading-text{font-size:14px;color:var(--text-muted)}.page-hero{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;padding:18px 20px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.hero-text h2{margin:0 0 6px;font-size:20px}.hero-text p{margin:0;color:var(--text-muted)}.mini-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;flex:1}.metric-card{position:relative;background:#94a3b814;border:1px solid var(--border-subtle);border-radius:14px;padding:12px 14px}.metric-label{font-size:12px;color:var(--text-muted)}.metric-value{display:block;font-size:16px;margin-top:6px;color:var(--text-primary)}.metric-spark{position:absolute;right:12px;bottom:12px;width:60px;height:24px;border-radius:999px;background:linear-gradient(120deg,#2563eb59,#14b8a60d)}.card,.section,.section-card,.stat-card,.topup-summary-card,.topup-form-card,.resource-stat-card,.ruleset-card{background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-card)}.card{padding:24px}.section-header h2,.card h2{font-family:var(--font-display);font-size:18px;font-weight:600}.stat-card,.resource-stat-card{background:linear-gradient(135deg,#2563eb14,#14b8a614)}.btn{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;font-family:var(--font-sans);cursor:pointer}.btn-primary{background:linear-gradient(120deg,var(--primary),var(--accent));border:none;color:#fff;border-radius:999px;padding:10px 22px;font-weight:600;letter-spacing:.01em;box-shadow:0 16px 30px #2563eb3d;transition:var(--transition)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 20px 40px #2563eb47}.btn-secondary{background:#fff;color:var(--text-primary);border:1px solid rgba(148,163,184,.4);border-radius:999px;padding:10px 20px;font-weight:600}.btn-ghost{border-radius:999px;background:#2563eb14;color:var(--primary)}.btn-ghost:hover{background:#2563eb29}.table-container,.domain-table-container{border-radius:var(--radius-md);border:1px solid rgba(148,163,184,.2);overflow:hidden}table th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);background:#94a3b81f}table td{color:var(--text-secondary)}.data-table,.admin-table{width:100%;border-collapse:separate;border-spacing:0}.data-table th,.admin-table th,.data-table td,.admin-table td{padding:16px 18px;border-bottom:1px solid rgba(148,163,184,.2)}.data-table tbody tr,.admin-table tbody tr{height:52px}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;background:#2563eb1f;color:var(--primary-strong)}.badge-success{background:#22c55e2e;color:#16a34a}.badge-danger{background:#ef44442e;color:#ef4444}.badge-info{background:#0ea5e92e;color:#0ea5e9}.badge-primary{background:#3b82f62e;color:#2563eb}.modal{background:#0f172a59;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.modal-content{border-radius:24px;border:1px solid rgba(37,99,235,.18);background:var(--bg-glass);box-shadow:var(--shadow-floating)}.modal-header{background:transparent;border-bottom:1px solid rgba(148,163,184,.2);position:relative}.modal-footer{border-top:1px solid rgba(148,163,184,.2);background:#fffc}.modal-header:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at top left,rgba(37,99,235,.18),transparent 55%);pointer-events:none;opacity:.8}.modal-header h3{font-family:var(--font-display);font-size:20px;font-weight:700;z-index:1}.modal-body{background:linear-gradient(180deg,#ffffffe6,#f8faffe6)}.modal-stepper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:12px 16px;margin:0 0 18px;border-radius:var(--radius-md);background:#2563eb14;border:1px solid rgba(37,99,235,.12)}.stepper-item{position:relative;display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:999px;background:#ffffffe6;border:1px solid rgba(148,163,184,.3);font-size:12px;font-weight:600;color:var(--text-muted)}.stepper-item:after{content:"";position:absolute;right:-18px;top:50%;width:18px;height:2px;transform:translateY(-50%);background:#94a3b84d}.stepper-item:last-child:after{display:none}.step-index{width:26px;height:26px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#94a3b833;color:var(--text-secondary);font-size:12px}.stepper-item.done{color:var(--text-primary);border-color:#2563eb59;background:#2563eb1f}.stepper-item.done .step-index{background:linear-gradient(120deg,var(--primary),var(--accent));color:#fff;box-shadow:0 8px 18px #2563eb40}.step-label{font-size:12px;letter-spacing:.02em}.wallet-modal-banner{background:linear-gradient(120deg,#2563eb1f,#14b8a61f);border:1px solid rgba(37,99,235,.18);border-radius:var(--radius-md);padding:12px 16px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 12px 30px #2563eb1f}.wallet-modal-balance{font-weight:600;color:var(--text-primary)}.wallet-modal-warning{font-size:12px;color:var(--warning)}.regions-grid,.plans-grid,.os-grid{display:grid;gap:16px}.regions-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.plans-grid,.os-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.region-card,.plan-card,.os-card{position:relative;border-radius:18px;border:1px solid rgba(148,163,184,.2);overflow:hidden}.region-card:before,.plan-card:before,.os-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(37,99,235,.12),transparent 45%);opacity:0;pointer-events:none;transition:var(--transition)}.region-card:hover:before,.plan-card:hover:before,.os-card:hover:before{opacity:1}.region-card.selected,.plan-card.selected,.os-card.selected{border-color:#2563eb80;box-shadow:0 18px 40px #2563eb38}.plan-header,.os-header,.region-header{display:flex;align-items:center;justify-content:space-between;font-weight:600}.plan-price,.region-code{font-size:12px;padding:4px 10px;border-radius:999px;background:#2563eb1f;color:var(--primary-strong)}.os-versions{background:#f8fafce6;border-radius:12px;padding:8px 10px}.os-version-item{border-radius:10px;transition:var(--transition)}.os-version-item:hover{background:#2563eb14}.modal-footer .btn-primary{min-width:120px}.drawer-tabs{display:flex;gap:8px;padding:6px;background:#2563eb14;border:1px solid rgba(148,163,184,.2);border-radius:999px;margin-bottom:18px}.drawer-tabs .tab-btn{flex:1;border:0;background:transparent;color:var(--text-muted);padding:10px 12px;border-radius:999px;cursor:pointer;font-weight:600}.drawer-tabs .tab-btn.active{background:linear-gradient(120deg,var(--primary),var(--accent));color:#fff}.drawer-tab-panel{display:none}.drawer-tab-panel.active{display:block}input,select,textarea{border-radius:12px;border:1px solid rgba(148,163,184,.4);background:#fff;color:var(--text-primary);padding:10px 14px;font-family:var(--font-sans)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb2e}label{font-size:13px;font-weight:600;color:var(--text-secondary);letter-spacing:.01em}.form-grid,.form-row{display:grid;gap:16px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.form-group{display:flex;flex-direction:column;gap:8px}.form-section{padding:18px 20px;border-radius:var(--radius-md);background:#ffffffb3;border:1px solid rgba(148,163,184,.22)}.form-section-title{font-family:var(--font-display);font-size:15px;font-weight:600;color:var(--text-primary);margin:0 0 12px}.form-section .section-description{font-size:13px;color:var(--text-muted);margin-bottom:12px}.input-with-icon{position:relative}.input-with-icon input{padding-left:40px}.input-with-icon i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted)}input[type=checkbox],input[type=radio]{appearance:auto;width:auto;height:auto;border:initial;background:initial;box-shadow:none}.checkbox-row,.radio-row{display:flex;align-items:center;gap:10px}[data-theme=dark] .form-section{background:#0f172aa6;border-color:#94a3b833}[data-theme=dark] input[type=checkbox],[data-theme=dark] input[type=radio]{appearance:auto;background:initial;border:initial}.login-page{background:radial-gradient(circle at top,rgba(37,99,235,.2),transparent 45%),linear-gradient(120deg,#0f172a,#1e293b,#0f172a)}.login-card{background:#ffffffe6;border-radius:28px;box-shadow:0 40px 90px #0f172a59}.notification-panel{border-radius:20px;border:1px solid rgba(148,163,184,.3);box-shadow:var(--shadow-card)}.region-card,.plan-card,.os-card,.instance-card,.instance-card-mobile,.empty-card{border-radius:var(--radius-lg);background:#fff;border:1px solid rgba(148,163,184,.22);box-shadow:0 16px 40px #0f172a14;transition:var(--transition)}.region-card:hover,.plan-card:hover,.os-card:hover,.instance-card:hover,.empty-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px #2563eb26}@media(max-width:960px){.main-content{padding:calc(var(--header-height) + 16px) 18px 32px}.vps-content .instances-table-container,.vps-content .instances-table{display:none!important}.vps-content .instances-grid-mobile{display:flex!important;flex-direction:column;gap:16px}}@media(max-width:640px){.page-header{flex-direction:column;align-items:flex-start;justify-content:flex-start;text-align:left}.page-actions{width:100%;justify-content:flex-start}.page-header h1{font-size:22px;text-align:left;width:100%}.sidebar{background:#fff}}:root{line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font-family:inherit}.login-page{margin:0;padding:0;min-height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.login-page .login-layout{display:flex;min-height:100vh}.login-page .login-sidebar{width:30%;background:linear-gradient(145deg,#8020facc 8.72%,#572efa 91.28%);display:flex;align-items:center;justify-content:center;position:relative}.login-page .sidebar-content{text-align:center;color:#fff}.login-page .sidebar-title{font-size:2rem;font-weight:700;margin:0 0 10px;letter-spacing:2px}.login-page .sidebar-subtitle{font-size:1rem;margin:0;color:#fffc;font-weight:300}.login-page .login-main{width:70%;background:#1a1a1a;display:flex;align-items:center;justify-content:center;padding:40px}.login-page .login-content{width:100%;max-width:500px}.login-page .main-text{margin-bottom:50px}.login-page .main-text h2{font-size:2.5rem;font-weight:700;color:#fff;margin:0 0 10px;line-height:1.2}.login-page .main-text .highlight{color:#8060ff}.login-page .login-form{margin-bottom:40px}.login-page .form-group{margin-bottom:25px}.login-page .form-group label{display:block;color:#fff;font-weight:500;margin-bottom:8px;font-size:.9rem}.login-page .input-group{position:relative}.login-page .input-group i{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:#7f8c8d;z-index:2}.login-page .input-group input{width:100%;padding:15px 15px 15px 45px;border:2px solid var(--border-subtle);border-radius:8px;font-size:1rem;transition:all .3s ease;background:var(--bg-surface);color:var(--text-primary)}.login-page .input-group input:focus{outline:none;border-color:#6a1b9a;background:var(--bg-surface);box-shadow:0 0 0 3px #6a1b9a1a}.login-page .input-group input::placeholder{color:#888}.login-page .btn-primary{width:100%;padding:15px;font-size:1.1rem;font-weight:600;background:linear-gradient(145deg,#8020facc 8.72%,#572efa 91.28%);border:none;border-radius:8px;color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.login-page .btn-primary:hover{background:#5a1a8a;transform:translateY(-2px)}.login-page .error-message,.login-page .success-message{display:flex;align-items:center;gap:8px;padding:12px 15px;border-radius:8px;margin-bottom:20px;font-size:.9rem;font-weight:500}.login-page .error-message{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.login-page .success-message{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.login-page .divider{display:flex;align-items:center;margin:30px 0;color:#888;font-size:.9rem}.login-page .divider:before,.login-page .divider:after{content:"";flex:1;border-bottom:1px solid var(--border-subtle)}.login-page .divider span{padding:0 15px}.login-page .btn-google{width:100%;padding:14px 20px;background:var(--bg-surface);border:2px solid var(--border-subtle);border-radius:8px;color:var(--text-primary);font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:12px}.login-page .btn-google:hover{background:var(--bg-surface-strong);border-color:var(--border-strong);transform:translateY(-2px)}.login-page .google-icon{width:24px;height:24px}.login-page .form-footer{display:flex;justify-content:center;gap:8px;font-size:.9rem;color:#ccc;margin-top:20px}.login-page .form-footer a{color:#8060ff;text-decoration:none;font-weight:600}.login-page .form-footer a:hover{text-decoration:underline}.login-page .loading-overlay{display:flex;position:fixed;z-index:3000;left:0;top:0;width:100%;height:100%;background-color:#00000080}.login-page .loading-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}.login-page .loading-spinner i{font-size:2rem;color:#6a3dff}.login-page .loading-spinner .loading-text{color:#fff;font-size:.9rem;font-weight:500}@media(max-width:768px){.login-page .login-layout{flex-direction:column}.login-page .login-sidebar{width:100%;min-height:200px}.login-page .login-main{width:100%;padding:30px 20px}.login-page .main-text h2{font-size:2rem}}.domain-order-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin-bottom:20px}.domain-order-grid>.card{min-width:0}@media(max-width:1280px){.domain-order-grid{grid-template-columns:1fr}}.card{background:var(--bg-surface);border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000000d;border:1px solid var(--border-color)}.card h2{font-size:18px;margin-bottom:15px;color:var(--text-primary)!important}.form-grid{display:grid;gap:15px;margin-bottom:15px}.form-grid input[type=text],.form-grid input[type=number],.form-grid select,.dns-add-form input[type=text],.nameserver-section input[type=text]{width:100%;padding:10px 16px;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:14px;transition:var(--transition-fast, .2s ease);font-family:Roboto,sans-serif}.form-grid input[type=text]:focus,.form-grid input[type=number]:focus,.form-grid select:focus,.dns-add-form input[type=text]:focus,.nameserver-section input[type=text]:focus{outline:none;border-color:var(--primary-color);border-width:2px;box-shadow:0 0 0 2px #4285f433}button{padding:10px 24px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;border:none;display:inline-flex;align-items:center;gap:8px;transition:var(--transition-fast, .2s ease);text-transform:none;letter-spacing:.25px}button[type=submit],button.primary,.btn-primary{background-color:var(--primary-color);color:#fff;box-shadow:0 1px 2px #3c40434d}button[type=submit]:hover,button.primary:hover,.btn-primary:hover{background-color:var(--primary-hover);box-shadow:0 2px 4px #3c40434d}button.secondary,.btn-secondary{background-color:transparent;color:var(--primary-color);border:1px solid var(--border-color)}button.secondary:hover,.btn-secondary:hover{background-color:var(--bg-hover);border-color:var(--primary-color)}button.small{padding:6px 12px;font-size:12px}button:disabled{opacity:.6;cursor:not-allowed}table{width:100%;border-collapse:collapse;margin-top:10px;min-width:600px}th,td{padding:10px;text-align:left;border-bottom:1px solid var(--border-color)}th{background:var(--bg-secondary);font-weight:600;color:var(--text-secondary)}.table-container{overflow-y:auto;overflow-x:auto;-webkit-overflow-scrolling:touch}.search-loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0000004d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;display:none;align-items:center;justify-content:center;flex-direction:column;gap:20px}.search-loading-overlay.active{display:flex}.search-loading-overlay .overlay-spinner{width:60px;height:60px;border:5px solid rgba(255,255,255,.3);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.search-loading-overlay .overlay-text{color:var(--text-primary);font-size:18px;font-weight:500;text-shadow:0 2px 4px rgba(0,0,0,.3)}.toss-widget-section{padding:20px 0}.toss-widget-header{margin-bottom:20px}.toss-widget-header h3{margin:0 0 8px;font-size:16px;font-weight:600}.toss-widget-header p{margin:0;font-size:13px;color:var(--text-secondary)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.billing-table-container{overflow-x:auto;overflow-y:visible}.billing-table{width:100%;border-collapse:collapse;background-color:var(--bg-card)}.billing-table thead{background-color:var(--bg-surface);border-bottom:1px solid var(--border-color)}.billing-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.billing-table td{padding:12px 16px;border-bottom:1px solid var(--border-color);font-size:14px;color:var(--text-primary);white-space:nowrap}.billing-table tbody tr{transition:var(--transition-fast)}.billing-table tbody tr:hover{background-color:var(--bg-hover)}.billing-table tbody tr:last-child td{border-bottom:none}.billing-table .text-success{color:var(--status-success);font-weight:600}.billing-table .text-danger{color:var(--status-error);font-weight:600}@media(max-width:768px){.payment-method-buttons{flex-direction:column!important}.payment-method-buttons button{width:100%!important;flex:none!important}}.page[data-v-49a4390a]{min-height:100vh;display:grid;place-items:center;background:var(--bg-base);color:var(--text-primary)}a[data-v-49a4390a]{color:var(--primary)}
