.login-hint{margin-top:var(--spacing-sm);font-size:var(--text-sm)}.login-hint a{color:var(--color-accent)}.add-link{background:none;border:none;padding:0;font:inherit;cursor:pointer;color:var(--color-accent);text-decoration:none}.add-link:hover{text-decoration:underline}.service-card.dragging{opacity:.5;border-color:var(--color-accent)}.service-card.drag-over{border-color:var(--color-accent);background:var(--color-accent-muted)}.group-header{position:relative;display:flex;align-items:center;gap:var(--spacing-md);border:1px solid transparent;border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);transition:all .2s}.group-header .group-title{margin:0;line-height:1}.group-header a{display:flex;align-items:center}.group-header .group-uptime{margin-left:auto}.group-actions{position:absolute;right:0;top:50%;transform:translateY(-50%);display:flex;gap:var(--spacing-xs)}.edit-mode .group-uptime{display:none}.group-rename-form{display:flex;align-items:center;gap:var(--spacing-sm);flex:1}.group-rename-input{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font-size:var(--text-sm);transition:border-color var(--transition-fast)}.group-rename-input:focus{border-color:var(--color-accent);outline:2px solid var(--color-accent);outline-offset:-1px}.group-rename-input:focus:not(:focus-visible){outline:none}.edit-mode .service-card{cursor:grab}.edit-mode .service-card:active{cursor:grabbing}.service-item{position:relative}.service-card .service-actions{display:none;flex-direction:row;align-items:center;align-self:center;gap:var(--spacing-xs);margin-left:auto;flex-shrink:0}.service-card .service-actions .icon-btn .btn-text{display:none}.service-card .service-actions .icon-btn:has(.btn-text) .btn-icon{display:inline}.service-card .service-actions .icon-btn{padding:var(--spacing-xs) var(--spacing-sm);line-height:1;margin:0;display:inline-flex;align-items:center;justify-content:center}.edit-mode .service-card .service-actions{display:flex}.service-card .service-info{flex:1;min-width:0}.edit-mode .service-header{display:flex;align-items:center;gap:var(--spacing-sm)}.edit-mode .service-header h3{flex:1}.drop-zone{display:none;height:4px;margin:var(--spacing-xs) 0;background:transparent;border-radius:var(--radius-sm);transition:all .2s}.edit-mode .drop-zone{display:block}.drop-zone.active{height:40px;background:var(--color-accent-muted);border:2px dashed var(--color-accent)}.edit-modal{max-width:900px}.edit-modal .form{padding:var(--spacing-lg)}.edit-modal .error-message{margin:var(--spacing-lg);margin-bottom:0}.overall-uptime{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-bg-elevated);margin-bottom:var(--spacing-xl)}.overall-uptime .uptime-label{color:var(--color-text-secondary);font-size:var(--text-sm)}.overall-uptime .uptime-value{font-size:var(--text-xl)!important;font-weight:var(--font-semibold);pointer-events:none}.uptime-value.is-success,.group-uptime.is-success,.service-uptime.is-success,.stat-value.is-success{color:var(--color-success)!important}.uptime-value.is-warning,.group-uptime.is-warning,.service-uptime.is-warning{color:var(--color-warning, #f59e0b)!important}.uptime-value.is-error,.group-uptime.is-error,.service-uptime.is-error{color:var(--color-error)!important}.group-uptime{font-size:var(--text-sm)!important;font-weight:var(--font-medium);margin-left:auto;pointer-events:none}.service-uptime{position:absolute;top:var(--spacing-md);right:var(--spacing-md);font-size:var(--text-xs);font-weight:var(--font-medium);white-space:nowrap}.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs)}.icon-btn .btn-icon{line-height:1}.icon-btn:has(.btn-text) .btn-icon{display:none}.add-menu-container{position:relative}.add-menu{position:absolute;top:calc(100% + var(--spacing-xs));right:0;min-width:140px;background:var(--color-bg-elevated);border:1px solid var(--color-border);box-shadow:var(--shadow-md);z-index:1000}.add-menu-item{display:block;width:100%;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;color:var(--color-text-secondary);font-size:var(--text-sm);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.add-menu-item:hover,.add-menu-item:focus{background:var(--color-bg-hover);color:var(--color-text);outline:none}.add-menu-item:not(:last-child){border-bottom:1px solid var(--color-border)}.parent-select{padding:var(--spacing-xs) var(--spacing-md);background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);font-size:var(--text-sm);font-family:inherit;cursor:pointer;transition:all var(--transition-fast)}.parent-select:hover{border-color:var(--color-text);color:var(--color-text)}.parent-select:focus{border-color:var(--color-accent);color:var(--color-text);outline:none}.parent-select option{background:var(--color-bg-elevated);color:var(--color-text)}.modal-hint{margin:0 0 var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg);border:1px solid var(--color-border);font-size:var(--text-sm);color:var(--color-text-secondary)}@media(max-width:600px){.service-item.edit-mode .service-card{cursor:default}.group-header{flex-wrap:wrap;gap:var(--spacing-sm)}.group-actions{position:static;transform:none;width:100%;gap:var(--spacing-xs)}.edit-mode .service-header{flex-wrap:wrap}.icon-btn .btn-text{display:none}.icon-btn:has(.btn-text) .btn-icon{display:inline}.icon-btn{min-width:32px;padding:var(--spacing-xs);justify-content:center}.icon-btn .btn-icon{font-size:var(--text-base)}.service-actions{gap:var(--spacing-xs)}}
