@font-face{font-family:'Oxygen';src:url(/storage/assets/font/Oxygen/Oxygen.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}:root{--bg-main:#0c0c0c;--bg-surface:#18181b;--bg-surface-hover:#27272a;--border-color:#3f3f46;--text-primary:#f4f4f5;--text-secondary:#a1a1aa;--text-disabled:#52525b;--accent-color:#f4f4f5;--accent-color-hover:#ffffff;--accent-primary:#27272a;--accent-blue:#3b82f6;--accent-blue-hover:#2563eb;--status-success:#81c995;--status-warning:#fdd663;--status-error:#f28b82;--font-family:'Oxygen', sans-serif;--nav-height:56px;--sidebar-width:256px}*{box-sizing:border-box;margin:0;padding:0}body.console-body{background-color:var(--bg-main);color:var(--text-primary);font-family:var(--font-family);font-size:14px;line-height:1.5;overflow-x:hidden}a{color:var(--accent-color);text-decoration:none}a:hover{text-decoration:underline}.console-navbar{height:var(--nav-height);background-color:var(--bg-surface);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 20px;position:fixed;top:0;left:0;right:0;z-index:1000}.nav-left{display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:500;color:var(--text-primary)}.brand:hover{text-decoration:none}.project-selector-wrapper{position:relative}.project-selector-btn{background:#fff0;border:1px solid var(--border-color);color:var(--text-primary);padding:6px 12px;border-radius:4px;display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;transition:background 0.2s}.project-selector-btn:hover{background:var(--bg-surface-hover)}.project-dropdown{display:none;position:absolute;top:100%;left:0;margin-top:4px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px;width:250px;box-shadow:0 4px 6px rgb(0 0 0 / .3);z-index:1010}.project-dropdown.active{display:block}.project-dropdown-header{padding:12px 16px;font-size:12px;text-transform:uppercase;color:var(--text-secondary);border-bottom:1px solid var(--border-color)}.project-list{max-height:300px;overflow-y:auto}.project-item{display:block;padding:10px 16px;color:var(--text-primary)}.project-item:hover{background:var(--bg-surface-hover);text-decoration:none}.project-item.active{background:var(--bg-surface-hover);color:var(--accent-color);font-weight:500}.project-dropdown-footer{border-top:1px solid var(--border-color);padding:8px;display:flex;flex-direction:column}.btn-new-project{display:flex;align-items:center;gap:8px;padding:8px 16px;color:var(--accent-color);font-weight:500}.btn-new-project:hover{background:var(--bg-surface-hover);text-decoration:none}.btn-all-projects{padding:8px 16px;text-align:center;color:var(--text-secondary)}.nav-right{display:flex;align-items:center;gap:16px}.lang-switch{display:flex;gap:4px}.lang-btn{padding:2px 6px;border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:12px}.lang-btn.active{background:var(--border-color);color:var(--text-primary)}.nav-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px}.nav-icon-btn:hover{color:var(--text-primary);background-color:var(--bg-surface-hover)}.user-avatar-dropdown{position:relative}.avatar-btn{background:none;border:none;cursor:pointer;padding:0;border-radius:50%;overflow:hidden}.avatar-nav-img{display:block;border-radius:50%;border:2px solid #fff0}.avatar-btn:hover .avatar-nav-img{border-color:var(--border-color)}.avatar-dropdown-menu{display:none;position:absolute;top:100%;right:0;margin-top:8px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;width:240px;box-shadow:0 4px 12px rgb(0 0 0 / .5);z-index:1010}.avatar-dropdown-menu.active{display:block}.avatar-menu-header{padding:16px;border-bottom:1px solid var(--border-color)}.avatar-menu-name{font-weight:500;color:var(--text-primary)}.avatar-menu-email{font-size:12px;color:var(--text-secondary)}.avatar-menu-link{display:flex;align-items:center;gap:12px;padding:12px 16px;color:var(--text-primary);transition:background 0.2s}.avatar-menu-link:hover{background:var(--bg-surface-hover);text-decoration:none}.logout-link{border-top:1px solid var(--border-color);color:var(--status-error)}.console-layout{display:flex;margin-top:var(--nav-height);min-height:calc(100vh - var(--nav-height))}.console-sidebar{width:var(--sidebar-width);background-color:var(--bg-main);border-right:1px solid var(--border-color);position:fixed;top:var(--nav-height);bottom:0;overflow-y:auto}.console-main{flex:1;padding:32px}.console-main.with-sidebar{margin-left:var(--sidebar-width)}.sidebar-menu{padding:16px 0}.sidebar-item{display:flex;align-items:center;gap:16px;padding:12px 24px;color:var(--text-secondary);font-weight:500;transition:background 0.2s,color 0.2s}.sidebar-item:hover{background:var(--bg-surface-hover);color:var(--text-primary);text-decoration:none}.sidebar-item.active{background:var(--bg-surface-hover);color:var(--accent-color);border-left:3px solid var(--accent-color)}.sidebar-divider{height:1px;background:var(--border-color);margin:12px 0}.card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;padding:24px;margin-bottom:24px}.card-title{font-size:18px;font-weight:500;margin-bottom:16px;color:var(--text-primary)}.form-group{margin-bottom:20px}.form-label{display:block;margin-bottom:8px;color:var(--text-primary);font-weight:500}.form-control{width:100%;padding:10px 12px;background:var(--bg-main);border:1px solid var(--border-color);color:var(--text-primary);border-radius:4px;font-family:inherit}.form-control:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 1px var(--accent-color)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;border-radius:6px;font-weight:500;font-size:13px;cursor:pointer;border:1px solid #fff0;transition:background 0.2s,border-color 0.2s,filter 0.2s;text-decoration:none;line-height:1.4;white-space:nowrap}.btn:hover{text-decoration:none;filter:brightness(1.12)}.btn-primary{background:#2563eb!important;border-color:#1d4ed8!important;color:#ffffff!important}.btn-primary:hover{background:#1d4ed8!important;border-color:#1e40af!important;color:#ffffff!important}.btn-secondary{background:#27272a!important;border-color:#3f3f46!important;color:#f4f4f5!important}.btn-secondary:hover{background:#3f3f46!important;border-color:#52525b!important;color:#ffffff!important}.btn-danger{background:#dc2626!important;border-color:#b91c1c!important;color:#ffffff!important}.btn-danger:hover{background:#b91c1c!important;border-color:#991b1b!important;color:#ffffff!important}.table-wrapper{overflow-x:auto}table.table{width:100%;border-collapse:collapse}table.table th,table.table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border-color)}table.table th{color:var(--text-secondary);font-weight:500;font-size:12px;text-transform:uppercase}#flash-container{position:fixed;top:calc(var(--nav-height) + 20px);right:20px;z-index:1050;min-width:300px;max-width:400px;display:flex;flex-direction:column;gap:10px;pointer-events:none}.alert{padding:12px 16px;border-radius:6px;margin-bottom:0;transition:opacity 0.4s ease,transform 0.4s ease;opacity:1;transform:translateY(0);pointer-events:auto;box-shadow:0 4px 14px rgb(0 0 0 / .2)}.alert.alert-fade-out{opacity:0;transform:translateY(-8px)}.alert-success{background:rgb(129 201 149 / .15);color:var(--status-success);border:1px solid var(--status-success);backdrop-filter:blur(8px)}.alert-error{background:rgb(242 139 130 / .15);color:var(--status-error);border:1px solid var(--status-error);backdrop-filter:blur(8px)}.text-muted{color:var(--text-secondary)}.mt-4{margin-top:1rem}.mb-4{margin-bottom:1rem}.d-flex{display:flex}.justify-content-between{justify-content:space-between}.align-items-center{align-items:center}.gap-2{gap:.5rem}.gap-3{gap:1rem}.status-badge{display:inline-block;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500}.status-badge.verified,.status-badge.active,.status-badge.indexed{background:rgb(129 201 149 / .1);color:var(--status-success)}.status-badge.pending,.status-badge.processing,.status-badge.suspended{background:rgb(234 179 8 / .1);color:var(--status-warning)}.status-badge.failed,.status-badge.error,.status-badge.rejected,.status-badge.revoked,.status-badge.deleted{background:rgb(239 68 68 / .1);color:var(--status-error)}.service-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:600;letter-spacing:.3px;white-space:nowrap}.service-badge.badge-query{background:rgb(56 189 248 / .12);color:#38bdf8;border:1px solid rgb(56 189 248 / .25)}.service-badge.badge-disk{background:rgb(168 85 247 / .12);color:#c084fc;border:1px solid rgb(168 85 247 / .25)}.service-badge.badge-update{background:rgb(245 158 11 / .12);color:#fbbf24;border:1px solid rgb(245 158 11 / .25)}.service-badge.badge-default{background:rgb(148 163 184 / .12);color:#cbd5e1;border:1px solid rgb(148 163 184 / .25)}.env-badge{display:inline-flex;align-items:center;padding:2px 7px;border-radius:4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.env-badge.badge-live{background:rgb(34 197 94 / .15);color:#4ade80;border:1px solid rgb(34 197 94 / .3)}.env-badge.badge-test{background:rgb(99 102 241 / .15);color:#818cf8;border:1px solid rgb(99 102 241 / .3)}.btn-filter{background:var(--surface-card);border:1px solid var(--border-color);color:var(--text-muted);font-size:11px;font-weight:500;padding:4px 10px;border-radius:6px;cursor:pointer;transition:all 0.15s ease}.btn-filter:hover{color:var(--text-primary);border-color:var(--border-hover)}.btn-filter.active{background:var(--surface-secondary);color:var(--accent-blue);border-color:var(--accent-blue);font-weight:600}.quickstart-tab-btn{background:#fff0;border:none;border-bottom:2px solid #fff0;color:var(--text-muted);font-size:11px;font-weight:500;padding:4px 8px;cursor:pointer;transition:all 0.15s ease}.quickstart-tab-btn:hover{color:var(--text-primary)}.quickstart-tab-btn.active{color:var(--accent-blue);border-bottom-color:var(--accent-blue);font-weight:600}.fw-500{font-weight:500!important}.text-center{text-align:center!important}.text-right{text-align:right!important}.fs-12{font-size:12px!important}.fs-18{font-size:18px!important}.fs-24{font-size:24px!important}.m-0{margin:0!important}.mt-1{margin-top:4px!important}.mt-2{margin-top:8px!important}.mt-3{margin-top:16px!important}.mt-4{margin-top:24px!important}.mb-1{margin-bottom:4px!important}.mb-2{margin-bottom:8px!important}.mb-3{margin-bottom:12px!important}.mb-4{margin-bottom:24px!important}.ml-2{margin-left:8px!important}.mr-2{margin-right:8px!important}.p-2{padding:8px!important}.p-3{padding:12px!important}.p-4{padding:16px!important}.p-5{padding:24px!important}.p-6{padding:48px!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.align-items-center{align-items:center!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.gap-1{gap:4px!important}.gap-2{gap:8px!important}.gap-3{gap:12px!important}.gap-4{gap:16px!important}.text-white{color:white!important}.text-success{color:var(--status-success)!important}.text-error{color:var(--status-error)!important}.bg-main{background:var(--bg-main)!important}.bg-surface{background:var(--bg-surface)!important}.border-accent{border-color:var(--accent-blue)!important}.code-inline{background:var(--bg-surface);padding:2px 6px;border-radius:4px;border:1px solid var(--border-color)}.word-break-all{word-break:break-all!important}.lh-15{line-height:1.5!important}.btn-sm{padding:4px 8px!important;font-size:12px!important}.empty-state-card{text-align:center;padding:48px}.empty-state-card svg{margin-bottom:16px}.empty-state-card h2{margin-bottom:8px}.empty-state-card p{margin-bottom:24px}.info-card{background-color:var(--bg-surface-hover);border-left:4px solid var(--primary-color);padding:20px}.info-card h2{font-size:18px;margin-bottom:12px;display:flex;align-items:center;gap:8px}.back-link{display:inline-flex;align-items:center;gap:4px;color:var(--text-secondary)}.back-link:hover{color:var(--text-primary);text-decoration:none}.auth-error-container{display:flex;justify-content:center;align-items:center;min-height:70vh}.auth-error-card{background:var(--bg-surface);padding:40px;border-radius:12px;border:1px solid var(--border-color);max-width:500px;text-align:center;box-shadow:0 10px 30px rgb(0 0 0 / .2)}.auth-error-icon{color:#ef4444;margin-bottom:20px}.danger-zone-card{max-width:600px;border-color:rgb(242 139 130 / .3)}.verify-panel{background:var(--bg-main);padding:16px;border-radius:4px;border:1px solid var(--border-color);margin-bottom:24px}.verify-code-box{background:var(--bg-surface);padding:12px;font-family:monospace;border:1px solid var(--border-color);color:var(--accent-blue);border-radius:4px}.verify-code-box-sm{padding:8px;margin-top:4px}.grid-overview-top{display:grid;grid-template-columns:150px 1fr;gap:16px}.grid-overview-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.spa-loader-logo{animation:spin 1s linear infinite}@keyframes spin{100%{transform:rotate(360deg)}}