@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Oswald:wght@400;500;700&display=swap";:root{--primary:#f2f2f2;--secondary:#8c8c8c;--tertiary:#e10600;--neutral:#0b0b0b;--surface:#151515;--on-primary:#0b0b0b;--border:#2a2a2a;--font-display:"Oswald", sans-serif;--font-body:"Inter", sans-serif;--font-label:"Oswald", sans-serif;--rounded-sm:0px;--rounded-md:2px;--rounded-lg:4px;--base-font-size:16px;--bg-image:none}*{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--base-font-size)}body{background:var(--neutral);background-image:var(--bg-image);font-family:var(--font-body);color:var(--primary);background-position:50%;background-size:cover;background-attachment:fixed;font-size:1.5rem;line-height:1.5}h1,h2,h3{font-family:var(--font-display);color:var(--primary);font-weight:700}h1{font-size:3.5rem}.auth-page{background:var(--neutral);justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-form{background:var(--surface);border-radius:var(--rounded-lg);border:1px solid var(--border);width:400px;max-width:90vw;padding:40px}.auth-form h1{text-align:center;font-family:var(--font-display);letter-spacing:.02em;margin-bottom:24px}.auth-form input{border:1px solid var(--border);border-radius:var(--rounded-md);width:100%;font-size:1.5rem;font-family:var(--font-body);background:var(--neutral);color:var(--primary);outline:none;margin-bottom:16px;padding:12px 16px;transition:border-color .2s}.auth-form input:focus{border-color:var(--tertiary)}.auth-form button[type=submit]{background:var(--tertiary);width:100%;color:var(--primary);border-radius:var(--rounded-md);font-size:1.5rem;font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;border:none;padding:12px;font-weight:700;transition:opacity .2s}.auth-form button[type=submit]:hover{opacity:.85}.auth-form p{text-align:center;color:var(--secondary);margin-top:16px}.auth-form a{color:var(--tertiary);text-decoration:none}.error-msg{color:var(--tertiary);border-radius:var(--rounded-md);background:#e1060026;border:1px solid #e106004d;margin-bottom:16px;padding:10px 16px;font-size:.85rem}.app-layout{min-height:100vh;display:flex}.sidebar{background:var(--surface);width:240px;color:var(--secondary);border-right:1px solid var(--border);flex-direction:column;height:100vh;padding:24px 0;display:flex;position:fixed;overflow-y:auto}.sidebar-header{border-bottom:1px solid var(--border);padding:0 24px 24px}.sidebar-header h2{font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--primary);margin-bottom:4px;font-size:1.4rem}.user-name{font-size:.78rem;font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:16px 0;display:flex}.nav-link{color:var(--secondary);font-size:.85rem;font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:12px;padding:10px 24px;text-decoration:none;transition:all .2s;display:flex}.nav-link:hover{color:var(--primary);background:#f2f2f20d}.nav-link.active{color:var(--primary);border-right:3px solid var(--tertiary);background:#e1060014}.nav-group-header{cursor:pointer;background:0 0;border:none;width:100%;font-family:inherit}.nav-group-chevron{margin-left:auto;font-size:14px;transition:transform .2s}.nav-group-header.open .nav-group-chevron{transform:rotate(180deg)}.nav-group-items{flex-direction:column;gap:2px;display:flex}.nav-sublink{padding-left:44px;font-size:.78rem}.logout-btn{color:var(--secondary);border:1px solid var(--border);border-radius:var(--rounded-md);font-size:.78rem;font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;align-items:center;gap:12px;margin:0 12px;padding:10px 24px;transition:all .2s;display:flex}.logout-btn:hover{border-color:var(--tertiary);color:var(--tertiary)}.main-content{flex:1;min-height:100vh;margin-left:240px;padding:32px}.dashboard h1{letter-spacing:.02em;margin-bottom:32px}.stat-card{background:var(--surface);border-radius:var(--rounded-lg);border:1px solid var(--border);align-items:center;gap:20px;padding:24px;display:flex}.stat-icon{color:var(--tertiary);font-size:28px}.stat-card h3{color:var(--primary);font-size:1.8rem;font-family:var(--font-display)}.stat-card p{color:var(--secondary);font-size:.78rem;font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase}.page-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.page-header h1{margin:0}.toolbar{align-items:center;gap:10px;margin-bottom:16px;display:flex}.search-bar{border:1px solid var(--border);border-radius:var(--rounded-md);background:var(--neutral);color:var(--primary);font-family:var(--font-body);outline:none;flex:1;padding:10px 14px;font-size:.85rem;transition:border-color .2s}.search-bar:focus{border-color:var(--tertiary)}.search-bar::placeholder{color:var(--secondary)}.view-toggle{border:1px solid var(--border);border-radius:var(--rounded-md);flex-shrink:0;display:flex;overflow:hidden}.view-toggle-btn{cursor:pointer;width:38px;height:38px;color:var(--secondary);background:0 0;border:none;justify-content:center;align-items:center;transition:color .2s,background .2s;display:flex}.view-toggle-btn+.view-toggle-btn{border-left:1px solid var(--border)}.view-toggle-btn:hover{color:var(--primary)}.view-toggle-btn.active{background:var(--tertiary);color:var(--primary)}.btn-primary{background:var(--tertiary);color:var(--primary);border-radius:var(--rounded-md);font-size:.78rem;font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;border:none;align-items:center;gap:8px;padding:12px 20px;font-weight:700;transition:opacity .2s;display:inline-flex}.btn-primary:hover{opacity:.85}.btn-secondary{color:var(--primary);border:1px solid var(--border);border-radius:var(--rounded-md);font-size:.78rem;font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;padding:12px 20px;transition:border-color .2s}.btn-secondary:hover{border-color:var(--secondary)}.item-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);flex-direction:column;gap:12px;margin-bottom:24px;padding:24px;display:flex}.item-form input,.item-form textarea,.item-form select{border:1px solid var(--border);border-radius:var(--rounded-md);font-size:1.5rem;font-family:var(--font-body);background:var(--neutral);color:var(--primary);outline:none;padding:10px 14px;transition:border-color .2s}.item-form input:focus,.item-form textarea:focus{border-color:var(--tertiary)}.item-form textarea{resize:vertical;min-height:60px}.form-row{flex-wrap:wrap;gap:12px;display:flex}.form-row label{font-size:.78rem;font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;color:var(--secondary);flex-direction:column;gap:4px;display:flex}.form-actions{gap:12px;display:flex}.item-list{flex-direction:column;flex:1;gap:8px;display:flex}.task-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);align-items:flex-start;gap:14px;padding:16px 20px;transition:border-color .2s;display:flex}.task-item:hover{border-color:var(--secondary)}.task-item.completed{opacity:.45}.task-item.completed h3{text-decoration:line-through}.task-item input[type=checkbox]{width:18px;height:18px;accent-color:var(--tertiary);cursor:pointer;margin-top:2px}.task-content{flex:1}.task-content h3{font-size:1rem;font-family:var(--font-body);margin-bottom:4px;font-weight:600}.task-content p{color:var(--secondary);font-size:.85rem}.task-meta{gap:10px;margin-top:8px;font-size:.78rem;display:flex}.priority-badge{border-radius:var(--rounded-md);font-size:.7rem;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;padding:2px 10px;font-weight:500}.priority-low{color:var(--secondary);background:#8c8c8c26}.priority-medium{color:var(--primary);background:#f2f2f21a}.priority-high{color:var(--tertiary);background:#e1060026}.due-date{color:var(--secondary)}.item-actions{gap:4px;display:flex}.item-actions button{color:var(--secondary);cursor:pointer;border-radius:var(--rounded-md);background:0 0;border:none;padding:6px;transition:color .2s}.item-actions button:hover{color:var(--primary)}.btn-icon{color:var(--secondary);cursor:pointer;border-radius:var(--rounded-md);background:0 0;border:none;justify-content:center;align-items:center;padding:6px;transition:color .2s,background .2s;display:inline-flex}.btn-icon:hover{color:var(--primary);background:#f2f2f20f}.btn-icon.btn-danger{color:var(--secondary)}.btn-icon.btn-danger:hover{color:var(--tertiary);background:#e1060014}.delete-countdown{align-items:center;gap:6px;display:inline-flex}.countdown-text{font-size:.7rem;font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;color:var(--tertiary);white-space:nowrap}.notes-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.note-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);flex-direction:column;padding:20px;transition:border-color .2s;display:flex}.note-card:hover{border-color:var(--secondary)}.note-card.pinned{border-color:var(--tertiary)}.note-header{justify-content:space-between;align-items:flex-start;margin-bottom:8px;display:flex}.note-header h3{font-size:1rem;font-family:var(--font-body);font-weight:600}.pin-btn{color:var(--secondary);cursor:pointer;background:0 0;border:none;padding:4px}.pin-btn.active{color:var(--tertiary)}.note-content{color:var(--secondary);white-space:pre-wrap;-webkit-line-clamp:5;-webkit-box-orient:vertical;flex:1;margin-bottom:12px;font-size:.85rem;display:-webkit-box;overflow:hidden}.note-footer{font-size:.7rem;font-family:var(--font-label);letter-spacing:.12em;color:var(--secondary);border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding-top:12px;display:flex}.schedule-group{margin-bottom:24px}.schedule-date{font-size:.78rem;font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;color:var(--secondary);border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:8px}.event-item{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--tertiary);border-radius:var(--rounded-lg);align-items:center;gap:16px;margin-bottom:8px;padding:16px 20px;display:flex}.event-time{font-size:.78rem;font-family:var(--font-label);letter-spacing:.1em;color:var(--tertiary);white-space:nowrap;min-width:120px;font-weight:700}.event-content{flex:1}.event-content h3{font-size:1.5rem;font-family:var(--font-body);margin-bottom:2px;font-weight:600}.event-content p{color:var(--secondary);font-size:.85rem}.datetime-weather-widget{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);color:var(--primary);justify-content:space-between;align-items:center;height:100%;padding:28px 32px;display:flex}.dt-time-section{flex-direction:column;gap:6px;display:flex}.dt-clock{font-family:var(--font-display);letter-spacing:.02em;align-items:baseline;gap:2px;font-weight:700;line-height:1;display:flex}.dt-hours,.dt-minutes{font-size:7rem}.dt-separator{color:var(--tertiary);font-size:6.3rem;animation:1s step-end infinite blink}.dt-seconds{color:var(--secondary);margin-left:4px;font-size:1.5rem}@keyframes blink{50%{opacity:0}}.dt-date{font-size:.78rem;font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;color:var(--secondary);gap:12px;display:flex}.dt-weekday{color:var(--primary)}.dt-lunar{font-size:.78rem;font-family:var(--font-label);letter-spacing:.12em;color:var(--secondary);margin-top:2px}.dt-weather-section{text-align:right;align-items:center;gap:16px;display:flex}.dt-weather-icon{color:var(--secondary);font-size:44px}.dt-weather-info{flex-direction:column;display:flex}.dt-temp{font-size:2.5rem;font-family:var(--font-display);letter-spacing:.02em;font-weight:700;line-height:1.1}.dt-location{font-size:.78rem;font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;color:var(--secondary)}.dt-weather-details{font-size:.78rem;font-family:var(--font-label);letter-spacing:.1em;color:var(--secondary);flex-direction:column;gap:2px;display:flex}.dt-weather-loading{color:var(--secondary);font-size:.85rem}@media (width<=768px){.datetime-weather-widget{flex-direction:column;align-items:flex-start;gap:20px;padding:20px 24px}.dt-hours,.dt-minutes{font-size:4.2rem}.dt-separator{font-size:3.9rem}.dt-weather-section{text-align:left}}.dashboard-top-row{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px;display:grid}.today-summary-widget{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);display:flex;overflow:hidden}.today-summary-section{flex-direction:column;flex:1;min-width:0;padding:20px 24px;display:flex}.today-summary-divider{background:var(--border);flex-shrink:0;width:1px}.today-summary-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.today-summary-title{font-family:var(--font-display);letter-spacing:.04em;color:var(--primary);text-transform:uppercase;align-items:center;gap:8px;font-size:.85rem;font-weight:700;display:flex}.today-summary-icon{color:var(--tertiary);font-size:16px}.today-summary-body{flex-direction:column;flex:1;display:flex}.today-summary-stats{gap:32px;margin-bottom:16px;display:flex}.today-summary-stat{flex-direction:column;align-items:center;gap:4px;display:flex}.today-summary-stat-value{font-family:var(--font-display);color:var(--primary);font-size:2.6rem;font-weight:700;line-height:1}.today-summary-stat-label{font-size:.72rem;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--secondary)}.today-summary-list{flex-direction:column;gap:5px;display:flex}.today-summary-item{border-radius:var(--rounded-md);background:#0a0a0a;border:1px solid #2a2a2a;align-items:center;gap:8px;padding:6px 10px;font-size:.78rem;display:flex}.today-summary-item.completed{opacity:.5}.today-summary-item .task-check{color:var(--secondary);flex-shrink:0;font-size:13px}.today-summary-item .task-check.done{color:#10b981}.today-summary-item-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.today-summary-event{border-radius:var(--rounded-md);background:#0a0a0a;border:1px solid #2a2a2a;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.today-summary-event-time{font-family:var(--font-display);color:var(--tertiary);white-space:nowrap;min-width:50px;padding-top:1px;font-size:.78rem;font-weight:700}.today-summary-event-info{flex-direction:column;gap:2px;min-width:0;display:flex}.today-summary-event-title{color:var(--primary);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.today-summary-event-desc{color:var(--secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}@media (width<=1024px){.dashboard-top-row{grid-template-columns:1fr}.today-summary-widget{flex-direction:column}.today-summary-divider{width:100%;height:1px}}.empty-msg{text-align:center;color:var(--secondary);padding:40px 0;font-size:.85rem}.loading{min-height:100vh;font-size:1rem;font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;color:var(--secondary);justify-content:center;align-items:center;display:flex}@media (width<=768px){.sidebar{width:60px;padding:16px 0}.sidebar-header{padding:0 8px 16px}.sidebar-header h2{font-size:.7rem}.user-name{display:none}.nav-link{justify-content:center;padding:12px;font-size:0}.nav-link svg{font-size:20px}.nav-sublink{padding-left:12px}.nav-group-chevron{display:none}.logout-btn{justify-content:center;margin:0 8px;padding:10px;font-size:0}.main-content{margin-left:60px;padding:20px}}.dashboard-header{justify-content:space-between;align-items:flex-start;margin-bottom:28px;display:flex}.dashboard-header h1{margin-bottom:4px}.dashboard-last-refresh{font-size:.7rem;font-family:var(--font-label);letter-spacing:.12em;color:var(--secondary);text-transform:uppercase}.dashboard-header-actions{align-items:center;gap:10px;display:flex}.dashboard-header-actions .btn-secondary{align-items:center;gap:8px;padding:10px 18px;font-size:.72rem;display:inline-flex}.lock-btn:hover{border-color:var(--tertiary);color:var(--tertiary)}.dashboard-widgets{flex-direction:column;gap:20px;display:flex}.dashboard-widgets-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.widget{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);flex-direction:column;display:flex;overflow:hidden}.widget-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.widget-title{font-family:var(--font-display);letter-spacing:.04em;color:var(--primary);text-transform:uppercase;align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.widget-icon{color:var(--tertiary);font-size:18px}.widget-link-btn{border:1px solid var(--border);border-radius:var(--rounded-md);color:var(--secondary);font-size:.68rem;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;align-items:center;gap:6px;padding:6px 12px;text-decoration:none;transition:border-color .2s,color .2s;display:inline-flex}.widget-link-btn:hover{border-color:var(--secondary);color:var(--primary)}.widget-body{flex:1;padding:20px}.widget-footer{border-top:1px solid var(--border);justify-content:flex-end;padding:12px 20px;display:flex}.widget-loading,.widget-empty{text-align:center;color:var(--secondary);font-size:.85rem;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;padding:20px 0}.widget-refresh-btn{border:1px solid var(--border);border-radius:var(--rounded-md);color:var(--secondary);font-size:.68rem;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;padding:6px 14px;transition:border-color .2s,color .2s}.widget-refresh-btn:hover{border-color:var(--secondary);color:var(--primary)}.deepseek-balances{justify-content:center;align-items:center;gap:24px;padding:10px 0;display:flex}.deepseek-balance-item{flex-direction:column;align-items:center;gap:4px;display:flex}.deepseek-amount{font-family:var(--font-display);color:var(--primary);letter-spacing:.02em;font-size:2rem;font-weight:700}.deepseek-label{font-size:.68rem;font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;color:var(--secondary)}.deepseek-balance-divider{background:var(--border);width:1px;height:50px}.level-profile-stats{flex-direction:column;gap:16px;display:flex}.level-profile-stat-row{justify-content:space-around;gap:12px;display:flex}.level-profile-stat{flex-direction:column;align-items:center;gap:2px;display:flex}.level-profile-stat-value{font-family:var(--font-display);color:var(--primary);font-size:1.8rem;font-weight:700}.level-profile-stat-label{font-size:.65rem;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--secondary)}.level-profile-progress{flex-direction:column;gap:6px;display:flex}.level-profile-progress-header{font-size:.68rem;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--secondary);justify-content:space-between;display:flex}.level-profile-progress-track{background:#2a2a2a;border-radius:3px;height:6px;overflow:hidden}.level-profile-progress-fill{background:var(--tertiary);border-radius:3px;height:100%;transition:width .6s}.level-profile-item{border-radius:var(--rounded-md);cursor:pointer;background:#0a0a0a;border:1px solid #2a2a2a;justify-content:space-between;align-items:center;padding:10px 12px;transition:border-color .2s;display:flex}.level-profile-item:hover{border-color:var(--secondary)}.level-profile-item-info{align-items:center;gap:8px;min-width:0;display:flex}.level-profile-item-name{color:var(--primary);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.level-profile-item-status{font-size:.68rem;font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;flex-shrink:0;align-items:center;gap:4px;display:flex}.level-profile-item-status.status-done{color:#10b981}.level-profile-item-status.status-pending{color:var(--secondary)}.level-badge{font-size:.65rem;font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;border-radius:2px;align-items:center;padding:2px 8px;font-weight:700;display:inline-flex}.level-1{color:#10b981;background:#10b98126}.level-2{color:#3b82f6;background:#3b82f626}.level-3{color:#f59e0b;background:#f59e0b26}.level-4{color:#e10600;background:#e1060026}.project-selector{margin-bottom:16px}.project-select{border:1px solid var(--border);border-radius:var(--rounded-md);background:var(--neutral);width:100%;color:var(--primary);font-family:var(--font-body);cursor:pointer;outline:none;padding:10px 14px;font-size:.85rem;transition:border-color .2s}.project-select:focus{border-color:var(--tertiary)}.project-widget-detail{flex-direction:column;gap:14px;display:flex}.project-widget-header{justify-content:space-between;align-items:center;display:flex}.project-widget-status{font-size:.68rem;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;border-radius:2px;padding:3px 10px;font-weight:700}.project-widget-status.status-planning{color:var(--secondary);background:#8c8c8c26}.project-widget-status.status-in_progress{color:#3b82f6;background:#3b82f626}.project-widget-status.status-completed{color:#10b981;background:#10b98126}.project-widget-status.status-paused{color:#f59e0b;background:#f59e0b26}.project-widget-members{color:var(--secondary);font-size:.72rem;font-family:var(--font-label);letter-spacing:.1em;align-items:center;gap:4px;display:flex}.project-widget-progress{flex-direction:column;gap:6px;display:flex}.project-widget-progress-header{font-size:.68rem;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--secondary);justify-content:space-between;display:flex}.project-widget-progress-track{background:#2a2a2a;border-radius:3px;height:6px;overflow:hidden}.project-widget-progress-fill{background:#3b82f6;border-radius:3px;height:100%;transition:width .6s}.project-widget-tasks{flex-direction:column;gap:6px;display:flex}.project-widget-tasks-title{font-size:.68rem;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--secondary);margin-bottom:2px}.project-widget-task{border-radius:var(--rounded-md);background:#0a0a0a;border:1px solid #2a2a2a;align-items:center;gap:8px;padding:6px 10px;font-size:.8rem;display:flex}.project-widget-task.completed{opacity:.5}.project-widget-task .task-check{color:var(--secondary);flex-shrink:0;font-size:14px}.project-widget-task .task-check.done{color:#10b981}.project-widget-task .task-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-view-btn{align-self:flex-start;margin-top:4px}.vps-widget-summary{border-bottom:1px solid var(--border);justify-content:space-around;margin-bottom:16px;padding-bottom:16px;display:flex}.vps-widget-summary-item{flex-direction:column;align-items:center;gap:2px;display:flex}.vps-widget-summary-value{font-family:var(--font-display);color:var(--primary);font-size:1.6rem;font-weight:700}.vps-widget-summary-label{font-size:.65rem;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--secondary)}.vps-widget-list{flex-direction:column;gap:12px;display:flex}.vps-widget-item{border-radius:var(--rounded-md);background:#0a0a0a;border:1px solid #2a2a2a;padding:12px 14px}.vps-widget-item-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.vps-widget-item-name{font-family:var(--font-display);letter-spacing:.04em;color:var(--primary);align-items:center;gap:8px;font-size:.9rem;font-weight:700;display:flex}.vps-widget-status-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.vps-widget-item-status{font-size:.6rem;font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;font-weight:700}.vps-widget-gauges{justify-content:space-around;align-items:center;margin-bottom:8px;display:flex}.vps-widget-gauge{flex-direction:column;align-items:center;gap:4px;display:flex}.vps-widget-gauge-label{font-size:.6rem;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--secondary)}.vps-widget-item-footer{font-size:.65rem;font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;display:flex}.vps-widget-suplier{color:var(--secondary)}.vps-widget-expiry{font-weight:700}.vps-widget-more{text-align:center;font-size:.72rem;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--secondary);padding:10px}.lock-bar{border-radius:var(--rounded-lg);background:#e1060014;border:1px solid #e106004d;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:12px 20px;display:flex}.lock-bar-left{align-items:center;gap:10px;min-width:0;display:flex}.lock-bar-icon{color:var(--tertiary);flex-shrink:0;font-size:18px}.lock-bar-text{font-size:.78rem;font-family:var(--font-label);letter-spacing:.08em;color:var(--tertiary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.lock-bar-form{flex-shrink:0;align-items:center;gap:8px;display:flex}.lock-bar-form input{border:1px solid var(--border);border-radius:var(--rounded-md);font-size:.85rem;font-family:var(--font-body);background:var(--neutral);color:var(--primary);outline:none;width:180px;padding:8px 14px;transition:border-color .2s}.lock-bar-form input:focus{border-color:var(--tertiary)}.lock-bar-btn{white-space:nowrap;padding:8px 16px!important;font-size:.72rem!important}.lock-bar-error{font-size:.72rem;font-family:var(--font-label);color:var(--tertiary);white-space:nowrap}.sidebar-lock-indicator{font-size:.7rem;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--tertiary);border-radius:var(--rounded-md);background:#e1060014;border:1px solid #e106004d;align-items:center;gap:8px;margin:4px 12px;padding:8px 24px;display:flex}@media (width<=1024px){.dashboard-widgets-row{grid-template-columns:1fr}}.apikey-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.apikey-grid .empty-msg{grid-column:1/-1}@media (width<=900px){.apikey-grid{grid-template-columns:1fr}}.apikey-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);flex-direction:column;gap:8px;padding:20px;transition:border-color .2s;display:flex}.apikey-item:hover{border-color:var(--secondary)}.apikey-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.apikey-title{align-items:center;gap:10px;min-width:0;display:flex}.apikey-title h3{font-size:1rem;font-family:var(--font-body);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.apikey-code{color:var(--primary);background:var(--neutral);border-radius:var(--rounded-md);border:1px solid var(--border);letter-spacing:.05em;flex-shrink:0;padding:2px 8px;font-family:Consolas,Monaco,monospace;font-size:.7rem}.apikey-service{font-size:.65rem;font-family:var(--font-label);letter-spacing:.14em;text-transform:uppercase;color:var(--tertiary);border-radius:var(--rounded-md);white-space:nowrap;border:1px solid #e106004d;flex-shrink:0;padding:3px 9px}.apikey-desc{color:var(--secondary);font-size:.85rem}.apikey-value code{color:var(--secondary);background:var(--neutral);border-radius:var(--rounded-md);border:1px solid var(--border);text-overflow:ellipsis;white-space:nowrap;padding:6px 12px;font-family:Consolas,Monaco,monospace;font-size:.85rem;display:block;overflow:hidden}.apikey-footer{border-top:1px solid var(--border);justify-content:flex-end;margin-top:auto;padding-top:8px;display:flex;position:relative}.delete-countdown{justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.countdown-bar{background:var(--tertiary);height:2px;transition:width 1s linear;position:absolute;top:-1px;left:0}.countdown-text{font-size:.72rem;font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;color:var(--tertiary)}.countdown-actions{gap:2px;display:flex}.xterm{cursor:text;-webkit-user-select:none;user-select:none;position:relative}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{z-index:5;position:absolute;top:0}.xterm .xterm-helper-textarea{opacity:0;z-index:-5;white-space:nowrap;resize:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;top:0;left:-9999em;overflow:hidden}.xterm .composition-view{color:#fff;white-space:nowrap;z-index:1;background:#000;display:none;position:absolute}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{cursor:default;background-color:#000;position:absolute;inset:0;overflow-y:scroll}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;top:0;left:0}.xterm-char-measure-element{visibility:hidden;line-height:normal;display:inline-block;position:absolute;top:0;left:-9999em}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{z-index:10;color:#0000;pointer-events:none;position:absolute;inset:0}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:#0000}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre;font-family:monospace}.xterm .xterm-accessibility-tree>div{transform-origin:0;width:fit-content}.xterm .live-region{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:underline double;text-decoration:underline double}.xterm-underline-3{-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.xterm-underline-4{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.xterm-underline-5{-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:underline overline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;pointer-events:none;position:absolute;top:0;right:0}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;z-index:11;background:0 0;transition:opacity .1s linear}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{display:none;position:absolute}.xterm .xterm-scrollable-element>.shadow.top{width:100%;height:3px;box-shadow:var(--vscode-scrollbar-shadow,#000) 0 6px 6px -6px inset;display:block;top:0;left:3px}.xterm .xterm-scrollable-element>.shadow.left{width:3px;height:100%;box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset;display:block;top:3px;left:0}.xterm .xterm-scrollable-element>.shadow.top-left-corner{width:3px;height:3px;display:block;top:0;left:0}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset}.drive-title-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.header-actions{gap:10px;display:flex}.drive-status{border-radius:var(--rounded-md);font-family:var(--font-label);letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--border);background:0 0;align-items:center;gap:8px;padding:5px 12px 5px 10px;font-size:.68rem;display:inline-flex}.drive-status .status-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.drive-status-ok{color:#10b981;cursor:default;border-color:#10b9814d}.drive-status-ok .status-dot{background:#10b981;box-shadow:0 0 6px #10b981}.drive-status-action{color:inherit;opacity:.6;cursor:pointer;background:0 0;border:none;align-items:center;margin-left:2px;padding:0;transition:opacity .2s;display:inline-flex}.drive-status-action:hover{opacity:1}.drive-status-warn{color:#f59e0b;cursor:pointer;border-color:#f59e0b4d;transition:background .2s}.drive-status-warn .status-dot{background:#f59e0b;box-shadow:0 0 6px #f59e0b}.drive-status-warn:hover{background:#f59e0b14}.drive-tree{border:1px solid var(--border);border-radius:var(--rounded-lg);background:var(--surface);overflow:hidden}.drive-tree-row{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:10px 14px;display:flex}.drive-tree-row:hover{background:#f2f2f208}.drive-tree-children{background:#0000001a}.drive-tree-header{color:var(--secondary);font-size:.7rem;font-weight:500;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;cursor:default}.drive-tree-header:hover{background:0 0}.drive-tree-name{min-width:0;color:var(--primary);flex:1;align-items:center;gap:8px;font-size:.9rem;display:flex}.drive-tree-desc{flex-shrink:0;width:220px;min-width:0}.drive-tree-type{flex-shrink:0;width:90px}.drive-tree-size{width:80px;color:var(--secondary);flex-shrink:0;font-size:.85rem}.drive-tree-date{width:150px;color:var(--secondary);flex-shrink:0;font-size:.85rem}.drive-tree-actions{flex-shrink:0;gap:2px;width:90px;display:flex}.tree-toggle{cursor:pointer;color:var(--secondary);flex-shrink:0;align-items:center;transition:color .2s;display:flex}.tree-toggle:hover{color:var(--tertiary)}.tree-toggle-spacer{flex-shrink:0;width:16px}.file-name{text-overflow:ellipsis;white-space:nowrap;transition:color .2s;overflow:hidden}.file-name.is-folder{cursor:pointer}.file-name.is-folder:hover{color:var(--tertiary)}.file-icon{color:var(--secondary);flex-shrink:0;align-items:center;display:flex}.badge{background:var(--neutral);color:var(--secondary);border:1px solid var(--border);border-radius:var(--rounded-md);font-size:.65rem;font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;padding:3px 9px}.alert{border-radius:var(--rounded-lg);justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:10px 14px;font-size:.85rem;display:flex}.alert-success{color:#10b981;background:#10b9811a;border:1px solid #10b98133}.alert-error{color:var(--tertiary);background:#e106001a;border:1px solid #e1060033}.modal-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.preview-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);width:90vw;max-height:95vh;overflow:auto}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.modal-header h3{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.1rem;overflow:hidden}.preview-body{justify-content:center;align-items:center;min-height:200px;padding:16px;display:flex}.preview-loading,.preview-error{text-align:center;color:var(--secondary);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;padding:32px;font-size:.8rem}.preview-error a{color:var(--tertiary)}.spin{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.desc-view{cursor:pointer;color:var(--secondary);align-items:center;gap:6px;font-size:.85rem;display:flex}.desc-view:hover .desc-edit-icon{opacity:1}.desc-edit-icon{opacity:0;flex-shrink:0;font-size:.78rem;transition:opacity .2s}.desc-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.text-muted{color:var(--secondary);opacity:.7;font-size:.85rem;font-style:italic}.desc-edit{align-items:center;gap:6px;display:flex}.desc-edit input{border:1px solid var(--border);border-radius:var(--rounded-md);background:var(--neutral);color:var(--primary);outline:none;padding:6px 10px;font-size:.85rem;transition:border-color .2s}.desc-edit input:focus{border-color:var(--tertiary)}.empty-state{text-align:center;color:var(--secondary);padding:48px;font-size:.9rem}.project-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);cursor:pointer;flex-direction:column;gap:10px;padding:18px;transition:border-color .2s;display:flex}.project-card:hover{border-color:var(--secondary)}.project-card-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.project-card-header h3{margin:0;font-size:1.1rem}.project-card-desc{color:var(--secondary);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.85rem;display:-webkit-box;overflow:hidden}.project-card-meta{color:var(--primary);flex-direction:column;gap:4px;font-size:.82rem;display:flex}.meta-label{color:var(--secondary);font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;margin-right:4px;font-size:.68rem}.project-deadline.overdue{color:var(--tertiary)}.project-card-tasks{border:1px solid var(--border);border-radius:var(--rounded-md);background:#f2f2f208;flex-direction:column;gap:5px;padding:10px;list-style:none;display:flex}.project-card-tasks li{color:var(--primary);align-items:center;gap:7px;font-size:.8rem;display:flex}.project-card-tasks li.completed .task-title{color:var(--secondary);text-decoration:line-through}.task-check{color:var(--secondary);flex-shrink:0}.task-check.done{color:#10b981}.task-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.task-due{color:var(--secondary);flex-shrink:0;font-size:.7rem}.project-card-tasks-more{color:var(--secondary);font-size:.76rem;font-style:italic}.project-card-footer{align-items:center;gap:14px;margin-top:4px;display:flex}.project-stat{color:var(--secondary);align-items:center;gap:6px;font-size:.82rem;display:flex}.project-progress{color:var(--secondary);flex:1;align-items:center;gap:8px;font-size:.78rem;display:flex}.project-progress-bar{border-radius:var(--rounded-md);background:var(--neutral);border:1px solid var(--border);flex:1;height:6px;overflow:hidden}.project-progress-fill{background:var(--tertiary);height:100%}.project-card-footer .item-actions,.project-card-footer .delete-countdown{margin-left:auto}.badge.status-planning{color:var(--secondary)}.badge.status-in_progress{color:#f59e0b;border-color:#f59e0b4d}.badge.status-completed{color:#10b981;border-color:#10b9814d}.badge.status-paused{color:var(--tertiary);border-color:#e106004d}.back-link{color:var(--secondary);align-items:center;gap:6px;margin-bottom:16px;font-size:.85rem;text-decoration:none;transition:color .2s;display:inline-flex}.back-link:hover{color:var(--primary)}.status-select{background:var(--neutral);color:var(--primary);border:1px solid var(--border);border-radius:var(--rounded-md);font-family:var(--font-body);outline:none;padding:8px 10px;font-size:.85rem}.project-info{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);margin-bottom:24px;padding:20px 22px}.project-info p{color:var(--primary);margin-bottom:14px;font-size:.95rem}.project-info-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:8px;display:grid}.project-info-grid .meta-label{margin-bottom:2px;display:block}.project-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);flex-direction:column;min-height:360px;margin:0 0 24px;padding:20px 22px;display:flex}.section-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.section-header h2{font-size:1.3rem}.project-dashboard{margin-bottom:24px}.stat-card-warn{border-color:#e1060066}.stat-card-warn .stat-icon{color:var(--tertiary)}.project-layout{align-items:flex-start;gap:24px;display:flex}.project-main{flex:0 0 80%;min-width:0;max-width:80%}.project-nav{flex-direction:column;flex:0 0 20%;gap:10px;min-width:0;max-width:20%;display:flex}.project-nav-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);cursor:pointer;font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;color:var(--secondary);text-align:left;padding:16px 18px;font-size:.8rem;transition:border-color .2s,color .2s,background .2s}.project-nav-item:hover{border-color:var(--secondary);color:var(--primary)}.project-nav-item.active{border-color:var(--tertiary);color:var(--primary);background:#e106000f}@media (width<=900px){.project-layout{flex-direction:column-reverse}.project-main,.project-nav{flex:auto;max-width:100%}.project-nav{flex-flow:wrap}.project-nav-item{flex:auto}}.feature-progress{max-width:480px;margin-bottom:14px}.feature-tree{flex-direction:column;flex:1;gap:6px;display:flex}.tree-row{background:var(--neutral);border:1px solid var(--border);border-radius:var(--rounded-md);align-items:center;gap:8px;padding:10px 12px;display:flex}.tree-toggle,.tree-check{cursor:pointer;color:var(--secondary);flex-shrink:0;align-items:center;display:flex}.tree-label{cursor:pointer;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tree-label.completed{color:var(--secondary);text-decoration:line-through}.tree-desc{color:var(--secondary);font-size:.82rem}.tree-children{border-left:1px solid var(--border);flex-direction:column;gap:6px;margin:6px 0 6px 28px;padding-left:12px;display:flex}.usecase-row{background:#f2f2f205}.feature-row{background:0 0;border-style:dashed}.tree-form{margin:4px 0}.tree-add-btn{align-self:flex-start;align-items:center;gap:6px;display:inline-flex}.member-list{flex-direction:column;flex:1;gap:8px;display:flex}.member-chip{background:var(--neutral);border:1px solid var(--border);border-radius:var(--rounded-md);justify-content:space-between;align-items:center;padding:12px 14px;font-size:.95rem;display:flex}.member-role{color:var(--secondary)}.member-contact{color:var(--secondary);margin-top:2px;font-size:.8rem}.document-chip-info{color:var(--primary);align-items:center;gap:8px;font-size:.95rem;display:flex}.document-picker{border:1px solid var(--border);border-radius:var(--rounded-lg);background:var(--neutral);margin-bottom:14px;overflow:hidden}.document-picker-search{border-bottom:1px solid var(--border);color:var(--secondary);align-items:center;gap:8px;padding:10px 12px;display:flex}.document-picker-search input{color:var(--primary);background:0 0;border:none;outline:none;flex:1;font-size:.88rem}.document-picker-list{max-height:260px;overflow-y:auto}.document-picker-item{cursor:pointer;border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:10px 12px;transition:background .2s;display:flex}.document-picker-item:last-child{border-bottom:none}.document-picker-item:hover{background:#f2f2f20d}.document-picker-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.document-picker-size{color:var(--secondary);flex-shrink:0;font-size:.76rem}.history-list{flex-direction:column;flex:1;gap:8px;display:flex}.history-item{background:var(--neutral);border:1px solid var(--border);border-radius:var(--rounded-md);padding:12px 14px}.history-date{font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;color:var(--secondary);margin-bottom:6px;font-size:.72rem}.history-content{color:var(--primary);white-space:pre-wrap;font-size:.9rem}.meeting-attendees{color:var(--secondary);margin-bottom:4px;font-size:.8rem}.history-item .item-actions,.history-item .delete-countdown{margin-top:8px}.guide-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.guide-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);cursor:pointer;flex-direction:column;gap:10px;padding:18px;transition:border-color .2s;display:flex}.guide-card:hover{border-color:var(--secondary)}.guide-card-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.guide-card-header h3{margin:0;font-size:1.1rem}.guide-card-desc{color:var(--secondary);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.85rem;display:-webkit-box;overflow:hidden}.guide-card-footer{align-items:center;gap:14px;margin-top:4px;display:flex}.guide-card-footer .item-actions,.guide-card-footer .delete-countdown{margin-left:auto}.guide-category-badge{color:var(--tertiary);border-color:#e106004d}.guide-search{background:var(--surface);width:100%;max-width:420px;color:var(--primary);border:1px solid var(--border);border-radius:var(--rounded-md);font-family:var(--font-body);outline:none;margin-bottom:16px;padding:9px 12px;font-size:.85rem}.guide-search:focus{border-color:var(--tertiary)}.guide-step-list{flex-direction:column;gap:12px;padding:0;list-style:none;display:flex}.guide-step{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);padding:14px 16px}.guide-step-header{align-items:center;gap:10px;display:flex}.guide-step-num{background:var(--neutral);border:1px solid var(--border);width:26px;height:26px;color:var(--primary);font-size:.78rem;font-family:var(--font-label);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.guide-step-title{flex:1;margin:0;font-size:1rem}.guide-step-order-btns{gap:2px;display:flex}.guide-step-content{color:var(--primary);white-space:pre-wrap;margin:10px 0 0;font-size:.95rem}.guide-step-command{margin-top:10px;position:relative}.guide-step-command pre{background:var(--neutral);border:1px solid var(--border);border-radius:var(--rounded-md);margin:0;padding:10px 40px 10px 12px;overflow-x:auto}.guide-step-command code{color:var(--primary);white-space:pre-wrap;word-break:break-word;font-family:Courier New,monospace;font-size:.85rem}.step-copy-btn{position:absolute;top:6px;right:6px}.step-command-input{font-family:Courier New,monospace}.tab-nav{border-bottom:1px solid var(--border);gap:8px;margin-bottom:20px;padding-bottom:8px;display:flex}.tab-btn{border-radius:var(--rounded-md);color:var(--secondary);font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:10px 18px;font-size:.82rem;transition:all .2s;display:inline-flex}.tab-btn:hover{color:var(--primary);border-color:var(--border)}.tab-btn.active{color:var(--primary);border-color:var(--tertiary);background:#e106000f}.level-dashboard{flex-direction:column;gap:24px;display:flex}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);text-align:center;padding:20px}.stat-value{color:var(--primary);font-size:2rem;font-weight:700}.stat-label{color:var(--secondary);font-size:.78rem;font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;margin-top:4px}.level-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);padding:20px 22px}.level-section h2{margin-bottom:14px;font-size:1.1rem}.level-bars{flex-direction:column;gap:10px;display:flex}.level-bar-row{align-items:center;gap:12px;display:flex}.level-bar-track{background:var(--neutral);border:1px solid var(--border);border-radius:var(--rounded-md);flex:1;height:24px;overflow:hidden}.level-bar-fill{background:var(--tertiary);border-radius:var(--rounded-md);min-width:4px;height:100%;transition:width .4s}.level-bar-count{color:var(--primary);text-align:right;min-width:30px;font-size:.9rem;font-weight:600}.recent-list{flex-direction:column;gap:6px;display:flex}.recent-item{background:var(--neutral);border:1px solid var(--border);border-radius:var(--rounded-md);cursor:pointer;justify-content:space-between;align-items:center;padding:12px 14px;transition:border-color .2s;display:flex}.recent-item:hover{border-color:var(--secondary)}.recent-item-info{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.recent-item-name{color:var(--primary);font-weight:500}.recent-item-unit{color:var(--secondary);font-size:.82rem}.recent-item-status{align-items:center;gap:5px;font-size:.8rem;display:inline-flex}.recent-item-status.status-done{color:#10b981}.recent-item-status.status-pending{color:var(--secondary)}.level-badge{border-radius:var(--rounded-md);font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;border:1px solid;padding:2px 10px;font-size:.72rem;display:inline-block}.level-badge.small{padding:1px 7px;font-size:.65rem}.level-badge.level-1{color:#10b981;border-color:#10b9814d}.level-badge.level-2{color:#f59e0b;border-color:#f59e0b4d}.level-badge.level-3{color:#f97316;border-color:#f973164d}.level-badge.level-4{color:#ef4444;border-color:#ef44444d}.badge-final{color:#8b5cf6;border-color:#8b5cf64d}.level-units-tab,.unit-list{flex-direction:column;gap:16px;display:flex}.unit-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);padding:18px}.unit-card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.unit-card-info h3{margin:0 0 4px;font-size:1.05rem}.unit-contact{color:var(--secondary);font-size:.82rem;display:block}.unit-profiles{border-top:1px solid var(--border);padding-top:12px}.unit-profiles-header{color:var(--secondary);font-size:.85rem;font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.profile-card{background:var(--neutral);border:1px solid var(--border);border-radius:var(--rounded-md);cursor:pointer;margin-bottom:8px;padding:12px 14px;transition:border-color .2s}.profile-card:hover{border-color:var(--secondary)}.profile-card:last-child{margin-bottom:0}.profile-card-header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.profile-card-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.profile-name{color:var(--primary);font-weight:500}.profile-notes{color:var(--secondary);margin:6px 0;font-size:.82rem}.profile-meta{align-items:center;gap:14px;margin-top:6px;font-size:.8rem;display:flex}.profile-status{align-items:center;gap:4px;display:inline-flex}.profile-status.status-done{color:#10b981}.profile-status.status-pending,.profile-doc-progress{color:var(--secondary)}.level-templates-tab{flex-direction:column;gap:16px;display:flex}.template-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.template-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);padding:16px}.template-card-header{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.template-card-header h3{margin:0;font-size:.95rem}.template-desc{color:var(--secondary);margin-bottom:8px;font-size:.82rem}.template-drive-link{color:var(--tertiary);align-items:center;gap:5px;font-size:.82rem;text-decoration:none;display:inline-flex}.template-drive-link:hover{text-decoration:underline}.profile-detail-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.profile-detail-title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.profile-detail-title h1{margin:0;font-size:1.4rem}.btn-toggle{border-radius:var(--rounded-md);font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:1px solid;align-items:center;gap:6px;padding:8px 16px;font-size:.78rem;transition:all .2s;display:inline-flex}.btn-toggle.btn-done{color:#10b981;background:#10b9810f;border-color:#10b9814d}.btn-toggle.btn-pending{color:var(--secondary);border-color:var(--border);background:0 0}.btn-toggle.btn-pending:hover{border-color:var(--secondary)}.profile-detail-info{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);margin-bottom:20px;padding:18px 20px}.profile-detail-info .info-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:10px;display:grid}.profile-detail-info .meta-label{margin-bottom:2px;display:block}.profile-detail-info p{color:var(--primary);font-size:.9rem}.profile-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);margin-bottom:20px;padding:20px 22px}.doc-list{flex-direction:column;gap:10px;display:flex}.doc-card{background:var(--neutral);border:1px solid var(--border);border-radius:var(--rounded-md);padding:14px}.doc-card-header{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.doc-card-title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.doc-standard{align-items:center;gap:4px;font-size:.8rem;display:inline-flex}.doc-standard.standard-yes{color:#10b981}.doc-standard.standard-no{color:var(--secondary)}.doc-template-name{color:var(--secondary);border-radius:var(--rounded-md);background:#f2f2f20d;padding:2px 8px;font-size:.82rem}.doc-drive-link{color:var(--tertiary);margin-bottom:4px;font-size:.82rem;text-decoration:none;display:inline-block}.doc-drive-link:hover{text-decoration:underline}.doc-edit-notes{color:var(--secondary);font-size:.82rem;font-style:italic}.doc-history{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.doc-history-header{color:var(--secondary);justify-content:space-between;align-items:center;margin-bottom:6px;font-size:.78rem;display:flex}.doc-history-header span{align-items:center;gap:4px;display:inline-flex}.history-entry{border:1px solid var(--border);border-radius:var(--rounded-sm);background:#f2f2f208;justify-content:space-between;align-items:center;margin-bottom:4px;padding:6px 10px;font-size:.8rem;display:flex}.history-entry-dates{color:var(--primary);gap:12px;display:flex}.empty-msg-sm{color:var(--secondary);font-size:.78rem;font-style:italic}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);width:90%;max-width:560px;max-height:90vh;padding:24px;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header h3{margin:0;font-size:1.1rem}.btn-sm{border:1px solid var(--border);border-radius:var(--rounded-md);color:var(--secondary);cursor:pointer;font-size:.75rem;font-family:var(--font-label);letter-spacing:.04em;background:0 0;align-items:center;gap:4px;padding:4px 10px;transition:all .2s;display:inline-flex}.btn-sm:hover{border-color:var(--secondary);color:var(--primary)}.checkbox-label{color:var(--primary);cursor:pointer;align-items:center;gap:8px;margin:8px 0;font-size:.85rem;display:inline-flex}.checkbox-label input[type=checkbox]{cursor:pointer;width:16px;height:16px}.dashboard-chart-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=700px){.dashboard-chart-row{grid-template-columns:1fr}}.donut-section{flex-direction:column;align-items:center;display:flex}.donut-section h2{align-self:flex-start}.donut-chart-container{width:160px;height:160px;margin:8px 0;position:relative}.donut-chart{width:100%;height:100%}.donut-center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.donut-pct{color:var(--primary);font-size:1.6rem;font-weight:700;line-height:1}.donut-label{color:var(--secondary);font-size:.7rem;font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;margin-top:2px}.donut-legend{flex-direction:column;gap:6px;width:100%;margin-top:8px;display:flex}.donut-legend-item{color:var(--primary);align-items:center;gap:8px;font-size:.82rem;display:flex}.legend-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.level-bars-section{flex:1}.infra-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.infra-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--rounded-lg);cursor:pointer;flex-direction:column;gap:8px;padding:18px;transition:border-color .2s;display:flex}.infra-card:hover{border-color:var(--secondary)}.infra-card-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.infra-card-header h3{align-items:center;gap:8px;margin:0;font-size:1.1rem;display:flex}.infra-card-address{color:var(--primary);margin:0;font-family:Courier New,monospace;font-size:.82rem}.infra-card-role{color:var(--secondary);margin:0;font-size:.85rem}.infra-card-footer{align-items:center;gap:14px;margin-top:4px;display:flex}.infra-card-footer .item-actions,.infra-card-footer .delete-countdown{margin-left:auto}.infra-badge-down{color:var(--tertiary);border-color:#e106004d;flex-shrink:0;align-items:center;gap:5px;display:inline-flex}.infra-table-wrap{overflow-x:auto}.infra-table{border-collapse:collapse;width:100%;font-size:.88rem}.infra-table th{text-align:left;font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;color:var(--secondary);border-bottom:1px solid var(--border);white-space:nowrap;padding:8px 12px;font-size:.68rem}.infra-table td{border-bottom:1px solid var(--border);vertical-align:top;padding:10px 12px}.infra-table tbody tr:last-child td{border-bottom:none}.infra-table tbody tr:hover{background:#f2f2f208}.infra-table code{color:var(--primary);white-space:nowrap;font-family:Courier New,monospace;font-size:.85em}.infra-service-name{color:var(--primary);font-weight:500}.infra-service-note{color:var(--secondary);margin-top:2px;font-size:.78rem}.infra-status-pill{font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--rounded-md);white-space:nowrap;border:1px solid #0000;align-items:center;gap:5px;padding:3px 10px;font-size:.68rem;display:inline-flex}.infra-status-pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.infra-status-running{color:#10b981;background:#10b98114;border-color:#10b9814d}.infra-status-down{color:var(--tertiary);background:#e1060014;border-color:#e106004d}.infra-status-unknown{color:var(--secondary);border-color:var(--border);background:#f2f2f20a}.infra-port-warning{color:#f59e0b;border-radius:var(--rounded-md);background:#f59e0b1a;border:1px solid #f59e0b4d;align-items:center;gap:8px;padding:8px 12px;font-size:.82rem;display:flex}.infra-port-input-conflict{border-color:#f59e0b!important}.infra-port-conflict{color:#f59e0b!important}.infra-port-conflict-icon{color:#f59e0b;vertical-align:middle;margin-left:6px}
