*{box-sizing:border-box;margin:0;padding:0}#root,body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;max-width:100vw;overflow-x:hidden;position:relative;width:100%}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.container{margin:0 auto;max-width:1200px;padding:20px}@media (max-width:768px){.container{padding:10px}}.app-layout{display:flex;min-height:100vh;width:100%}.sidebar{background:#2c3e50;color:#fff;display:flex;flex-direction:column;height:100vh;left:0;overflow:hidden;position:fixed;top:0;transition:width .3s ease;will-change:width;z-index:1000}.sidebar.open{width:240px}.sidebar.collapsed{width:70px}.sidebar-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;min-height:60px;padding:1rem}.sidebar-title{font-size:1.4rem;font-weight:700;margin:0;overflow:hidden;white-space:nowrap}.sidebar.collapsed .sidebar-title{display:none}.sidebar-toggle{background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;flex-shrink:0;font-size:1.2rem;padding:.5rem;transition:background .2s}.sidebar-toggle:hover{background:#ffffff1a}.sidebar-nav{flex:1 1;overflow-y:auto;padding:1rem 0}.sidebar-item{align-items:center;background:none;border:none;color:#ecf0f1;cursor:pointer;display:flex;font-size:1rem;gap:1rem;padding:.75rem 1rem;position:relative;text-align:left;text-decoration:none;transition:all .2s;width:100%}.sidebar-item:hover{background:#ffffff1a}.sidebar-item.active{background:#3498db4d;border-left:3px solid #3498db}.sidebar-icon{flex-shrink:0;font-size:1.3rem;text-align:center;width:24px}.sidebar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-badge{background:#e74c3c;border-radius:10px;color:#fff;font-size:.7rem;font-weight:700;margin-left:auto;min-width:18px;padding:.15rem .4rem;text-align:center}.sidebar-badge-dot{animation:pulse 2s ease-in-out infinite;background:#e74c3c;border-radius:50%;height:8px;position:absolute;right:12px;top:8px;width:8px}.sidebar-footer{border-top:1px solid #ffffff1a;padding:.5rem 0}.sidebar-item.logout{color:#e74c3c}.sidebar-item.logout:hover{background:#e74c3c33}.sidebar-overlay{display:none}.main-content{display:flex;flex:1 1;flex-direction:column;min-height:100vh;overflow-y:auto;padding:20px;transition:margin-left .3s ease,width .3s ease}.main-content,.main-content>*{box-sizing:border-box;width:100%}.main-content>*{flex:1 1;min-height:0}.main-content.sidebar-open{margin-left:240px;width:calc(100% - 240px)}.main-content:not(.sidebar-open):not(.has-bottom-tabs){margin-left:70px;width:calc(100% - 70px)}.mobile-header{display:none}@media (max-width:768px){.mobile-header{display:none}.mobile-title{font-size:1.3rem;font-weight:700;margin:0}.main-content{height:auto;margin-left:0!important;min-height:100vh;overflow-y:auto;padding:10px 10px 75px;width:100%!important}.main-content.has-bottom-tabs{padding-bottom:75px}.sidebar{display:none}}.btn{transition:background .3s}.btn-primary{background:#3498db}.btn-primary:hover{background:#2980b9}.btn-success{background:#27ae60;color:#fff}.btn-success:hover{background:#229954}.btn-danger{background:#e74c3c}.btn-danger:hover{background:#c0392b}.btn-secondary{background:#95a5a6}.btn-secondary:hover{background:#7f8c8d}.form-group{margin-bottom:1rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-size:1rem;padding:.5rem;width:100%}.form-group textarea{min-height:100px}.card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;box-sizing:border-box;margin-bottom:1rem;padding:1.5rem;width:100%}@media (max-width:768px){.card{padding:1rem}}.table{background:#fff;border-collapse:collapse;border-radius:8px;overflow:hidden;width:100%}.table td,.table th{border-bottom:1px solid #ddd;padding:1rem;text-align:left}.table th{font-weight:600}.table th,.table tr:hover{background:#f8f9fa}@media (max-width:768px){.table{font-size:.9rem}.table td,.table th{padding:.5rem}}.modal,.modal-overlay{box-sizing:border-box}.modal{display:flex;flex-direction:column;max-width:500px;overflow:hidden}@media (max-width:768px){.modal-overlay{padding:10px}.modal{max-width:100%}.modal-body,.modal-footer,.modal-header{padding-left:1rem;padding-right:1rem}}.modal-header{border-bottom:1px solid #e0e0e0;flex-shrink:0;padding:1.5rem 2rem 1rem}.modal-close{font-size:1.5rem}.modal-body{flex:1 1;overflow-y:auto;padding:1.5rem 2rem}.modal-footer{background:#fff;border-top:1px solid #e0e0e0;flex-shrink:0;gap:1rem;padding:1rem 2rem 1.5rem}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.1)}}.bottom-tab-bar{display:none}@media (max-width:768px){.bottom-tab-bar{background:#2c3e50;bottom:0;box-shadow:0 -2px 10px #00000026;justify-content:space-around;left:0;padding:.4rem 0 calc(.4rem + env(safe-area-inset-bottom, 0));position:fixed;right:0;z-index:1001}.bottom-tab-bar,.tab-item{align-items:center;display:flex;touch-action:manipulation}.tab-item{-webkit-tap-highlight-color:rgba(52,152,219,.3);background:none;border:none;color:#95a5a6;cursor:pointer;flex:1 1;flex-direction:column;font-family:inherit;justify-content:center;max-width:80px;padding:.25rem;position:relative;text-decoration:none;transition:color .2s}.tab-item.active,.tab-item:hover{color:#3498db}.tab-item:focus{outline:none}.tab-icon{font-size:1.1rem;line-height:1;position:relative}.tab-label{font-size:.6rem;font-weight:500;margin-top:.15rem}.tab-badge{background:#e74c3c;border-radius:6px;color:#fff;font-size:.55rem;font-weight:700;min-width:12px;padding:.1rem .25rem;pointer-events:none;position:absolute;right:-4px;text-align:center;top:-4px}.more-menu-overlay{align-items:flex-end;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding-bottom:60px;position:fixed;right:0;top:0;z-index:1002}.more-menu{animation:slideUp .2s ease-out;background:#fff;border-radius:12px 12px 0 0;box-shadow:0 -4px 20px #0003;max-width:400px;padding:.75rem .75rem calc(.75rem + env(safe-area-inset-bottom, 0));width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.more-menu-item{align-items:center;background:none;border:none;border-radius:8px;color:#2c3e50;cursor:pointer;display:flex;font-size:.95rem;gap:.75rem;padding:.75rem;text-align:left;text-decoration:none;transition:background .2s;width:100%}.more-menu-item:active,.more-menu-item:hover{background:#f0f0f0}.more-menu-item.active{background:#e3f2fd;color:#3498db}.more-menu-item.logout{border-top:1px solid #eee;color:#e74c3c;margin-top:.5rem;padding-top:.75rem}.more-menu-icon{font-size:1.2rem;text-align:center;width:28px}.more-menu-label{flex:1 1;font-weight:500}.more-menu-badge{background:#e74c3c;border-radius:8px;color:#fff;font-size:.7rem;font-weight:700;min-width:18px;padding:.15rem .4rem;text-align:center}.tab-badge-dot{animation:pulse 2s ease-in-out infinite;background:#e74c3c;border-radius:50%;height:8px;pointer-events:none;position:absolute;right:-2px;top:-2px;width:8px}}.home-container{box-sizing:border-box;height:100%;padding:20px;width:100%}.home-hero{margin-bottom:50px;padding:40px 20px;text-align:center}.home-hero h1{color:#2c3e50;font-size:42px;margin-bottom:16px}.home-subtitle{color:#666;font-size:20px;margin:0 auto;max-width:600px}.home-sections{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));padding:20px 0}.home-card{background-color:#fff;border:2px solid #0000;border-radius:12px;box-shadow:0 2px 8px #0000001a;color:inherit;cursor:pointer;padding:40px;text-align:center;text-decoration:none;transition:all .3s ease}.home-card:hover{border-color:#4caf50;box-shadow:0 8px 24px #00000026;transform:translateY(-6px)}.card-icon{font-size:64px;margin-bottom:20px}.home-card h2{color:#333;font-size:24px;margin:0 0 12px}.home-card p{color:#666;font-size:15px;line-height:1.6;margin:0}.notifications-summary-card{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;display:flex;gap:20px;margin-bottom:40px;padding:30px;text-decoration:none;transition:all .3s ease}.notifications-summary-card:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-4px)}.summary-icon{animation:pulse 2s ease-in-out infinite;font-size:48px}.summary-content h2{color:#fff;font-size:28px;margin:0 0 8px}.summary-content p{color:#ffffffe6;font-size:16px;margin:0}.summary-arrow{flex-shrink:0;font-size:32px;font-weight:700;transition:transform .3s ease}.notifications-summary-card:hover .summary-arrow{transform:translateX(8px)}.no-notifications{box-shadow:0 2px 8px #0000000d;margin-bottom:40px;padding:48px 24px}.no-notifications-icon{font-size:64px}.no-notifications p{font-size:18px}@media (max-width:768px){.home-hero h1{font-size:32px}.home-subtitle{font-size:16px}.home-sections{grid-template-columns:1fr}.home-card{padding:30px}.card-icon{font-size:48px}.notification-card{align-items:flex-start;flex-direction:column;gap:12px}.notification-icon{font-size:24px}.notification-action{text-align:center;width:100%}}.barn-layout-container{display:flex;flex-direction:column;height:calc(100vh - 120px);width:100%}.barn-header{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem;padding:1rem}.header-top{flex-wrap:wrap;gap:1rem;justify-content:space-between}.header-buttons,.header-top{align-items:center;display:flex}.header-buttons{gap:.75rem}.barn-header h2{margin:0}.btn{font-size:1rem;font-weight:500;padding:.5rem 1rem;transition:all .3s}.btn-secondary{background:#6c757d}.btn-secondary:hover{background:#5a6268}.btn-warning{background:#f39c12;color:#fff}.btn-warning:hover{background:#e67e22}.barn-layout-container .btn-primary.save-btn{background:#27ae60;color:#fff}.barn-layout-container .btn-primary.save-btn:hover{background:#229954}.pen-palette{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.pen-palette p{font-weight:500;margin:0}.new-pen-btn{background:#3498db;border:none;border-radius:4px;color:#fff;cursor:grab;font-size:.9rem;padding:10px 20px;transition:all .3s}.new-pen-btn:hover{background:#2980b9}.new-pen-btn.dragging{cursor:grabbing;opacity:.5}.barn-canvas{background:#fff;background-image:linear-gradient(#00000008 1px,#0000 0),linear-gradient(90deg,#00000008 1px,#0000 0);background-size:20px 20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:grab;flex:1 1;min-height:600px;overflow:hidden;position:relative}.barn-canvas.drag-over{background-color:#e8f4f8}.barn-canvas-inner{height:100%;position:relative;transform-origin:center center;width:100%;will-change:transform}.pen{align-items:center;border:2px solid #2c3e50;border-radius:4px;cursor:move;display:flex;flex-direction:column;justify-content:center;padding:8px;position:absolute;transition:box-shadow .2s ease;-webkit-user-select:none;user-select:none;will-change:transform}.pen:hover{box-shadow:0 4px 8px #0003}.pen.dragging{cursor:grabbing}.pen.locked{cursor:pointer;opacity:.95}.pen.locked:hover{box-shadow:0 2px 6px #00000026}.pen.hanging,.pen.pen,.pen.stack{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.pen-label{align-items:center;display:flex;flex-direction:column;font-size:.9rem;font-weight:700;margin-bottom:4px;text-align:center}.pen-cage-number{background:#8080804d;border-radius:3px;font-size:.7rem;font-weight:600;margin-bottom:2px;padding:1px 4px}.pen-rabbit{font-size:.8rem;opacity:.9;text-align:center}.pen-delete{align-items:center;background:#e74c3ce6;border:none;border-radius:50%;color:#fff;cursor:pointer;display:none;font-size:16px;height:20px;justify-content:center;line-height:1;position:absolute;right:2px;top:2px;width:20px}.pen:hover .pen-delete{display:flex}.pen-delete:hover{background:#c0392b}.snap-guide{background:#ff4757;pointer-events:none;position:absolute;z-index:1000}.snap-guide-horizontal{box-shadow:0 0 4px #ff4757;height:1px;left:-5000px;right:-5000px}.snap-guide-vertical{bottom:-5000px;box-shadow:0 0 4px #ff4757;top:-5000px;width:1px}.pen.drag-preview{align-items:center;border:2px solid #ffffff80;border-radius:8px;color:#fff;display:flex;flex-direction:column;justify-content:center}.breeding-indicator{animation:heartbeat 1.5s ease-in-out infinite;cursor:help;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));font-size:1.2rem;left:2px;line-height:1;position:absolute;top:2px;z-index:10}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@media (max-width:768px){.barn-layout-container{height:calc(100vh - 100px)}.pen-palette{align-items:flex-start;flex-direction:column}.new-pen-btn{width:100%}.barn-canvas{min-height:400px;touch-action:none}.pen{min-height:60px;min-width:80px}.pen-label{font-size:.8rem}.pen-rabbit{font-size:.7rem}.pen-delete{display:flex}.desktop-only{display:none!important}}.modal{border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:600px;overflow-y:visible;padding:2rem;position:relative;width:90%}.modal-header{margin-bottom:1.5rem}.modal-header h2{font-size:1.5rem}.modal-close{align-items:center;display:flex;font-size:2rem;height:2rem;justify-content:center;width:2rem}.modal-close:hover{color:#000}.form-group{margin-bottom:1.5rem}.form-group label{color:#333;margin-bottom:.5rem}.form-group input,.form-group select{border:1px solid #ddd;border-radius:4px;font-size:1rem;padding:.5rem;width:100%}.form-group input.input-error{background-color:#fff5f5;border-color:#dc3545}.form-group .error-text{color:#dc3545;display:block;font-size:.85rem;margin-top:.25rem}.modal-footer{gap:.75rem;margin-top:2rem}.dropdown-list{margin-top:0;max-height:200px;z-index:2000}.barn-canvas.placing-mode{border:3px dashed #27ae60;cursor:crosshair}.barn-canvas.moving-mode{border:3px dashed #3498db;cursor:crosshair}.placing-indicator{animation:pulse-indicator 2s ease-in-out infinite;background:#27ae60e6;border-radius:8px;color:#fff;font-size:1.1rem;font-weight:600;left:50%;padding:1rem 2rem;pointer-events:none;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:50}.placing-indicator.moving{background:#3498dbe6}.mobile-pen-controls{background:#fff;border-radius:16px 16px 0 0;bottom:0;box-shadow:0 -4px 12px #00000026;left:0;padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom, 0));position:fixed;right:0;z-index:1000}.mobile-controls-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.mobile-controls-header span{color:#2c3e50;font-size:1.1rem;font-weight:600}.mobile-controls-header .close-btn{background:none;border:none;color:#666;cursor:pointer;font-size:1.5rem;padding:.25rem .5rem}.mobile-controls-buttons{display:flex;gap:.75rem;margin-bottom:1rem}.mobile-controls-buttons .btn{flex:1 1;font-size:.9rem;padding:.75rem}.mobile-resize-controls{align-items:center;border-top:1px solid #eee;display:flex;gap:1rem;padding-top:.75rem}.mobile-resize-controls span{color:#666;font-weight:500}.resize-buttons{display:flex;flex:1 1;gap:.5rem}.resize-buttons button{background:#f0f0f0;border:1px solid #ddd;border-radius:4px;cursor:pointer;flex:1 1;font-size:.85rem;font-weight:600;padding:.5rem;transition:all .2s}.resize-buttons button:active{background:#e0e0e0;transform:scale(.95)}.mobile-moving-toolbar{align-items:center;background:#3498db;bottom:0;color:#fff;display:flex;justify-content:space-between;left:0;padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom, 0));position:fixed;right:0;z-index:1000}.mobile-moving-toolbar span{font-weight:600}.mobile-moving-toolbar .btn{background:#fff;color:#3498db}.resize-mode-toolbar{align-items:center;background:#9b59b6;box-shadow:0 2px 8px #0003;color:#fff;display:flex;justify-content:space-between;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.resize-mode-toolbar span{font-size:1rem;font-weight:600}.resize-mode-toolbar .btn{background:#fff;color:#9b59b6;font-weight:600}.pen.resizing{border:3px dashed #9b59b6;box-shadow:0 0 10px #9b59b680}.resize-handle{background:#9b59b6;z-index:10}.resize-handle.resize-n{top:-4px}.resize-handle.resize-n,.resize-handle.resize-s{border-radius:4px;cursor:ns-resize;height:8px;left:12px;right:12px}.resize-handle.resize-s{bottom:-4px}.resize-handle.resize-e{right:-4px}.resize-handle.resize-e,.resize-handle.resize-w{border-radius:4px;bottom:12px;cursor:ew-resize;top:12px;width:8px}.resize-handle.resize-w{left:-4px}.resize-handle.resize-ne{border-radius:50%;cursor:nesw-resize;height:14px;right:-6px;top:-6px;width:14px}.resize-handle.resize-nw{left:-6px;top:-6px}.resize-handle.resize-nw,.resize-handle.resize-se{border-radius:50%;cursor:nwse-resize;height:14px;width:14px}.resize-handle.resize-se{bottom:-6px;right:-6px}.resize-handle.resize-sw{border-radius:50%;bottom:-6px;cursor:nesw-resize;height:14px;left:-6px;width:14px}.resize-handle:hover{background:#8e44ad}.modal-footer-left{display:flex;gap:.5rem;margin-right:auto}@media (max-width:768px){.pen-palette{flex-direction:row;gap:.75rem}.pen-palette .btn{flex:1 1}.barn-layout-container{padding-bottom:80px}.mobile-moving-toolbar,.mobile-pen-controls{bottom:70px}.resize-mode-toolbar{bottom:70px;top:auto}.resize-handle.resize-ne,.resize-handle.resize-nw,.resize-handle.resize-se,.resize-handle.resize-sw{height:20px;width:20px}.resize-handle.resize-n,.resize-handle.resize-s{height:12px}.resize-handle.resize-e,.resize-handle.resize-w{width:12px}}.rabbit-detail-container{display:flex;flex-direction:column;height:100%;min-height:0;position:relative;width:100%}.detail-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;gap:20px;margin-bottom:24px;padding-bottom:16px}.btn-back{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;white-space:nowrap}.btn-back:hover{opacity:.9}.header-info{flex:1 1;text-align:center}.header-info h2{align-items:center;color:#333;display:inline-flex;font-size:24px;gap:8px;margin:0}.header-spacer{flex-shrink:0;min-width:140px}.header-spacer,.pedigree-header-actions{align-items:center;display:flex;justify-content:flex-end}.pedigree-header-actions{gap:10px}.pedigree-header-actions .control-btn{border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s;white-space:nowrap}.pedigree-header-actions .settings-btn{background:#3498db}.pedigree-header-actions .settings-btn:hover{background:#2980b9}.pedigree-header-actions .pdf-btn{background:#27ae60}.pedigree-header-actions .pdf-btn:hover:not(:disabled){background:#229954}.pedigree-header-actions .pdf-btn:disabled{cursor:not-allowed;opacity:.6}.compact-toggle{align-items:center;cursor:pointer;display:flex;gap:8px;-webkit-user-select:none;user-select:none}.compact-toggle input{display:none}.toggle-slider{background:#ccc;border-radius:11px;height:22px;position:relative;transition:background .2s;width:40px}.toggle-slider:before{background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;content:"";height:18px;left:2px;position:absolute;top:2px;transition:transform .2s;width:18px}.compact-toggle input:checked+.toggle-slider{background:#667eea}.compact-toggle input:checked+.toggle-slider:before{transform:translateX(18px)}.toggle-label{color:#555;font-size:13px;font-weight:500;min-width:60px}@media (max-width:768px){.pedigree-header-actions{gap:6px}.pedigree-header-actions .control-btn{font-size:12px;padding:6px 10px}.toggle-label{display:none}.toggle-slider{height:20px;width:36px}.toggle-slider:before{height:16px;width:16px}.compact-toggle input:checked+.toggle-slider:before{transform:translateX(16px)}}.gender-indicator{font-size:16px;font-weight:500}.gender-indicator.male{color:#2196f3}.gender-indicator.female{color:#e91e63}.detail-header .edit-btn{font-weight:600;padding:10px 24px}.detail-tabs{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;margin-bottom:20px;padding:4px}.tab-btn{background:none;border:none;border-radius:8px;color:#666;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:12px 16px;transition:all .2s}.tab-btn:hover{background:#f5f5f5;color:#333}.tab-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.detail-body{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;min-height:300px;padding:24px}.detail-body,.tab-content{display:flex;flex:1 1;flex-direction:column;min-height:0}.tab-content{animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.details-tab{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto}.detail-section{margin-bottom:24px}.detail-section:last-child{margin-bottom:0}.detail-section h3{color:#333;font-size:16px;margin:0 0 12px}.detail-section h3,.section-header{border-bottom:1px solid #eee;padding-bottom:8px}.section-header{align-items:center;margin-bottom:12px}.section-header h3{border-bottom:none;margin:0;padding-bottom:0}.section-header .edit-btn{font-size:13px;padding:6px 16px}.detail-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-label{color:#888;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.detail-value{color:#333;font-size:15px}.detail-value.status-badge{border-radius:12px;display:inline-block;font-size:13px;font-weight:600;padding:4px 10px;text-transform:capitalize;width:-webkit-fit-content;width:fit-content}.detail-value.status-badge.alive{background:#d4edda;color:#155724}.detail-value.status-badge.sold{background:#fff3cd;color:#856404}.detail-value.status-badge.dead{background:#e2e3e5;color:#383d41}.detail-value.status-badge.arthur{background:#f8d7da;color:#721c24}.breeding-alert{background:#fce4ec;border-left:4px solid #e91e63;border-radius:8px;padding:16px}.breeding-alert h3{border-bottom:none;color:#c2185b;margin-bottom:8px}.breeding-info{color:#880e4f;font-weight:500;margin:0}.accolades-display{display:flex;flex-wrap:wrap;gap:8px}.accolade-badge{background:linear-gradient(135deg,gold,#ffb300);border-radius:16px;color:#5d4000;font-size:13px;font-weight:500;padding:6px 12px}.notes-text{color:#555;line-height:1.6;margin:0;white-space:pre-wrap}.litters-tab{display:flex;flex:1 1;flex-direction:column;min-height:0}.litters-list{flex:1 1;overflow-y:auto}.litter-card{border-left:4px solid #3498db;border-radius:8px}.litter-header{margin-bottom:12px}.litter-date{color:#333;font-weight:600}.litter-status{border-radius:12px;font-size:12px;font-weight:600;padding:4px 10px;text-transform:capitalize}.litter-status.status-bred{background:#e3f2fd;color:#1565c0}.litter-status.status-kindled{background:#e8f5e9;color:#2e7d32}.litter-status.status-weaned{background:#fff3e0;color:#e65100}.litter-status.status-failed{background:#ffebee;color:#c62828}.litter-pairing{align-items:center;display:flex;font-size:15px;gap:8px;margin-bottom:8px}.pairing-symbol{color:#e91e63;font-weight:700}.litter-info{color:#666;font-size:14px;margin-bottom:4px}.litter-notes{color:#888}.pedigree-tab{height:800px;max-height:calc(100vh - 200px)}.embedded-pedigree,.pedigree-tab{display:flex;flex-direction:column;min-height:0}.embedded-pedigree{height:100%;margin:0 -24px -24px;overflow:hidden;padding:0}.embedded-pedigree .pedigree-controls,.embedded-pedigree .pedigree-header{flex-shrink:0;margin:0 24px 12px}.embedded-pedigree .tree-container{border-radius:0 0 12px 12px;flex:1 1;margin:0;max-height:100%;min-height:400px}@media (max-width:768px){.embedded-pedigree .tree-container{min-height:300px}.embedded-pedigree .pedigree-controls,.embedded-pedigree .pedigree-header{margin:0 16px 8px;padding:8px}}.mini-pedigree{overflow-x:auto;padding:10px}.pedigree-row{gap:20px}.pedigree-node{background:#f8f9fa;border:2px solid #ddd;border-radius:8px;min-width:120px;padding:10px 14px;text-align:center}.pedigree-node.unknown{background:#eee;border-style:dashed;color:#999}.node-name{margin-bottom:4px}.node-info{align-items:center;display:flex;font-size:12px;gap:8px;justify-content:center}.node-gender{font-size:14px}.node-color{color:#666}.pedigree-parents{gap:12px}.pedigree-parent{gap:10px}.pedigree-tab .parent-label{color:#888;font-size:11px;min-width:35px;text-transform:uppercase}.kits-tab{display:flex;flex:1 1;flex-direction:column;min-height:0}.kits-list{flex:1 1;gap:10px;overflow-y:auto}.kit-card{background:#f8f9fa;border-left:4px solid #9c27b0;border-radius:8px;justify-content:space-between;padding:14px}.kit-card,.kit-header{align-items:center;display:flex}.kit-header{gap:10px}.kit-name{color:#333;font-weight:600}.kit-gender{border-radius:10px;font-size:12px;padding:3px 8px}.kit-gender.male{background:#e3f2fd;color:#1565c0}.kit-gender.female{background:#fce4ec;color:#c2185b}.kit-details{align-items:center;color:#666;display:flex;font-size:13px;gap:12px}.kit-status{font-size:11px;padding:3px 8px}.empty-tab{align-items:center;color:#888;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:40px 20px;text-align:center}.empty-tab p{margin:0}.empty-tab .empty-hint{color:#aaa;font-size:13px;margin-top:8px}.loading{padding:40px 20px}.breeding-tab{display:flex;flex:1 1;flex-direction:column;min-height:0}.breeding-tab .section-header{flex-shrink:0;margin-bottom:16px}.breeding-cards{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto}.breeding-card{background:#f8f9fa;border-left:4px solid #667eea;border-radius:10px;padding:16px}.breeding-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.breeding-pairing{color:#333;font-weight:600}.partner-role{color:#666;font-weight:500}.days-badge{background:#e3f2fd;border-radius:12px;color:#1565c0;font-size:12px;font-weight:600;padding:4px 10px}.days-badge.soon{background:#fff3e0;color:#e65100}.days-badge.overdue{background:#ffebee;color:#c62828}.breeding-card-body{margin-bottom:12px}.breeding-info-row{display:flex;font-size:14px;gap:8px;margin-bottom:4px}.breeding-label{color:#666;min-width:40px}.breeding-notes{border-top:1px dashed #ddd}.breeding-card-actions{border-top:1px solid #e0e0e0;display:flex;gap:8px;padding-top:12px}.breeding-rows{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto}.breeding-row{align-items:flex-end;background:#f8f9fa;border-left:4px solid #667eea;border-radius:10px;display:flex;flex-wrap:wrap;gap:12px;padding:14px 16px}.breeding-row.breeding-form-row{background:#fff;border:2px solid #667eea;border-left-width:4px}.breeding-row.new-row{margin-bottom:16px}.breeding-row-field{display:flex;flex-direction:column;gap:4px;min-width:100px}.breeding-row-field label{color:#888;font-size:11px;font-weight:600;text-transform:uppercase}.breeding-row-field .field-value{align-items:center;color:#333;display:flex;font-size:14px;gap:6px;min-height:36px}.breeding-row-field .notes-value{color:#666;font-style:italic}.breeding-row-field input[type=date],.breeding-row-field input[type=text],.breeding-row-field select{border:1px solid #ddd;border-radius:6px;font-size:14px;min-width:120px;padding:8px 10px}.breeding-row-field select:disabled{background:#f0f0f0;color:#666}.breeding-row-field.notes-field{flex:1 1;min-width:150px}.breeding-row-field.notes-field input{width:100%}.breeding-row-field.kindled-field{min-width:80px}.breeding-row-field.kindled-field .badge{align-items:center;display:flex;min-height:36px}.kindled-buttons{display:flex;gap:4px}.kindled-btn{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:13px;padding:6px 12px;transition:all .2s}.kindled-btn.active{background:#e3f2fd;border-color:#1565c0;color:#1565c0}.kindled-btn.kindled-yes.active{background:#e8f5e9;border-color:#2e7d32;color:#2e7d32}.kindled-btn:hover:not(:disabled){border-color:#999}.kindled-btn:disabled{cursor:not-allowed;opacity:.6}.breeding-row-actions{align-items:center;display:flex;gap:8px;margin-left:auto}.btn-icon{background:none;border:none;border-radius:6px;cursor:pointer;font-size:18px;line-height:1;padding:6px;transition:all .2s}.btn-icon:hover{background:#f0f0f0}.btn-icon-danger:hover{background:#ffebee}.btn-icon-create:hover{background:#e8f5e9}.badge{border-radius:12px;font-size:12px;font-weight:600;padding:4px 10px}.badge-yes{background:#e8f5e9;color:#2e7d32}.badge-no{background:#f5f5f5;color:#666}.breeding-row .days-badge{font-size:11px;margin-left:4px;padding:2px 6px}@media (max-width:768px){.breeding-row{align-items:stretch;flex-direction:column}.breeding-row-field{width:100%}.breeding-row-actions{border-top:1px solid #e0e0e0;justify-content:flex-end;margin-left:0;margin-top:12px;padding-top:12px}}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;max-height:90vh;overflow-y:auto;width:100%}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:16px 20px}.modal-header h2{color:#333;font-size:18px;margin:0}.modal-close{background:none;border:none;color:#666;cursor:pointer;font-size:24px;line-height:1;padding:0}.modal-close:hover{color:#333}.modal-body{padding:20px}.modal-footer{border-top:1px solid #eee;display:flex;gap:12px;justify-content:flex-end;padding:16px 20px}.btn-danger{background:#dc3545;border:none;border-radius:6px;cursor:pointer;transition:background .2s}.btn-danger:hover{background:#c82333}.litters-tab .section-header{margin-bottom:16px}.litters-list{display:flex;flex-direction:column;gap:12px}.litter-card{background:#f8f9fa;border-left:4px solid #9c27b0;border-radius:10px;padding:16px;position:relative}.litter-card.expanded{border-left-color:#7b1fa2}.litter-clickable{cursor:pointer}.litter-header{justify-content:space-between;margin-bottom:8px}.litter-header,.litter-title{align-items:center;display:flex}.litter-title{gap:12px}.litter-title .litter-date{color:#333;font-weight:600}.litter-title .litter-pairing{color:#666;font-size:14px}.litter-summary{align-items:center;display:flex;gap:12px}.litter-summary .expand-icon{color:#999;font-size:12px}.litter-status-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.status-badge{align-items:center;display:inline-flex;font-size:12px;padding:4px 10px}.status-badge-alive{background:#e8f5e9;color:#2e7d32}.status-badge-dead{background:#ffebee;color:#c62828}.status-badge-culled{background:#fff3e0;color:#e65100}.status-badge-butchered{background:#efebe9;color:#5d4037}.status-badge-sold{background:#e3f2fd;color:#1565c0}.status-badge-kept{background:#f3e5f5;color:#7b1fa2}.litter-notes{border-top:1px dashed #ddd;color:#666;font-size:13px;font-style:italic;margin-top:8px;padding-top:8px}.litter-actions{display:flex;gap:4px;position:absolute;right:12px;top:12px}.litter-form-card{background:#fff;border:2px solid #9c27b0;border-radius:10px;margin-bottom:16px;padding:16px}.litter-form-card.new-litter{border-left:4px solid #9c27b0}.litter-form-header h4{color:#7b1fa2;margin:0 0 12px}.litter-form-body{display:flex;flex-direction:column;gap:12px}.litter-form-row{display:flex;flex-wrap:wrap;gap:12px}.litter-form-row .form-field{display:flex;flex-direction:column;gap:4px;min-width:120px}.litter-form-row .form-field.flex-grow{flex:1 1;min-width:200px}.litter-form-row .form-field label{color:#888;font-size:11px;font-weight:600;text-transform:uppercase}.litter-form-row .form-field input,.litter-form-row .form-field select{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:8px 10px}.litter-form-row .form-field input[type=number]{width:80px}.litter-form-actions{display:flex;gap:8px;margin-top:8px}.litter-kits-section{border-top:1px solid #e0e0e0;margin-top:16px;padding-top:16px}.kits-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.kits-header h4{color:#333;font-size:14px;margin:0}.kits-list{display:flex;flex-direction:column;gap:8px}.kit-row{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:6px;display:flex;justify-content:space-between;padding:10px 12px}.kit-row.kit-edit-row{border-color:#9c27b0;flex-wrap:wrap;gap:10px;padding:12px}.kit-info{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.kit-color{color:#333;font-weight:500}.kit-gender{font-size:16px}.kit-status{font-size:12px;font-weight:600;text-transform:capitalize}.kit-reason{color:#888}.kit-notes,.kit-reason{font-size:12px;font-style:italic}.kit-notes{color:#666}.kit-actions,.kit-field{display:flex;gap:4px}.kit-field{flex-direction:column;min-width:80px}.kit-field.flex-grow{flex:1 1;min-width:120px}.kit-field label{color:#888;font-size:10px;font-weight:600;text-transform:uppercase}.kit-field input,.kit-field select{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:6px 8px}.no-kits{color:#888;font-size:13px;font-style:italic;padding:16px;text-align:center}.health-tab{display:flex;flex:1 1;flex-direction:column;min-height:0;padding:0}.health-sub-tabs{border-bottom:2px solid #e0e0e0;display:flex;flex-shrink:0;gap:0;margin-bottom:20px}.health-sub-tab{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;flex:1 1;font-size:15px;font-weight:500;margin-bottom:-2px;padding:12px 20px;transition:all .2s ease}.health-sub-tab:hover{background-color:#f5f5f5;color:#333}.health-sub-tab.active{border-bottom-color:#667eea;color:#667eea;font-weight:600}.ailments-section,.vaccinations-section{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto;padding:0}.health-form-card{background:#fff;border:2px solid #667eea;border-radius:10px;margin-bottom:16px;padding:16px}.health-form-card h4{color:#667eea;margin:0 0 12px}.health-form-body{display:flex;flex-direction:column;gap:12px}.health-form-row{display:flex;flex-wrap:wrap;gap:12px}.health-form-row .form-field{display:flex;flex-direction:column;gap:4px;min-width:140px}.health-form-row .form-field.flex-grow{flex:1 1;min-width:200px}.health-form-row .form-field label{color:#888;font-size:11px;font-weight:600;text-transform:uppercase}.health-form-row .form-field input,.health-form-row .form-field select{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:8px 10px}.health-form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.health-records-list{display:flex;flex-direction:column;gap:12px}.health-record-card{background:#f8f9fa;border-left:4px solid #667eea;border-radius:10px;padding:16px}.health-record-card.vaccination-card{border-left-color:#4caf50}.health-record-card.editing{background:#fff;border:2px solid #667eea;border-left-width:4px}.health-record-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:10px}.health-record-title{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.health-record-name{color:#333;font-size:16px;font-weight:600}.health-record-actions{display:flex;gap:4px}.health-record-body{font-size:14px}.health-record-dates{color:#666;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:8px}.health-record-field{color:#444;margin-bottom:4px}.health-record-field .field-label{color:#666;font-weight:500}.health-record-notes{border-top:1px dashed #ddd;color:#666;font-size:13px;font-style:italic;margin-top:8px;padding-top:8px}.outcome-badge{border-radius:12px;font-size:11px;font-weight:600;padding:3px 10px;text-transform:capitalize}.outcome-badge.outcome-ongoing{background:#fff3e0;color:#e65100}.outcome-badge.outcome-recovered{background:#e8f5e9;color:#2e7d32}.outcome-badge.outcome-chronic{background:#fce4ec;color:#c2185b}.outcome-badge.outcome-deceased{background:#efebe9;color:#5d4037}.due-badge{background:#e3f2fd;border-radius:12px;color:#1565c0;font-size:11px;font-weight:600;padding:3px 10px}.due-badge.overdue{background:#ffebee;color:#c62828}.status-badge{font-size:11px;padding:3px 10px}.status-badge.status-active{background:#fff3e0;color:#e65100}.status-badge.status-resolved{background:#e8f5e9;color:#2e7d32}.status-badge.status-chronic{background:#fce4ec;color:#c2185b}.ailment-card{cursor:default}.ailment-card .health-record-header{cursor:pointer}.ailment-card .health-record-header:hover{background:#667eea0d;border-radius:6px;margin:-4px;padding:4px}.expand-icon{color:#667eea;margin-right:4px}.treatment-count{background:#f0f0f0;border-radius:10px;color:#888;font-size:11px;padding:2px 8px}.treatments-section{background:#f0f2ff;border-left:3px solid #667eea;border-radius:8px;margin-top:12px;padding:16px}.treatments-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.treatments-header h4{color:#555;font-size:14px;margin:0}.treatment-form-card{background:#fff;border:1px solid #667eea;border-radius:8px;margin-bottom:12px;padding:12px}.dosage-input{display:flex;gap:4px}.dosage-input input{flex:1 1;min-width:60px}.dosage-input select{width:70px}.treatments-list{display:flex;flex-direction:column;gap:8px}.treatment-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:12px}.treatment-card.editing{border-color:#667eea}.treatment-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:8px}.treatment-title{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.treatment-name{color:#333;font-size:14px;font-weight:600}.treatment-dosage{background:#f5f5f5;border-radius:4px;color:#666;font-size:12px;padding:2px 6px}.treatment-actions{display:flex;gap:2px}.btn-icon-small{font-size:12px;padding:4px 6px!important}.method-badge{border-radius:10px;font-size:10px;font-weight:600;padding:2px 8px;text-transform:uppercase}.method-badge.method-oral{background:#e3f2fd;color:#1565c0}.method-badge.method-injection{background:#fce4ec;color:#c2185b}.method-badge.method-topical{background:#e8f5e9;color:#2e7d32}.method-badge.method-other{background:#f5f5f5;color:#666}.treatment-body{font-size:13px}.treatment-dates{color:#666;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:6px}.treatment-notes{color:#666;font-size:12px;font-style:italic;margin-top:6px}.withdrawal-info{margin-top:6px}.withdrawal-badge{background:#f5f5f5;border-radius:6px;color:#666;display:inline-block;font-size:11px;font-weight:500;padding:4px 10px}.withdrawal-badge.active{background:#fff3e0;border:1px solid #ffcc80;color:#e65100}.empty-treatments{color:#888;font-size:13px;font-style:italic;padding:12px;text-align:center}.health-form-row .form-field textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:8px 10px;resize:vertical}@media (max-width:768px){.detail-header{flex-wrap:wrap;gap:12px}.btn-back{order:1}.header-info{order:3;text-align:center;width:100%}.header-info h2{font-size:20px}.detail-header .edit-btn{margin-left:auto;order:2}.detail-tabs{flex-wrap:wrap}.tab-btn{flex:1 1 45%;font-size:13px;padding:10px 8px}.detail-body{padding:16px}.detail-grid{grid-template-columns:1fr}.kit-card{align-items:flex-start;flex-direction:column;gap:8px}.kit-details,.litter-pairing{flex-wrap:wrap}}.add-form-body{padding:24px}.rabbit-add-form{margin:0 auto;max-width:800px}.form-section{background:#f8f9fa;border-radius:12px;margin-bottom:20px;padding:20px}.form-section h3{border-bottom:1px solid #e0e0e0;color:#333;font-size:16px;margin:0 0 16px;padding-bottom:8px}.form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full-width{grid-column:1/-1}.form-group label{font-weight:500}.form-group input,.form-group textarea{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{border-color:#667eea;outline:none}.form-group textarea{min-height:80px;resize:vertical}.birth-date-input{align-items:center;display:flex;gap:10px}.birth-date-input input{flex:1 1}.na-checkbox{align-items:center;cursor:pointer;display:inline-flex;font-size:14px;font-weight:400;gap:6px;margin-bottom:0;white-space:nowrap}.na-checkbox input[type=checkbox]{padding:0;width:auto}.form-section .accolades-list{margin-bottom:12px;max-height:200px;overflow-y:auto}.form-section .accolade-item{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:8px;padding:8px 12px}.form-section .accolade-item span{flex:1 1;margin-right:8px}.form-section .btn-delete-accolade{align-items:center;background:#dc3545;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:24px;justify-content:center;line-height:1;transition:background-color .2s;width:24px}.form-section .btn-delete-accolade:hover{background:#c82333}.form-section .accolade-add{display:flex;gap:8px}.form-section .accolade-add input{border:1px solid #ddd;border-radius:6px;flex:1 1;font-size:14px;padding:10px 12px}.form-section .accolade-add button{font-size:18px;font-weight:700;padding:10px 16px}.form-actions{border-top:1px solid #e0e0e0;margin-top:10px;padding-top:20px}.form-actions .btn{font-size:15px;font-weight:600;padding:12px 24px}.form-actions .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;transition:opacity .2s}.form-actions .btn-primary:hover{opacity:.9}.form-actions .btn-primary:disabled{cursor:not-allowed;opacity:.6}.form-actions .btn-secondary{background:#f5f5f5;border:none;border-radius:8px;color:#666;cursor:pointer;transition:background-color .2s}.form-actions .btn-secondary:hover{background:#e8e8e8}@media (max-width:768px){.form-grid{grid-template-columns:1fr}.add-form-body,.form-section{padding:16px}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.inline-edit-form{width:100%}.inline-input{background:#fff;border:1px solid #ddd;border-radius:6px;font-size:14px;padding:8px 12px;transition:border-color .2s,box-shadow .2s;width:100%}.inline-input:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea33;outline:none}.inline-input::placeholder{color:#aaa}.inline-textarea{background:#fff;border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;min-height:80px;padding:10px 12px;resize:vertical;transition:border-color .2s,box-shadow .2s;width:100%}.inline-textarea:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea33;outline:none}.inline-select .inline-select__control{border:1px solid #ddd;border-radius:6px;box-shadow:none;min-height:38px}.inline-select .inline-select__control:hover{border-color:#aaa}.inline-select .inline-select__control--is-focused{border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.inline-select .inline-select__menu{z-index:9999}.input-with-suffix{align-items:center;display:flex;gap:8px}.input-with-suffix .inline-input{flex:1 1}.input-suffix{color:#666;font-size:14px;white-space:nowrap}.birth-date-inline{align-items:center;display:flex;gap:12px}.birth-date-inline .inline-input{flex:1 1}.na-checkbox-inline{align-items:center;color:#666;cursor:pointer;display:flex;font-size:13px;gap:4px;white-space:nowrap}.na-checkbox-inline input[type=checkbox]{margin:0}.accolades-edit-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.accolade-edit-item{align-items:center;display:flex;gap:6px}.accolade-edit-item .accolade-badge{margin:0}.btn-remove-accolade{align-items:center;background:#dc3545;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:14px;height:20px;justify-content:center;line-height:1;padding:0;transition:background-color .2s;width:20px}.btn-remove-accolade:hover{background:#c82333}.accolade-add-inline{display:flex;gap:8px}.accolade-add-inline .inline-input{flex:1 1}.btn.btn-small{font-size:14px;padding:8px 14px}.inline-edit-actions{border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end;margin-top:20px;padding-top:20px}.inline-edit-actions .btn{border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s}.inline-edit-actions .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff}.inline-edit-actions .btn-primary:hover{opacity:.9}.inline-edit-actions .btn-primary:disabled{cursor:not-allowed;opacity:.6}.inline-edit-actions .btn-secondary{background:#f5f5f5;border:none;color:#666}.inline-edit-actions .btn-secondary:hover{background:#e8e8e8}@media (max-width:768px){.inline-edit-actions{flex-direction:column}.inline-edit-actions .btn{width:100%}.birth-date-inline{align-items:stretch;flex-direction:column;gap:8px}.na-checkbox-inline{justify-content:flex-start}}.show-record-row{align-items:flex-start;display:flex;flex-wrap:wrap;gap:24px}.show-record-field{flex:0 0 auto;min-width:200px}.show-record-field.show-record-legs{flex:1 1;min-width:250px}.legs-inline-container{display:flex;flex-direction:column;gap:8px}.legs-badges{display:flex;flex-wrap:wrap;gap:8px}.leg-badge-item{align-items:center;display:flex;gap:4px}.leg-add-inline{display:flex;gap:8px;max-width:300px}.show-record-item{background:#f8f9fa;border-radius:8px;display:flex;flex-direction:column;gap:4px;padding:12px}.show-record-item.show-record-legs{flex:1 1;min-width:200px}.legs-display{display:flex;flex-wrap:wrap;gap:6px}.show-record-label{color:#666;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.show-record-value{color:#333;font-size:16px;font-weight:500}.sub-section-header{border-bottom:1px solid #e0e0e0;color:#555;font-size:14px;font-weight:600;margin:16px 0 12px;padding-bottom:8px}@media (max-width:768px){.show-record-row{flex-direction:column;gap:16px}.show-record-field,.show-record-field.show-record-legs,.show-record-item,.show-record-item.show-record-legs{max-width:100%;min-width:100%}.leg-add-inline{max-width:100%}}.color-picker-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.color-picker-modal{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0003;max-width:400px;overflow:hidden;width:90%}.color-picker-modal.warning-modal{max-width:360px}.color-picker-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:16px 20px}.color-picker-header.warning{background:#fff3cd;border-bottom-color:#ffc107}.color-picker-header h3{color:#333;font-size:16px;font-weight:600;margin:0}.color-picker-header.warning h3{color:#856404}.color-picker-header .close-btn{background:none;border:none;color:#666;cursor:pointer;font-size:24px;line-height:1;padding:0}.color-picker-header .close-btn:hover{color:#333}.color-picker-body{padding:20px}.existing-colors{margin-bottom:16px}.existing-colors label{color:#666;display:block;font-size:13px;margin-bottom:8px}.color-swatches{display:flex;flex-wrap:wrap;gap:8px}.color-swatch{border:2px solid #ccc;border-radius:6px;height:32px;width:32px}.color-swatch.editing{border-color:#667eea;box-shadow:0 0 0 2px #667eea4d}.color-picker-input{margin-bottom:12px}.color-picker-input label{color:#666;display:block;font-size:13px;margin-bottom:8px}.color-input-row{align-items:center;display:flex;gap:12px}.color-input-row input[type=color]{border:1px solid #ccc;border-radius:6px;cursor:pointer;height:40px;padding:0;width:50px}.color-preview{border:1px solid #ccc;border-radius:6px;height:40px;width:50px}.color-hex{color:#666;font-family:monospace;font-size:14px}.color-picker-hint{color:#888;font-size:12px;margin:0}.warning-text{color:#856404;line-height:1.5;margin:0}.color-picker-footer{background:#f8f9fa;border-top:1px solid #e0e0e0;display:flex;gap:10px;padding:16px 20px}.color-picker-footer .btn{flex:1 1;font-size:14px;font-weight:500;padding:10px 16px}.btn-warning{background:#ffc107;border-color:#ffc107;color:#212529}.btn-warning:hover{background:#e0a800;border-color:#d39e00}.documents-list{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.document-item{border-radius:8px;gap:12px;padding:10px 14px;transition:all .2s ease}.document-item:hover{background:#e9ecef}.document-item-staged{background:#fff8e1;border:1px dashed #ffa726}.document-item-staged:hover{background:#ffecb3}.document-name{color:#667eea;cursor:pointer;flex:1 1;font-size:14px;transition:color .2s ease}.document-item-staged .document-name{color:#f57c00;cursor:default}.document-name:hover{color:#764ba2}.document-item-staged .document-name:hover{color:#f57c00}.document-size{background:#fff;border-radius:10px;font-weight:500;padding:3px 8px}.document-size-staged{background:#ffa726;color:#fff}.btn-delete-document{background:linear-gradient(135deg,#dc3545,#c82333);border-radius:6px;line-height:1;padding:4px 10px;transition:all .2s ease}.btn-delete-document:hover{background:linear-gradient(135deg,#c82333,#bd2130);transform:scale(1.1)}.btn-upload{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 4px #667eea33;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.btn-upload:hover:not(:disabled){box-shadow:0 4px 8px #667eea4d;opacity:.9;transform:translateY(-1px)}.btn-upload:disabled{cursor:not-allowed;opacity:.6;transform:none}.upload-progress{margin-bottom:12px}.upload-progress-bar{background:#e0e0e0;border-radius:8px;box-shadow:inset 0 1px 3px #0000001a;height:28px;overflow:hidden}.upload-progress-fill{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:inset 0 1px 0 #ffffff4d;color:#fff;display:flex;font-size:12px;font-weight:600;height:100%;justify-content:center;transition:width .3s ease}@media (max-width:768px){.document-item{flex-wrap:wrap}.btn-upload{width:100%}}.pedigree-container{display:flex;flex-direction:column;height:calc(100vh - 120px);overflow-x:hidden;width:100%}.pedigree-header{margin-bottom:1.5rem}.pedigree-header h2{margin:0 0 1rem}.rabbit-selector{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-wrap:wrap;gap:1rem;padding:1rem}.rabbit-selector label{font-weight:500;margin:0}.search-dropdown{flex:1 1;min-width:200px}.dropdown-list{max-height:300px}.loading{background:#fff;border-radius:8px;padding:3rem}.pedigree-header{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;flex-shrink:0;justify-content:space-between;margin-bottom:.75rem;padding:.75rem 1rem}.pedigree-header-left,.pedigree-header-right{align-items:center;display:flex;gap:.75rem}.settings-btn{background:#3498db}.settings-btn:hover{background:#2980b9}.pedigree-settings-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.pedigree-settings-modal{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0003;display:flex;flex-direction:column;max-height:80vh;max-width:450px;overflow:hidden;width:100%}.settings-modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;flex-shrink:0;justify-content:space-between;padding:1rem 1.25rem}.settings-modal-header h3{color:#333;font-size:1.1rem;margin:0}.settings-close-btn{background:none;border:none;color:#666;cursor:pointer;font-size:1.5rem;line-height:1;padding:0;transition:color .2s}.settings-close-btn:hover{color:#333}.settings-modal-tabs{border-bottom:2px solid #e0e0e0;display:flex;flex-shrink:0}.settings-tab{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;flex:1 1;font-size:.95rem;font-weight:500;margin-bottom:-2px;padding:.75rem 1rem;transition:all .2s}.settings-tab:hover{background:#f5f5f5;color:#333}.settings-tab.active{border-bottom-color:#3498db;color:#3498db}.settings-modal-body{flex:1 1;overflow-y:auto;padding:1rem 1.25rem}.settings-section{margin-bottom:1.25rem}.settings-section:last-child{margin-bottom:0}.settings-section h4{color:#555;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin:0 0 .75rem;text-transform:uppercase}.settings-option{align-items:flex-start;border-radius:6px;cursor:pointer;display:flex;gap:.75rem;padding:.5rem;transition:background .2s}.settings-option:hover{background:#f5f5f5}.settings-option input[type=checkbox]{cursor:pointer;height:18px;margin-top:2px;width:18px}.settings-option span{color:#333;font-size:.95rem;font-weight:500}.settings-option small{color:#888;display:block;font-size:.8rem;margin-top:2px}.generation-limit-input{align-items:center;display:flex;gap:.75rem;margin-top:.75rem;padding-left:1.75rem}.generation-limit-input label{color:#555;font-size:.9rem}.generation-limit-input input{border:1px solid #ddd;border-radius:4px;font-size:.95rem;padding:.4rem .5rem;text-align:center;width:60px}.generation-limit-input input:focus{border-color:#3498db;outline:none}.settings-checkboxes{grid-gap:.25rem 1rem;display:grid;gap:.25rem 1rem;grid-template-columns:repeat(2,1fr)}.settings-checkbox{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:.5rem;padding:.4rem .5rem;transition:background .2s}.settings-checkbox:hover{background:#f5f5f5}.settings-checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.settings-checkbox span{color:#333;font-size:.95rem}.pedigree-controls{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-shrink:0;flex-wrap:wrap;gap:1.5rem;margin-bottom:1rem;padding:1rem}.control-btn{background:#2c3e50;border:none;border-radius:4px;box-shadow:0 2px 4px #0003;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:.5rem 1rem;transition:all .2s}.control-btn:hover{background:#34495e;box-shadow:0 4px 8px #0000004d}.control-btn:active{transform:scale(.95)}.control-btn:disabled{background:#95a5a6;cursor:not-allowed;opacity:.7}.control-btn:disabled:hover{background:#95a5a6;box-shadow:0 2px 4px #0003}.pdf-btn{background:#27ae60}.pdf-btn:hover:not(:disabled){background:#2ecc71}.compact-btn{background:#8e44ad}.compact-btn:hover{background:#9b59b6}.compact-btn.active{background:#9b59b6;box-shadow:inset 0 2px 4px #0000004d}.control-option{align-items:center;cursor:pointer;display:flex;font-weight:500;gap:.5rem;-webkit-user-select:none;user-select:none}.control-option input[type=checkbox]{cursor:pointer;height:18px;width:18px}.control-option span{white-space:nowrap}.generation-input{border:1px solid #ddd;border-radius:4px;font-size:.9rem;margin-left:.5rem;padding:.25rem .5rem;text-align:center;width:60px}.field-selector-container{position:relative}.field-selector-toggle{background:#4caf50;border:none;border-radius:4px;box-shadow:0 2px 4px #0003;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.field-selector-toggle:hover{background:#45a049;box-shadow:0 4px 8px #0000004d}.field-selector-toggle:active{transform:scale(.95)}.field-selector-dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 8px #00000026;left:0;margin-top:.5rem;max-height:300px;min-width:200px;overflow-y:auto;padding:.5rem;position:absolute;top:100%;z-index:1000}.field-option{align-items:center;border-radius:4px;cursor:pointer;display:flex;gap:.5rem;padding:.5rem;transition:background-color .2s;-webkit-user-select:none;user-select:none}.field-option:hover{background-color:#f0f0f0}.field-option input[type=checkbox]{cursor:pointer;height:16px;width:16px}.field-option span{font-size:.9rem;white-space:nowrap}.tree-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:grab;flex:1 1;min-height:0;overflow:hidden;padding:0;position:relative;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.tree-container:active{cursor:grabbing}.tree-scroll{left:0;padding:2rem;pointer-events:none;position:absolute;top:0;will-change:transform}.tree-scroll>*{pointer-events:auto}.canvas-controls{bottom:20px;display:flex;flex-direction:column;gap:8px;position:absolute;right:20px;z-index:100}.canvas-control-btn{align-items:center;background:#fff;border:2px solid #2c3e50;border-radius:4px;box-shadow:0 2px 4px #0003;color:#2c3e50;cursor:pointer;display:flex;font-size:1.5rem;font-weight:700;height:40px;justify-content:center;transition:all .2s;width:40px}.canvas-control-btn:hover{background:#f0f0f0;box-shadow:0 4px 8px #0000004d}.canvas-control-btn:active{transform:scale(.95)}.zoom-indicator{font-weight:700;text-align:center}.print-option,.zoom-indicator{background:#fff;border:2px solid #2c3e50;border-radius:4px;box-shadow:0 2px 4px #0003;color:#2c3e50;font-size:.85rem;padding:8px;-webkit-user-select:none;user-select:none}.print-option{align-items:center;cursor:pointer;display:flex;gap:8px;transition:all .2s}.print-option:hover{background:#f0f0f0}.print-option input[type=checkbox]{cursor:pointer;height:16px;width:16px}.print-option span{font-weight:700;white-space:nowrap}.pedigree-branding{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;gap:12px;margin-bottom:16px;padding-bottom:12px}.pedigree-logo{border-radius:6px;height:60px;object-fit:contain;width:60px}.pedigree-rabbitry-name{color:#2c3e50;font-size:1.2rem;font-weight:700;letter-spacing:.5px}.pedigree-row{align-items:center;display:flex;flex-direction:row;position:relative}.pedigree-cell{align-items:flex-start;padding:.15rem}.pedigree-cell,.pedigree-parents{display:flex;flex-direction:column}.pedigree-parents{gap:.4rem;margin-left:.75rem;padding-bottom:0;padding-top:0;position:relative}.pedigree-parent{align-items:center;display:flex;flex-direction:row;gap:0;padding-left:.3rem;position:relative}.rabbit-node{background:#f8f9fa;border:2px solid #333;border-radius:6px;box-shadow:0 1px 4px #0000001f;color:#333;max-width:250px;min-width:150px;padding:.4rem .5rem;position:relative;transition:transform .2s,box-shadow .2s;width:-webkit-fit-content;width:fit-content;z-index:1}.rabbit-node:hover{box-shadow:0 4px 12px #0003;transform:scale(1.02)}.rabbit-node.clickable{cursor:pointer}.rabbit-node.unknown{background:#95a5a6;color:#fff;font-style:italic;max-width:150px;min-width:100px;text-align:center;width:100px}.rabbit-node.compact{max-width:none;min-width:auto;padding:.4rem .6rem;width:-webkit-fit-content;width:fit-content}.rabbit-node.compact .node-header{gap:.4rem;margin-bottom:0;white-space:nowrap}.rabbit-node.compact .node-header strong{font-size:.85rem}.rabbit-node.compact .gender-badge{flex-shrink:0;font-size:1rem}.color-square{border:1px solid #333;border-radius:4px;bottom:8px;box-shadow:0 1px 3px #0003;height:24px;position:absolute;right:8px;width:24px}.collapse-btn{align-items:center;background:#fff;border:2px solid #333;border-radius:50%;color:#333;cursor:pointer;display:flex;font-size:14px;font-weight:700;height:22px;justify-content:center;line-height:1;padding:0;position:absolute;right:-8px;top:-8px;transition:all .2s;width:22px;z-index:10}.collapse-btn:hover{background:#3498db;border-color:#3498db;color:#fff;transform:scale(1.1)}.collapse-btn.collapsed{background:#27ae60;border-color:#27ae60;color:#fff}.collapse-btn.collapsed:hover{background:#2ecc71;border-color:#2ecc71}.node-header{align-items:center;display:flex;font-size:.95rem;justify-content:space-between;margin-bottom:.25rem;white-space:nowrap}.gender-badge{font-size:1rem;padding:.1rem}.gender-badge.female{color:#dc3545}.gender-badge.male{color:#007bff}.node-details{font-size:.8rem;opacity:.95}.node-details.has-color-box{padding-bottom:1.5rem}.node-details div{margin:.1rem 0;white-space:nowrap}.node-accolades{border-top:1px solid #0000001a;margin-bottom:.5rem;margin-top:.5rem;padding-top:.5rem}.accolade-badge{font-size:.75rem;font-style:italic;margin:.15rem 0;opacity:.9}.node-generation-label{color:#666;font-size:.7rem;font-weight:600;letter-spacing:1px;margin-bottom:6px;text-align:center;text-transform:uppercase;width:100%}.rabbit-node-card{background:#fff;border:1px solid #e0e0e0;border-left:4px solid #bbdefb;border-radius:8px;box-shadow:0 2px 8px #00000014;max-width:300px;min-width:240px;overflow:hidden;position:relative;transition:transform .2s,box-shadow .2s}.rabbit-node-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.rabbit-node-card.clickable{cursor:pointer}.rabbit-node-card.unknown{background:#f5f5f5;border-left-color:#ccc;min-width:180px}.rabbit-node-card.unknown .node-card-header{padding:12px}.rabbit-node-card.unknown .node-name{color:#999;font-style:italic}.rabbit-node-card.compact{max-width:200px;min-width:160px}.rabbit-node-card.compact .node-card-body{display:none}.rabbit-node-card.compact .node-photo-placeholder{height:32px;width:32px}.rabbit-node-card.compact .node-name{font-size:.85rem}.node-card-header{align-items:center;background:#fafafa;border-bottom:1px solid #eee;display:flex;gap:10px;padding:12px}.node-photo-placeholder{align-items:center;background:#fff;border:2px solid #2196f3;border-radius:50%;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.node-photo-placeholder.unknown{background:#eee;border-color:#ccc}.node-photo-placeholder .photo-icon{font-size:1.4rem}.node-title-area{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.node-gender{font-size:1rem;font-weight:600}.node-gender.female{color:#e91e63}.node-gender.male{color:#2196f3}.node-name{color:#333;font-size:.95rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-actions{position:absolute;right:6px;top:6px;z-index:2}.node-collapse-btn{align-items:center;background:#ffffffe6;border:none;border-radius:50%;box-shadow:0 1px 3px #00000026;color:#666;cursor:pointer;display:flex;font-size:.65rem;height:24px;justify-content:center;transition:all .2s;width:24px}.node-collapse-btn:hover{background:#fff;box-shadow:0 2px 6px #0003;color:#333}.node-card-body{padding:12px;position:relative}.node-fields-grid{grid-gap:10px 16px;display:grid;gap:10px 16px;grid-template-columns:repeat(3,1fr)}.field-item{display:flex;flex-direction:column;gap:2px}.field-item-wide{grid-column:span 2}.field-label{color:#00bcd4;font-size:.65rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.field-value{color:#333;font-size:.8rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-color-indicator{bottom:0;height:4px;left:0;position:absolute;right:0}@media (max-width:768px){.rabbit-node-card{max-width:240px;min-width:200px}.rabbit-node-card.compact{max-width:170px;min-width:140px}.node-card-header{gap:8px;padding:10px}.node-photo-placeholder{height:36px;width:36px}.node-photo-placeholder .photo-icon{font-size:1.1rem}.node-name{font-size:.85rem}.node-card-body{padding:10px}.node-fields-grid{gap:8px 12px}.field-label{font-size:.6rem}.field-value{font-size:.75rem}.node-generation-label{font-size:.6rem}}@media (max-width:480px){.rabbit-node-card{max-width:200px;min-width:160px}.rabbit-node-card.compact{max-width:150px;min-width:120px}.node-card-header{gap:6px;padding:8px}.node-photo-placeholder{height:30px;width:30px}.node-photo-placeholder .photo-icon{font-size:.9rem}.node-name{font-size:.75rem}.node-gender{font-size:.85rem}.node-card-body{padding:8px}.node-fields-grid{gap:6px 10px;grid-template-columns:repeat(2,1fr)}.field-label{font-size:.55rem}.field-value{font-size:.7rem}.node-generation-label{font-size:.55rem}}.status-indicator{background:#ffffff4d;border-radius:10px;display:inline-block;font-size:.8rem;margin-top:.5rem;padding:.2rem .6rem;text-transform:capitalize}.parent-label{border:2px solid #333;border-radius:15px;box-shadow:0 2px 4px #00000026;color:#000;font-size:.7rem;font-weight:700;letter-spacing:.5px;padding:.35rem .75rem;position:relative;text-transform:uppercase;white-space:nowrap;z-index:2}.empty-state,.parent-label{background:#fff}.rabbit-info-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.rabbit-info-content{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;max-width:500px;padding:2rem;position:relative;width:90%}.close-btn{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:2rem;height:2rem;justify-content:center;line-height:1;padding:0;position:absolute;right:1rem;top:1rem;width:2rem}.close-btn:hover{color:#000}.rabbit-info-content h3{color:#333;font-size:1.5rem;margin:0 0 1.5rem}.info-details p{color:#555;font-size:1rem;margin:.75rem 0}.info-details strong{color:#333}.navigation-actions{border-top:1px solid #eee;display:flex;flex-direction:column;gap:10px;margin-top:1.5rem;padding-top:1rem}.navigation-actions .btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:all .2s ease;width:100%}.navigation-actions .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.navigation-actions .btn-primary:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.navigation-actions .btn-secondary{background:#f5f5f5;color:#666}.navigation-actions .btn-secondary:hover{background:#e8e8e8;color:#333}.not-in-list-notice{color:#888;font-style:italic;margin:0;padding:8px 0;text-align:center}@media (max-width:768px){.pedigree-container{height:calc(100vh - 130px);max-width:100vw;overflow:hidden;padding-bottom:70px;position:relative;width:100%}.pedigree-header{margin-bottom:.75rem}.pedigree-header h2{font-size:1.25rem;margin-bottom:.5rem}.rabbit-selector{padding:.75rem}.pedigree-controls{align-items:center;flex-direction:row;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem;padding:.75rem}.control-btn{flex:0 0 auto;font-size:.9rem;padding:.4rem .75rem}.control-option{flex:1 1 auto;justify-content:flex-start;min-width:0}.control-option,.control-option span{font-size:.85rem}.generation-input{font-size:16px;padding:.2rem .4rem;width:50px}.tree-container{-webkit-overflow-scrolling:touch;flex:1 1;min-height:0;padding:0;touch-action:none}.field-selector-container{flex:0 0 auto}.field-selector-toggle{font-size:.85rem;padding:.4rem .75rem}.field-selector-dropdown{left:0;min-width:180px;right:auto}.rabbit-node{font-size:.8rem;max-width:180px;min-width:120px;padding:.35rem .45rem;width:-webkit-fit-content;width:fit-content}.rabbit-node.unknown{max-width:120px;min-width:80px;width:80px}.node-header{font-size:.85rem}.node-details{font-size:.7rem}.parent-label{font-size:.55rem;padding:.2rem .4rem}.pedigree-parents{gap:.3rem;margin-left:.5rem}.pedigree-parents:before{left:-1rem;width:1rem}.pedigree-parent:before{left:0;right:0}.rabbit-selector{align-items:stretch;flex-direction:column}.desktop-only{display:none!important}.canvas-controls{bottom:20px;left:20px;right:auto}.canvas-control-btn{font-size:1.75rem;height:44px;width:44px}}@media (max-width:480px){.rabbit-node{max-width:140px;min-width:100px;padding:.3rem .4rem;width:-webkit-fit-content;width:fit-content}.rabbit-node.unknown{max-width:100px;min-width:70px;width:70px}.parent-label{font-size:.5rem;padding:.15rem .35rem}.node-header{font-size:.8rem}.node-details{font-size:.65rem}.pedigree-parents{gap:.2rem;margin-left:.4rem}.pedigree-parent{gap:0;padding-left:.2rem}}@media print{@page{size:landscape;margin:0}body,html{background:#fff!important;height:auto!important;margin:0!important;min-height:0!important;overflow:hidden!important;padding:0!important;width:100%!important}*{print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}.app-header,.app-sidebar,.canvas-control-btn,.canvas-controls,.main-nav,.navbar,.pedigree-controls,.pedigree-header,.sidebar,.zoom-indicator,header,nav{display:none!important}#root,.App,.pedigree-container{background:#fff!important;height:auto!important;margin:0!important;min-height:0!important;padding:0!important;width:100%!important}.pedigree-container{display:block!important;max-height:none!important}.rabbit-node{transition:none!important}.rabbit-node,.rabbit-node:hover{box-shadow:0 1px 3px #0000004d!important}.rabbit-node:hover{transform:none!important}.tree-container{background:#0000!important;border:none!important;border-radius:0!important;box-shadow:none!important;height:auto!important;min-height:100%!important;outline:none!important;overflow:visible!important;position:static!important;width:100%!important}.tree-container,.tree-scroll{margin:0!important;max-width:100%!important;padding:0!important}.tree-scroll{transform-origin:top left!important;width:-webkit-fit-content!important;width:fit-content!important}.pedigree-row,.tree-container,.tree-scroll{page-break-after:avoid!important;page-break-before:avoid!important;page-break-inside:avoid!important}}.save-image-modal{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:3000}.save-image-content{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:95%;overflow:hidden;width:100%}.save-image-header{align-items:center;border-bottom:1px solid #eee;display:flex;flex-shrink:0;justify-content:space-between;padding:1rem 1.5rem}.save-image-header h3{color:#333;font-size:1.2rem;margin:0}.save-modal-close-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#f0f0f0;border:none;border-radius:50%;color:#333;cursor:pointer;display:flex;flex-shrink:0;font-size:1.5rem;height:44px;justify-content:center;padding:0;touch-action:manipulation;width:44px}.save-modal-close-btn:active,.save-modal-close-btn:hover{background:#e0e0e0;color:#000}.save-image-body{flex:1 1;overflow-y:auto;padding:1rem;text-align:center}.save-image-body img{border-radius:8px;box-shadow:0 2px 10px #00000026;height:auto;max-width:100%}.save-instructions{background:#f8f9fa;border-radius:8px;color:#555;font-size:.95rem;line-height:1.5;margin-top:1rem;padding:1rem}.save-image-footer{border-top:1px solid #eee;display:flex;flex-shrink:0;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem}.save-image-footer .btn{-webkit-tap-highlight-color:transparent;font-size:1rem;min-height:48px;padding:.75rem 1.5rem;touch-action:manipulation}.save-image-footer .btn:disabled{cursor:not-allowed;opacity:.6}.pedigree-loading-overlay{align-items:center;background:#ffffffd9;bottom:0;display:flex;flex-direction:column;gap:1rem;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:500}.pedigree-loading-overlay p{color:#2c3e50;font-size:1.1rem;font-weight:500;margin:0}.pedigree-loading-spinner{animation:pedigree-spin 1s linear infinite;border:4px solid #e0e0e0;border-radius:50%;border-top-color:#3498db;height:50px;width:50px}@keyframes pedigree-spin{to{transform:rotate(1turn)}}.theme-selector{display:flex;flex-direction:column;gap:8px}.theme-option{cursor:pointer;display:block}.theme-option input{display:none}.theme-preview-box{background:#fafafa;border:2px solid #e0e0e0;border-radius:8px;display:flex;flex-direction:column;padding:12px 16px;transition:all .2s}.theme-option:hover .theme-preview-box{background:#f5f6ff;border-color:#667eea}.theme-option.selected .theme-preview-box{background:linear-gradient(135deg,#f5f6ff,#ede7ff);border-color:#667eea;box-shadow:0 2px 8px #667eea33}.theme-name{color:#333;font-size:14px;font-weight:600}.theme-desc{color:#666;font-size:12px;margin-top:2px}.tree-container.theme-classic .rabbit-node-card{background:#fff;border:1px solid #e0e0e0;border-left:4px solid #bbdefb;border-radius:8px;box-shadow:0 2px 8px #00000014}.tree-container.theme-classic .node-card-header{background:#fafafa;border-bottom:1px solid #eee}.tree-container.theme-classic .node-photo-placeholder{background:#fff}.tree-container.theme-minimal .rabbit-node-card{background:#fff;border:1px solid #ddd;border-left:3px solid #888;border-radius:4px;box-shadow:none}.tree-container.theme-minimal .rabbit-node-card:hover{box-shadow:0 2px 6px #0000001a}.tree-container.theme-minimal .node-card-header{background:#0000;border-bottom:1px solid #eee}.tree-container.theme-minimal .node-photo-placeholder{background:#f5f5f5;border-width:1px}.tree-container.theme-minimal .node-photo-placeholder .photo-icon{opacity:.7}.tree-container.theme-minimal .node-card-body{background:#0000}.tree-container.theme-minimal .field-label{color:#888}.tree-container.theme-elegant .rabbit-node-card{background:linear-gradient(145deg,#fff,#f8f9fa);border:none;border-radius:12px;box-shadow:0 4px 20px #00000014,0 1px 3px #0000000d}.tree-container.theme-elegant .rabbit-node-card:hover{box-shadow:0 8px 30px #0000001f,0 2px 6px #00000014;transform:translateY(-3px)}.tree-container.theme-elegant .node-card-header{background:linear-gradient(135deg,#667eea0d,#764ba20d);border-bottom:1px solid #667eea1a;border-radius:12px 12px 0 0}.tree-container.theme-elegant .node-photo-placeholder{background:#fff;box-shadow:0 2px 8px #0000001a}.tree-container.theme-elegant .node-name{font-weight:600;letter-spacing:.3px}.tree-container.theme-elegant .field-label{color:#667eea;font-weight:600}.tree-container.theme-rustic .rabbit-node-card{background:linear-gradient(145deg,#fefdfb,#f9f5f0);border:2px solid #d4c4a8;border-radius:6px;box-shadow:0 3px 10px #8b775526}.tree-container.theme-rustic .rabbit-node-card:hover{border-color:#b8a88a;box-shadow:0 5px 15px #8b775533}.tree-container.theme-rustic .node-card-header{background:linear-gradient(135deg,#f5efe6,#ebe4d8);border-bottom:1px solid #d4c4a8}.tree-container.theme-rustic .node-photo-placeholder{background:#faf7f2;border-color:#b8a88a}.tree-container.theme-rustic .node-name{color:#5d4e37}.tree-container.theme-rustic .node-gender.male{color:#6b8e6b}.tree-container.theme-rustic .node-gender.female{color:#c27a7a}.tree-container.theme-rustic .field-label{color:#8b7355}.tree-container.theme-rustic .field-value{color:#5d4e37}.tree-container.theme-rustic .node-card-body{background:#0000}.tree-container.theme-playful .rabbit-node-card{border:2px solid #0000;border-radius:16px;overflow:hidden;position:relative}.tree-container.theme-playful .rabbit-node-card.gender-female{background:linear-gradient(145deg,#fff0f3,#ffe4ec);box-shadow:0 4px 15px #e91e6326,0 2px 6px #ec407a1a}.tree-container.theme-playful .rabbit-node-card.gender-female:before{background:linear-gradient(135deg,#f48fb1,#f8bbd0 50%,#fce4ec);border-radius:14px;content:"";inset:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:2px;pointer-events:none;position:absolute}.tree-container.theme-playful .rabbit-node-card.gender-female .node-card-header{background:linear-gradient(135deg,#f48fb126,#f8bbd01a);border-bottom:1px dashed #f48fb1}.tree-container.theme-playful .rabbit-node-card.gender-female .node-photo-placeholder{background:linear-gradient(135deg,#fff0f3,#fce4ec);border:2px dashed #f48fb1}.tree-container.theme-playful .rabbit-node-card.gender-male{background:linear-gradient(145deg,#e3f2fd,#bbdefb);box-shadow:0 4px 15px #2196f326,0 2px 6px #42a5f51a}.tree-container.theme-playful .rabbit-node-card.gender-male:before{background:linear-gradient(135deg,#64b5f6,#90caf9 50%,#bbdefb);border-radius:14px;content:"";inset:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:2px;pointer-events:none;position:absolute}.tree-container.theme-playful .rabbit-node-card.gender-male .node-card-header{background:linear-gradient(135deg,#64b5f626,#90caf91a);border-bottom:1px dashed #64b5f6}.tree-container.theme-playful .rabbit-node-card.gender-male .node-photo-placeholder{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:2px dashed #64b5f6}.tree-container.theme-playful .rabbit-node-card:hover{transform:translateY(-3px) scale(1.02)}.tree-container.theme-playful .rabbit-node-card.gender-female:hover{box-shadow:0 8px 25px #e91e6333,0 4px 10px #ec407a26}.tree-container.theme-playful .rabbit-node-card.gender-male:hover{box-shadow:0 8px 25px #2196f333,0 4px 10px #42a5f526}.tree-container.theme-playful .node-photo-placeholder .photo-icon{font-size:1.6rem}.tree-container.theme-playful .node-name{color:#37474f;font-weight:700}.tree-container.theme-playful .node-gender.male{color:#1976d2}.tree-container.theme-playful .node-gender.female{color:#c2185b}.tree-container.theme-playful .rabbit-node-card.gender-female .field-label{color:#c2185b;font-weight:600}.tree-container.theme-playful .rabbit-node-card.gender-male .field-label{color:#1976d2;font-weight:600}.tree-container.theme-playful .field-value{color:#37474f}.tree-container.theme-playful .rabbit-node-card.gender-female .node-collapse-btn{background:linear-gradient(135deg,#f48fb1,#f8bbd0);border:none;color:#fff}.tree-container.theme-playful .rabbit-node-card.gender-female .node-collapse-btn:hover{background:linear-gradient(135deg,#ec407a,#f48fb1)}.tree-container.theme-playful .rabbit-node-card.gender-male .node-collapse-btn{background:linear-gradient(135deg,#64b5f6,#90caf9);border:none;color:#fff}.tree-container.theme-playful .rabbit-node-card.gender-male .node-collapse-btn:hover{background:linear-gradient(135deg,#42a5f5,#64b5f6)}.tree-container.theme-natural .rabbit-node-card{border:1px solid #e0e0e0;border-radius:10px;transition:all .2s ease}.tree-container.theme-natural .rabbit-node-card:hover{transform:translateY(-2px)}.tree-container.theme-natural .node-card-header{background:#ffffffb3;border-bottom:1px solid #00000014}.tree-container.theme-natural .node-photo-placeholder{background:#fff}.tree-container.theme-natural .node-name{color:#2c3e50;font-weight:600}.tree-container.theme-natural .field-label{color:#546e7a;font-weight:600}.tree-container.theme-natural .field-value{color:#37474f}.tree-container.theme-minimal svg path{stroke:#999}.tree-container.theme-elegant svg path{stroke:#667eea;stroke-width:2.5}.tree-container.theme-rustic svg path{stroke:#b8a88a;stroke-width:2.5}.tree-container.theme-playful svg path{stroke:#e1bee7;stroke-width:3}.tree-container.theme-natural svg path{stroke:#78909c;stroke-width:2}.rabbit-list-container{background:#f5f5f5!important;border:none!important;border-radius:0!important;box-shadow:none!important;min-height:100%;padding:0;width:100%}.rabbit-list-container>h2{background:#f5f5f5;margin:0;padding:0 0 1rem}.rabbit-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.rabbit-header h2{margin:0}.controls-box{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:1.5rem}.filter-controls{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:0}.filter-controls:last-child{margin-bottom:0}.filter-controls .btn-primary{margin-left:auto}.search-box{align-items:center;background:#0000;border-radius:0;box-shadow:none;display:flex;gap:.5rem;padding:0}.btn-search-go{background:#3498db;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:background .2s}.btn-search-go:hover{background:#2980b9}.filter-toggle-box{background:#0000;border-radius:0;box-shadow:none;padding:0}.btn-filter-toggle{background:#f0f0f0;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s;white-space:nowrap}.btn-filter-toggle:hover{background:#e0e0e0}.btn-filter-toggle.active{background:#3498db;border-color:#3498db;color:#fff}.filters-box{background:#0000;border-radius:0;box-shadow:none;flex-wrap:wrap;gap:1rem;padding:0}.filter-group,.filters-box{align-items:center;display:flex}.filter-group{gap:.5rem}.filter-group label{font-weight:500;margin:0;white-space:nowrap}.filter-group select{border:1px solid #ddd;border-radius:6px;font-size:.9rem;min-width:100px;padding:.5rem}.btn-clear-filters{background:#fff;border:1px solid #dc3545;border-radius:6px;color:#dc3545;cursor:pointer;font-size:.85rem;padding:.5rem 1rem;transition:all .2s}.btn-clear-filters:hover{background:#dc3545;color:#fff}.search-box .search-input{border:1px solid #ddd;border-radius:4px;font-size:1rem;min-width:200px;padding:.5rem}.clear-search-btn{font-size:1.2rem;margin-left:-.5rem}.rabbit-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:0;padding:0}.rabbit-card{background:#f5f5f5;border:1px solid #d0d0d0;border-left-width:4px;border-radius:8px;padding:1.5rem;transition:transform .2s,border-color .2s}.rabbit-card:hover{border-color:#b0b0b0;transform:translateY(-2px)}.rabbit-card.clickable{cursor:pointer}.rabbit-card-footer{border-top:1px dashed #e0e0e0;margin-top:12px;padding-top:12px;text-align:center}.tap-hint{color:#888;font-size:12px;font-style:italic}.rabbit-card.status-dead{opacity:.8}.rabbit-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.rabbit-card-header h3{color:#2c3e50;margin:0}.status-badge{font-size:.8rem;padding:.25rem .75rem}.status-badge.alive{background:#d4edda;color:#155724}.status-badge.sold{background:#fff3cd;color:#856404}.status-badge.dead{background:#e2e3e5;color:#383d41}.rabbit-details{margin-bottom:1rem}.rabbit-details p{color:#555;margin:.5rem 0}.breeding-status{background:#fce4ec;border-radius:4px;color:#e91e63!important;font-weight:600;margin-top:.75rem!important;padding:.5rem}.rabbit-actions{display:flex;gap:.5rem;margin-top:1rem}.rabbit-actions button{flex:1 1}.empty-state{background:#f5f5f5;border-radius:8px;color:#666;padding:3rem}@media (max-width:768px){.rabbit-grid{grid-template-columns:1fr}.rabbit-header{align-items:stretch;flex-direction:column}.rabbit-header button{width:100%}.filter-bar{align-items:stretch;flex-direction:column}.filter-bar select{width:100%}}.accolades-section{border-top:2px solid #e0e0e0;margin-top:1rem;padding-top:1rem}.accolades-list{margin-bottom:.75rem;max-height:200px;overflow-y:auto}.accolade-item{background:#f5f5f5;border-radius:4px;justify-content:space-between;margin-bottom:.5rem;padding:.5rem}.accolade-item span{flex:1 1;margin-right:.5rem}.btn-delete-accolade{align-items:center;background:#dc3545;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:24px;justify-content:center;line-height:1;transition:background-color .2s;width:24px}.btn-delete-accolade:hover{background:#c82333}.accolade-add{align-items:center;display:flex;flex-direction:column;gap:.5rem}.accolade-add input{border:1px solid #ddd;border-radius:4px;padding:.5rem;width:100%}.accolade-add button{font-size:1.2rem;font-weight:700;padding:.5rem 1rem}.documents-section{border-top:1px solid #e0e0e0;margin-top:20px;padding-top:15px}.documents-list{background:#fafafa;border:1px solid #e0e0e0;border-radius:4px;margin-bottom:10px;max-height:200px;overflow-y:auto;padding:8px}.document-item{align-items:center;background:#f8f9fa;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:6px;padding:8px 10px}.document-item:last-child{margin-bottom:0}.document-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.document-name{color:#333;font-size:13px;font-weight:500;text-decoration:underline}.document-name:hover{color:#0056b3}.document-size{color:#999;font-size:11px}.btn-delete-document{align-items:center;background:#dc3545;border:none;border-radius:3px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:24px;justify-content:center;min-width:24px;padding:2px 8px}.btn-delete-document:hover{background:#c82333}.document-upload{margin-top:10px}.document-upload input[type=file]{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:8px;width:100%}.document-upload input[type=file]:disabled{background:#f0f0f0;cursor:not-allowed}.sub-tabs-container{border-bottom:1px solid #e0e0e0;display:flex;gap:8px;margin-bottom:20px;padding-bottom:0}.sub-tabs-container button{background-color:initial;border:none;cursor:pointer;font-size:15px;padding:10px 20px;transition:all .2s ease}.sub-tabs-container button:hover{color:#3498db}.stud-badge{background-color:#e3f2fd;border-radius:12px;color:#1976d2;font-size:.8rem;font-weight:600;padding:.25rem .75rem}.lists-container{box-sizing:border-box;height:100%;padding:20px;width:100%}.lists-tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:0;margin-bottom:20px}.tab-button{background:none;border-bottom:3px solid #0000;font-size:16px;font-weight:500;margin-bottom:-2px;padding:12px 20px}.tab-button:hover{background-color:#f5f5f5}.tab-button.active{border-bottom-color:#667eea;font-weight:600}.lists-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.lists-header h2{color:#333;margin:0}.list-detail-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;gap:15px;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.list-detail-header h2{color:#333;flex:1 1;margin:0;text-align:center}.lists-content{display:flex;flex-direction:column;gap:15px}.list-section{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.list-header{align-items:center;background-color:#f9f9f9;cursor:pointer;display:flex;justify-content:space-between;padding:15px 20px;transition:background-color .2s}.list-header:hover{background-color:#f0f0f0}.list-header.active{background-color:#e3f2fd}.list-name{color:#333;font-size:18px;font-weight:500}.btn-danger{background:linear-gradient(135deg,#e74c3c,#c0392b)}.btn-danger:hover{box-shadow:0 4px 12px #e74c3c66;transform:translateY(-1px)}.btn-secondary{background:linear-gradient(135deg,#95a5a6,#7f8c8d);color:#fff}.btn-secondary:hover{box-shadow:0 4px 12px #95a5a666;transform:translateY(-1px)}.list-body{border-top:1px solid #e0e0e0;padding:20px}.btn-add-rabbit{margin-bottom:15px;width:100%}.rabbits-list{display:flex;flex-direction:column;gap:8px}.rabbit-item{align-items:center;background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;padding:12px 15px;transition:all .2s}.rabbit-item:hover{background-color:#e3f2fd;border-color:#4a90e2}.rabbit-name{font-size:16px}.btn-remove{background:none;border:none;color:#f44336;cursor:pointer;font-size:20px;opacity:.7;padding:4px 8px;transition:opacity .2s}.btn-remove:hover{opacity:1}.empty-message{color:#999;font-style:italic;padding:20px;text-align:center}.empty-state{color:#999;font-size:16px;padding:40px}.modal-confirm{max-width:400px}.warning-text{color:#f44336;font-size:14px;margin-top:10px}.rabbit-selection-list{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto}.rabbit-selection-item{background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:6px;color:#333;cursor:pointer;font-size:16px;padding:12px 15px;transition:all .2s}.rabbit-selection-item:hover{background-color:#e3f2fd;border-color:#4a90e2}.read-only-field{align-items:center;background-color:#f5f5f5;border:1px solid #e0e0e0;border-radius:4px;color:#333;display:flex;font-size:14px;min-height:38px;padding:10px 12px}.read-only-notes{align-items:flex-start;line-height:1.5;min-height:80px;white-space:pre-wrap}.status-badge{border-radius:12px;padding:4px 12px}.status-alive{background-color:#4caf50;color:#fff}.status-sold{background-color:#2196f3;color:#fff}.status-dead{background-color:#757575;color:#fff}.status-arthur{background-color:#ff9800;color:#fff}.search-dropdown{position:relative}.search-dropdown input{border:1px solid #ddd;border-radius:4px;font-size:1rem;padding:.5rem 2rem .5rem .5rem;width:100%}.clear-search-btn{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:1.5rem;height:1.5rem;justify-content:center;padding:0;position:absolute;right:.5rem;top:50%;transform:translateY(-50%);width:1.5rem;z-index:2}.clear-search-btn:hover{color:#000}.dropdown-list{background:#fff;border:1px solid #ddd;border-radius:0 0 4px 4px;border-top:none;box-shadow:0 4px 6px #0000001a;left:0;max-height:400px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.modal.add-rabbit-modal{display:flex;flex-direction:column;height:600px;overflow:hidden;width:500px}.modal.add-rabbit-modal .modal-header{flex-shrink:0}.modal.add-rabbit-modal .modal-body{overflow:hidden}.modal.add-rabbit-modal .dropdown-list{border:1px solid #ddd;border-radius:4px;left:auto;margin-top:8px;max-height:400px;overflow-y:auto;position:relative;right:auto;top:auto}.dropdown-item{cursor:pointer;padding:.75rem 1rem;transition:background-color .2s}.dropdown-item:hover{background-color:#f0f0f0}.dropdown-item.no-results{color:#999;cursor:default}.dropdown-item.no-results:hover{background-color:#fff}.breeding-date-section .list-header{align-items:center;display:flex;justify-content:space-between}.breeding-count{color:#888;font-size:14px;font-weight:400;margin-left:10px}.expand-icon{color:#888;font-size:12px}.breeding-list-body{border-top:1px solid #e0e0e0;display:flex;flex-direction:column;gap:10px;padding:15px 20px}.breeding-item{background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:6px;padding:12px 15px}.breeding-pair{align-items:center;display:flex;font-size:15px;gap:10px}.breeding-doe{color:#e91e63;font-weight:500}.breeding-buck{color:#2196f3;font-weight:500}.breeding-separator{color:#888;font-weight:700}.breeding-checkboxes{border-top:1px dashed #e0e0e0;display:flex;gap:20px;margin-top:10px;padding-top:10px;position:relative;z-index:10}.breeding-checkbox{align-items:center;color:#333;cursor:pointer;display:flex;font-size:13px;gap:6px;position:relative;z-index:11}.breeding-checkbox input[type=checkbox]{cursor:pointer;height:16px;width:16px}.breeding-checkbox.disabled{cursor:default;opacity:.6}.breeding-checkbox.disabled input[type=checkbox]{cursor:default}.breeding-checkbox.disabled span{color:#888}.breeding-notes{border-top:1px dashed #e0e0e0;color:#666;font-size:13px;font-style:italic;margin-top:8px;padding-top:8px}@media (max-width:768px){.lists-container{padding:10px}.lists-tabs{flex-direction:row}.tab-button{font-size:14px;padding:10px 15px}.lists-header{align-items:stretch;flex-direction:column;gap:10px}.lists-header h2{text-align:center}.list-detail-header{flex-wrap:wrap;gap:10px}.list-detail-header h2{flex:1 1 100%;margin-top:5px;order:2;text-align:left}.btn-back{flex:0 0 auto;order:1}.btn-primary{flex:1 1 auto;order:1}.rabbit-detail-grid{grid-template-columns:1fr}.breeding-pair{flex-wrap:wrap;justify-content:center}}.schedule-page{box-sizing:border-box;height:100%;padding:20px;width:100%}.schedule-page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.schedule-page-header h1{color:#333;font-size:28px;margin:0}.schedule-tabs{background:#f5f5f5;border-radius:12px;display:flex;gap:8px;margin-bottom:24px;padding:6px}.tab-button{align-items:center;background:#0000;border:none;border-radius:8px;color:#666;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 16px;transition:all .2s ease}.tab-button:hover{background:#ffffff80;color:#333}.tab-button.active{background:#fff;box-shadow:0 2px 8px #0000001a;color:#667eea}.tab-icon{font-size:18px}.tab-badge{background:#e74c3c;border-radius:10px;color:#fff;font-size:12px;min-width:20px;padding:2px 8px;text-align:center}.tab-content{min-height:400px}.loading-state{color:#666;font-size:16px;padding:60px 20px;text-align:center}.calendar-view{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.calendar-title{align-items:center;display:flex;gap:12px}.calendar-title h2{color:#333;font-size:22px;margin:0}.btn-today{background:#f0f0f0;border:none;border-radius:6px;color:#666;cursor:pointer;font-size:13px;padding:6px 12px;transition:all .2s ease}.btn-today:hover{background:#e0e0e0;color:#333}.calendar-nav-btn{background:#f5f5f5;border:none;border-radius:50%;color:#666;cursor:pointer;font-size:18px;height:40px;transition:all .2s ease;width:40px}.calendar-nav-btn:hover{background:#667eea;color:#fff}.calendar-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.calendar-day-header{color:#666;font-size:13px;font-weight:600;padding:12px 8px;text-align:center;text-transform:uppercase}.calendar-day{background:#fafafa;border-radius:8px;min-height:80px;padding:8px;position:relative;transition:all .2s ease}.calendar-day.empty{background:#0000}.calendar-day:not(.empty):hover{background:#f0f0f0}.calendar-day.today{background:#e8f0fe;border:2px solid #667eea}.calendar-day.has-events{background:#fff8e6}.calendar-day.today.has-events{background:linear-gradient(135deg,#e8f0fe,#fff8e6)}.day-number{color:#333;display:block;font-weight:600;margin-bottom:4px}.calendar-day.today .day-number{color:#667eea}.day-events{display:flex;flex-direction:column;gap:2px}.event-dot{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px;cursor:pointer;padding:2px 6px;transition:transform .2s ease}.event-dot:hover{transform:scale(1.02)}.event-label{color:#fff;font-size:11px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-more{color:#666;font-size:11px;font-style:italic;padding:2px 4px}.calendar-legend{border-top:1px solid #eee;display:flex;gap:20px;margin-top:20px;padding-top:16px}.legend-item{align-items:center;color:#666;display:flex;font-size:13px;gap:8px}.legend-dot{border-radius:3px;height:12px;width:12px}.legend-dot.due{background:linear-gradient(135deg,#667eea,#764ba2)}.event-dot.task,.legend-dot.task{background:linear-gradient(135deg,#27ae60,#1e8449)}.event-dot.nestbox,.legend-dot.nestbox{background:linear-gradient(135deg,#f39c12,#d68910)}.event-dot.custom,.legend-dot.custom{background:linear-gradient(135deg,#9b59b6,#8e44ad)}.event-dot.treatment,.legend-dot.treatment{background:linear-gradient(135deg,#e74c3c,#c0392b)}.event-dot.vaccination,.legend-dot.vaccination{background:linear-gradient(135deg,#3498db,#2980b9)}.calendar-day.clickable{cursor:pointer}.calendar-day.clickable:hover{box-shadow:0 2px 8px #00000026;transform:scale(1.02)}.calendar-detail-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;gap:20px;margin-bottom:24px;padding-bottom:16px}.calendar-detail-header h2{color:#333;font-size:20px;margin:0}.btn-back{background:#f5f5f5;border:none;border-radius:8px;color:#666;cursor:pointer;font-size:14px;font-weight:600;padding:10px 16px;transition:all .2s ease}.btn-back:hover{background:#e8e8e8;color:#333}.calendar-detail-content{min-height:200px}.no-events{color:#666;padding:60px 20px;text-align:center}.events-list{display:flex;flex-direction:column;gap:12px}.event-card{align-items:center;background:#fff;border:1px solid #eee;border-radius:12px;display:flex;gap:16px;padding:16px;transition:all .2s ease}.event-card.clickable{cursor:pointer}.event-card.clickable:hover{border-color:#ddd;box-shadow:0 2px 8px #0000001a;transform:translateX(4px)}.event-type-badge{border-radius:6px;color:#fff;font-size:12px;font-weight:600;padding:6px 12px;white-space:nowrap}.event-type-badge.breeding{background:linear-gradient(135deg,#667eea,#764ba2)}.event-type-badge.nestbox{background:linear-gradient(135deg,#f39c12,#d68910)}.event-type-badge.task{background:linear-gradient(135deg,#27ae60,#1e8449)}.event-type-badge.custom{background:linear-gradient(135deg,#9b59b6,#8e44ad)}.event-type-badge.treatment{background:linear-gradient(135deg,#e74c3c,#c0392b)}.event-type-badge.vaccination{background:linear-gradient(135deg,#3498db,#2980b9)}.event-card-content{flex:1 1;min-width:0}.event-card-content h3{color:#333;font-size:16px;margin:0 0 4px}.event-card-content p{color:#666;font-size:14px;margin:0}.event-arrow{color:#999;flex-shrink:0;font-size:20px}.event-card.clickable:hover .event-arrow{color:#667eea}.schedule-view{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.schedule-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.schedule-header h2{color:#333;font-size:20px;margin:0}.schedule-info{display:flex;justify-content:center;padding:40px 20px}.info-card{max-width:400px;text-align:center}.info-icon{font-size:48px;margin-bottom:16px}.info-card h3{color:#333;font-size:20px;margin:0 0 12px}.info-card p{color:#666;font-size:14px;line-height:1.6;margin:0 0 20px}.notifications-view{display:flex;flex-direction:column;gap:16px}.notifications-summary{color:#666;font-size:14px}.notifications-list{display:flex;flex-direction:column;gap:12px}.notification-card{align-items:flex-start;background:#fff;border-left:4px solid #ddd;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;gap:16px;padding:16px;transition:all .2s ease}.notification-card:hover{box-shadow:0 4px 12px #0000001f}.notification-card.error{background:#fef5f5;border-left-color:#e74c3c}.notification-card.warning{background:#fffbf0;border-left-color:#f39c12}.notification-card.success{background:#f0fdf4;border-left-color:#27ae60}.notification-card.info{background:#f0f8ff;border-left-color:#3498db}.notification-icon{flex-shrink:0;font-size:28px}.notification-content{flex:1 1;min-width:0}.notification-header{margin-bottom:4px}.notification-type-badge{background:#00000014;border-radius:4px;color:#555;display:inline-block;font-size:12px;font-weight:600;padding:2px 8px;text-transform:uppercase}.notification-message{color:#333;font-size:15px;font-weight:600;margin:0 0 4px}.notification-subtext{color:#666;font-size:13px;margin:0}.notification-actions{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:8px}.notification-action{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:6px;color:#fff;font-size:13px;font-weight:500;padding:6px 14px;text-decoration:none;transition:all .2s ease}.notification-action:hover{box-shadow:0 2px 8px #667eea66;transform:translateY(-1px)}.notification-dismiss{align-items:center;background:#0000000d;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:20px;height:28px;justify-content:center;transition:all .2s ease;width:28px}.notification-dismiss:hover{background:#e74c3c;color:#fff}.no-notifications{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:60px 20px;text-align:center}.no-notifications-icon{font-size:48px;margin-bottom:16px}.no-notifications p{color:#666;font-size:16px;margin:0}.tasks-view{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.tasks-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.tasks-header h2{color:#333;font-size:20px;margin:0}.tasks-filter-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.filter-tab{align-items:center;background:#f5f5f5;border:none;border-radius:20px;color:#666;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.filter-tab:hover{background:#e8e8e8}.filter-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.filter-count{background:#fff3;border-radius:10px;font-size:11px;padding:2px 6px}.filter-tab:not(.active) .filter-count{background:#0000001a}.add-task-form{background:#f8f9fa;border:2px dashed #ddd;border-radius:12px;margin-bottom:20px;padding:20px}.add-task-form h3{color:#333;font-size:16px;margin:0 0 16px}.add-task-form .form-group{margin-bottom:16px}.add-task-form .form-group label{color:#555;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.add-task-form .form-group input[type=date],.add-task-form .form-group input[type=text],.add-task-form .form-group textarea{border:1px solid #ddd;border-radius:8px;box-sizing:border-box;font-size:14px;padding:10px 12px;width:100%}.add-task-form .form-group input:focus,.add-task-form .form-group textarea:focus{border-color:#667eea;outline:none}.add-task-form .checkbox-group label{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:8px}.add-task-form .checkbox-group input[type=checkbox]{accent-color:#667eea;height:18px;width:18px}.add-task-form .form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.tasks-list{display:flex;flex-direction:column;gap:12px}.task-card{align-items:flex-start;background:#fff;border:1px solid #eee;border-radius:12px;display:flex;gap:16px;padding:16px;transition:all .2s ease}.task-card:hover{border-color:#ddd;box-shadow:0 2px 8px #0000000d}.task-card.overdue{background:#fef5f5;border-left:4px solid #e74c3c}.task-card.today{background:#fffbf0;border-left:4px solid #f39c12}.task-card.upcoming{background:#f0fdf4;border-left:4px solid #27ae60}.task-card.completed{background:#f8f9fa;border-left:4px solid #95a5a6;opacity:.7}.task-checkbox{flex-shrink:0;padding-top:2px}.task-checkbox input[type=checkbox]{accent-color:#667eea;cursor:pointer;height:20px;width:20px}.task-content{flex:1 1;min-width:0}.task-content h4{color:#333;font-size:15px;margin:0 0 4px}.task-content h4.completed{color:#999;text-decoration:line-through}.task-description{color:#666;font-size:13px;line-height:1.4;margin:0 0 8px}.task-meta{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.task-date{background:#f0f0f0;border-radius:4px;color:#666;font-size:12px;font-weight:500;padding:3px 8px}.task-date.overdue{background:#fce4ec;color:#c62828}.task-date.today{background:#fff3e0;color:#e65100}.task-date.upcoming{background:#e8f5e9;color:#2e7d32}.task-date.completed{background:#f5f5f5;color:#999}.task-notify{background:#e3f2fd;border-radius:4px;color:#1565c0;font-size:11px;padding:2px 6px}.task-actions{display:flex;flex-shrink:0;gap:8px}.task-action-btn{border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;padding:6px 12px;transition:all .2s ease}.task-action-btn.edit{background:#f0f0f0;color:#666}.task-action-btn.edit:hover{background:#e0e0e0;color:#333}.task-action-btn.delete{background:#e74c3c1a;color:#e74c3c}.task-action-btn.delete:hover{background:#e74c3c;color:#fff}.no-tasks{background:#f8f9fa;border-radius:12px;padding:60px 20px;text-align:center}.no-tasks-icon{font-size:48px;margin-bottom:16px}.no-tasks p{color:#666;font-size:15px;margin:0}@media (max-width:768px){.schedule-page{padding:15px}.schedule-page-header{flex-direction:column;gap:12px;text-align:center}.schedule-tabs{flex-wrap:wrap}.tab-button{flex:1 1 auto;font-size:13px;min-width:calc(33% - 6px);padding:10px 12px}.tab-label{display:none}.tab-icon{font-size:20px}.calendar-view{padding:16px}.calendar-header{flex-wrap:wrap;gap:12px}.calendar-title h2{font-size:18px}.calendar-day{min-height:60px;padding:4px}.calendar-day-header{font-size:11px;padding:8px 4px}.day-number{font-size:13px}.event-label{font-size:10px}.notification-card{flex-wrap:wrap;gap:12px}.notification-actions{flex-direction:row;justify-content:space-between;width:100%}.schedule-header,.tasks-header{flex-direction:column;gap:12px;text-align:center}.tasks-filter-tabs{justify-content:center}.task-card{flex-wrap:wrap}.task-actions{justify-content:flex-end;margin-top:8px;width:100%}.add-task-form .form-actions{flex-direction:column}.add-task-form .form-actions .btn{width:100%}}@media (max-width:480px){.tab-button{padding:10px 8px}.calendar-day{min-height:50px}.event-dot{padding:1px 4px}.calendar-legend{flex-direction:column;gap:8px}}.profile-container{box-sizing:border-box;height:100%;padding:20px;width:100%}.profile-container h1{margin-bottom:10px}.profile-subtitle{color:#666;font-size:16px;margin-bottom:40px}.profile-sections{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.profile-section-card{background-color:#fff;border:2px solid #0000;border-radius:12px;box-shadow:0 2px 8px #0000001a;color:inherit;cursor:pointer;padding:32px;text-decoration:none;transition:all .3s ease}.profile-section-card:hover{border-color:#4caf50;box-shadow:0 6px 20px #00000026;transform:translateY(-4px)}.section-icon{font-size:48px;margin-bottom:16px}.profile-section-card h2{color:#333;font-size:22px;margin:0 0 12px}.profile-section-card p{color:#666;font-size:14px;line-height:1.5;margin:0}@media (max-width:768px){.profile-sections{grid-template-columns:1fr}}.account-settings-container{box-sizing:border-box;height:100%;overflow-x:hidden;padding:20px;width:100%}.settings-form{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;box-sizing:border-box;margin-bottom:30px;max-width:100%;padding:30px;width:100%}.settings-form h2{border-bottom:2px solid #f0f0f0;color:#333;margin-top:0;padding-bottom:10px}.settings-form .form-group,.settings-form h2{margin-bottom:20px}.settings-form .form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:20px}.settings-form label{color:#555;display:block;font-weight:600;margin-bottom:6px}.settings-form input,.settings-form textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;max-width:100%;padding:10px;width:100%}.settings-form input:focus,.settings-form textarea:focus{border-color:#4caf50;outline:none}.settings-form input.disabled-input{background-color:#f5f5f5;color:#999;cursor:not-allowed}.settings-form textarea{font-family:inherit;resize:vertical}.settings-form small{color:#999;display:block;font-size:12px;margin-top:4px}.password-form{background-color:#fff9f0;border:2px solid #ffe4b5}.password-form h2{color:#d97706}.error-message,.success-message{border-radius:4px;padding:12px}.success-message{border-left:4px solid #3c3;color:#3c3}.btn{border-radius:4px;font-size:16px;padding:12px 24px;transition:all .3s ease}.btn-primary{background-color:#4caf50}.btn-primary:hover:not(:disabled){background-color:#45a049}.btn-primary:disabled{background-color:#ccc}@media (max-width:768px){.account-settings-container{padding:15px}.settings-form{padding:20px}.settings-form .form-row{grid-template-columns:1fr}.settings-form .form-group{max-width:100%;width:100%}.settings-form input,.settings-form textarea{font-size:16px}.btn{box-sizing:border-box;max-width:100%;width:100%}}.rabbitry-container{box-sizing:border-box;height:100%;overflow-x:hidden;padding:20px;width:100%}.page-header{margin-bottom:15px}.rabbitry-subtitle{color:#666;font-size:16px;margin-bottom:30px}.rabbitry-form{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;box-sizing:border-box;max-width:100%;padding:32px;width:100%}.rabbitry-form .form-group{margin-bottom:24px}.rabbitry-form label{color:#333;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.rabbitry-form input,.rabbitry-form textarea{border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-size:14px;max-width:100%;padding:10px 12px;transition:border-color .2s ease;width:100%}.rabbitry-form input:focus,.rabbitry-form textarea:focus{border-color:#4caf50;outline:none}.rabbitry-form input:disabled,.rabbitry-form textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.rabbitry-form textarea{font-family:inherit;resize:vertical}.rabbitry-form small{color:#666;display:block;font-size:12px;margin-top:6px}.error-message{border:1px solid #fcc}.error-message,.success-message{word-wrap:break-word;box-sizing:border-box;max-width:100%;width:100%}.success-message{border:1px solid #cfc;color:#3a3}.breed-select{background-color:#fff;border:1px solid #ddd;border-radius:6px;box-sizing:border-box;cursor:pointer;font-size:14px;max-width:100%;padding:10px 12px;transition:border-color .2s ease;width:100%}.breed-select:focus{border-color:#4caf50;outline:none}.breed-select:disabled{background-color:#f5f5f5;cursor:not-allowed}.btn-toggle-other{background-color:#2196f3;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-block;font-size:13px;font-weight:500;margin-top:8px;padding:8px 16px;transition:background-color .2s ease}.btn-toggle-other:hover:not(:disabled){background-color:#1976d2}.btn-toggle-other:disabled{background-color:#ccc;cursor:not-allowed}.selected-breeds{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.breed-label{background-color:#4caf50;border-radius:16px;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:6px 10px}.breed-label,.remove-breed{align-items:center;color:#fff}.remove-breed{background:none;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:18px;height:18px;justify-content:center;line-height:1;margin:0;padding:0;transition:background-color .2s ease;width:18px}.remove-breed:hover{background-color:#fff3}.remove-breed:disabled{cursor:not-allowed;opacity:.6}.other-breed-input{margin-top:12px}.other-breed-input label{color:#333;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.other-breed-controls{align-items:stretch;display:flex;gap:8px}.other-breed-controls input{flex:1 1;margin:0}.btn-add-breed{background-color:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background-color .2s ease;white-space:nowrap}.btn-add-breed:hover:not(:disabled){background-color:#45a049}.btn-add-breed:disabled{background-color:#ccc;cursor:not-allowed}.btn-cancel-breed{background-color:#f44336;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background-color .2s ease;white-space:nowrap}.btn-cancel-breed:hover:not(:disabled){background-color:#d32f2f}.btn-cancel-breed:disabled{background-color:#ccc;cursor:not-allowed}.logo-section{margin-bottom:24px}.logo-section small{color:#666;display:block;font-size:12px;margin-bottom:12px;margin-top:4px}.logo-upload-area{display:flex;flex-direction:column;gap:12px}.logo-preview-container{align-items:center;display:flex;gap:20px}.logo-preview{background:#fafafa;border:2px solid #e0e0e0;border-radius:8px;height:120px;object-fit:contain;padding:8px;width:120px}.logo-actions{display:flex;flex-direction:column;gap:8px}.btn-secondary{background:#f0f0f0;cursor:pointer;text-align:center}.btn-secondary:hover{background:#e0e0e0}.btn-danger{background:#f44336;color:#fff}.btn-danger:hover{background:#d32f2f}.logo-change-btn{display:inline-block}.logo-dropzone{align-items:center;background:#fafafa;border:2px dashed #ccc;border-radius:12px;cursor:pointer;display:flex;justify-content:center;padding:32px;transition:all .2s ease}.logo-dropzone:hover{background:#f0faf0;border-color:#4caf50}.dropzone-content{align-items:center;color:#666;display:flex;flex-direction:column;gap:8px}.dropzone-icon{align-items:center;border:2px solid #ccc;border-radius:50%;color:#999;display:flex;font-size:2rem;font-weight:300;height:48px;justify-content:center;width:48px}.dropzone-hint{color:#999;font-size:12px}.logo-save-btn{align-self:flex-start}@media (max-width:768px){.rabbitry-container{padding:15px}.rabbitry-form{padding:20px}.rabbitry-form .form-group{max-width:100%;width:100%}.rabbitry-form input,.rabbitry-form textarea{font-size:16px}.btn{box-sizing:border-box;max-width:100%;width:100%}.breed-select{font-size:16px}.selected-breeds{gap:6px}.breed-label{font-size:12px;padding:5px 8px}.other-breed-controls{flex-direction:column}.btn-add-breed,.btn-cancel-breed{width:100%}}.subscription-container{box-sizing:border-box;height:100%;padding:20px;width:100%}.header-spacer{width:140px}.btn-primary,.btn-primary:hover{animation:none!important}.subscription-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;padding:30px}.subscription-card h2{border-bottom:2px solid #f0f0f0;color:#333;margin-bottom:20px;margin-top:0;padding-bottom:10px}.plan-info{display:flex;flex-direction:column;gap:15px;margin-bottom:30px}.plan-expiry,.plan-status,.plan-tier{align-items:center;display:flex;gap:15px}.plan-expiry label,.plan-status label,.plan-tier label{color:#666;font-weight:600;min-width:80px}.tier-badge{border-radius:20px;display:inline-block;font-size:14px;font-weight:700;letter-spacing:.5px;padding:6px 16px}.tier-free{background-color:#e0e0e0;color:#666}.tier-basic{background-color:#bbdefb;color:#1565c0}.tier-premium{background-color:#ffd54f;color:#f57f17}.status-badge{display:inline-block;font-weight:600;padding:6px 16px}.status-active{background-color:#c8e6c9;color:#2e7d32}.status-cancelled{background-color:#ffecb3;color:#f57f17}.status-expired{background-color:#ffcdd2;color:#c62828}.upgrade-notice{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;margin-top:20px;padding:25px}.upgrade-notice h3{font-size:20px;margin-bottom:10px;margin-top:0}.upgrade-notice p{margin:0;opacity:.95}.manage-subscription{background-color:#f5f5f5;border-radius:6px;margin-top:20px;padding:20px}.manage-subscription h3{margin-bottom:10px;margin-top:0}.manage-subscription p{color:#666;margin:0}.features-card{background:linear-gradient(180deg,#fff 0,#f9f9f9)}.features-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr;margin-top:20px}.feature-column{background-color:#fff;border:2px solid #e0e0e0;border-radius:8px;padding:20px}.feature-column.highlighted{border-color:#ffd54f;box-shadow:0 4px 12px #ffd54f4d;position:relative}.feature-column h3{color:#333;font-size:20px;margin-bottom:15px;margin-top:0}.coming-soon{background-color:#ff9800;border-radius:12px;color:#fff;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.5px;margin-bottom:10px;padding:4px 12px;text-transform:uppercase}.feature-column ul{list-style:none;margin:0;padding:0}.feature-column li{border-bottom:1px solid #f0f0f0;color:#555;padding:10px 0}.feature-column li:last-child{border-bottom:none}.feature-column li:before{color:#4caf50;content:"✓";font-weight:700;margin-right:10px}.loading{color:#999;padding:40px}@media (max-width:768px){.features-grid{grid-template-columns:1fr}}.statistics-container{box-sizing:border-box;height:100%;padding:20px;width:100%}.page-header{margin-bottom:24px}.page-header h1{color:#2c3e50;font-size:1.8rem}.stats-summary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:32px}.summary-card{align-items:flex-start;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;gap:16px;padding:20px;transition:transform .2s,box-shadow .2s}.summary-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.summary-icon{flex-shrink:0;font-size:2rem}.summary-content{flex:1 1;min-width:0}.summary-content h3{color:#666;font-size:.85rem;font-weight:500;letter-spacing:.5px;margin:0 0 4px;text-transform:uppercase}.summary-value{color:#2c3e50;font-size:2rem;font-weight:700;line-height:1.2;margin:0}.summary-detail{color:#888;font-size:.85rem;margin:4px 0 0}.charts-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr);margin-bottom:32px}.chart-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.chart-card.full-width{grid-column:1/-1}.chart-card h3{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0 0 20px}.producers-section{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:32px}.producer-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.producer-card h3{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0 0 16px}.producer-list{display:flex;flex-direction:column;gap:12px}.producer-item{align-items:center;background:#f8f9fa;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:background .2s}.producer-item:hover{background:#e9ecef}.producer-rank{color:#888;font-size:1rem;font-weight:700;min-width:32px}.producer-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.producer-name{color:#2c3e50;font-size:.95rem;font-weight:600}.producer-stats{color:#666;font-size:.8rem}.producer-bar{background:#e0e0e0;border-radius:4px;height:8px;overflow:hidden;width:60px}.producer-bar-fill{background:linear-gradient(90deg,#e91e63,#ff4081);border-radius:4px;height:100%;transition:width .3s ease}.producer-bar.buck .producer-bar-fill{background:linear-gradient(90deg,#2196f3,#64b5f6)}.chart-empty{align-items:center;background:#f8f9fa;border-radius:8px;color:#999;display:flex;font-size:.95rem;height:250px;justify-content:center;margin-top:10px;text-align:center}.empty-state{color:#888;font-size:1.1rem}.loading{color:#888;font-size:1rem}.recharts-tooltip-wrapper{outline:none}.recharts-default-tooltip{background:#fff!important;border:1px solid #e0e0e0!important;border-radius:8px!important;box-shadow:0 4px 12px #00000026!important;padding:12px!important}@media (max-width:1024px){.charts-grid{grid-template-columns:1fr}.chart-card.full-width{grid-column:1}}@media (max-width:768px){.statistics-container{padding:12px}.page-header h1{font-size:1.4rem}.stats-summary{gap:12px;grid-template-columns:repeat(2,1fr)}.summary-card{align-items:center;flex-direction:column;gap:8px;padding:14px;text-align:center}.summary-icon{font-size:1.6rem}.summary-value{font-size:1.5rem}.summary-content h3,.summary-detail{font-size:.75rem}.charts-grid{gap:16px}.chart-card{padding:16px}.chart-card h3{font-size:1rem;margin-bottom:12px}.producers-section{gap:16px;grid-template-columns:1fr}.producer-card{padding:16px}.producer-item{padding:10px}.producer-bar{width:40px}}@media (max-width:480px){.stats-summary{grid-template-columns:1fr}}.notification-settings-container{box-sizing:border-box;height:100%;padding:20px;width:100%}.page-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;gap:20px;margin-bottom:30px;padding-bottom:15px}.page-header h1{flex:1 1;margin:0;text-align:center}.header-spacer{width:180px}.btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{box-shadow:0 4px 12px #667eea66}.btn-primary:disabled{cursor:not-allowed;opacity:.7}.btn-secondary{background:#f5f5f5;border:1px solid #ddd;color:#333}.btn-secondary:hover{background:#e8e8e8}.btn-sm{font-size:13px;padding:8px 16px}.loading{color:#666;font-size:16px;padding:60px 20px}.error-message{background-color:#fee;border-left:4px solid #c33;color:#c33}.error-message,.success-message{margin-bottom:20px;padding:12px 16px}.success-message{background-color:#efe;border-left:4px solid #4caf50;border-radius:8px;color:#2e7d32}.settings-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:24px;padding:24px}.settings-section h2{color:#333;font-size:20px;margin:0 0 8px}.section-description{color:#666;font-size:14px;margin:0 0 20px}.section-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px}.section-header h2{margin-bottom:4px}.settings-list{display:flex;flex-direction:column}.setting-item{align-items:flex-start;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;gap:12px;padding:16px 0}.setting-item:last-child{border-bottom:none}.setting-item input[type=checkbox]{accent-color:#667eea;cursor:pointer;height:20px;margin-top:2px;width:20px}.setting-info{flex:1 1}.setting-label{color:#333;display:block;font-weight:600;margin-bottom:4px}.setting-description{color:#666;display:block;font-size:13px}.setting-sub-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;gap:12px;padding:12px 0 12px 32px}.setting-sub-item label{color:#555;font-size:14px}.setting-sub-item select{background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 12px}.custom-notifications-list{display:flex;flex-direction:column;gap:8px}.custom-notification-item{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:12px;padding:12px 16px;transition:all .2s ease}.custom-notification-item:hover{background:#f0f0f0}.custom-toggle{align-items:center;cursor:pointer;display:flex;flex:1 1;gap:12px}.custom-toggle input[type=checkbox]{accent-color:#667eea;cursor:pointer;height:18px;width:18px}.custom-info{flex:1 1}.custom-name{color:#333;display:block;font-size:15px;font-weight:600}.custom-timing{color:#666;display:block;font-size:13px}.btn-delete-custom{align-items:center;background:#e74c3c1a;border:none;border-radius:50%;color:#e74c3c;cursor:pointer;display:flex;font-size:18px;height:28px;justify-content:center;transition:all .2s ease;width:28px}.btn-delete-custom:hover{background:#e74c3c;color:#fff}.no-custom-notifications{background:#f8f9fa;border-radius:8px;color:#666;padding:30px 20px;text-align:center}.no-custom-notifications p{margin:0}.add-custom-form{background:#f8f9fa;border:2px dashed #ddd;border-radius:8px;margin-top:20px;padding:20px}.add-custom-form h3{color:#333;font-size:16px;margin:0 0 16px}.form-group{margin-bottom:16px}.form-group label{color:#555;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.form-group input{border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-size:14px;padding:10px 12px;width:100%}.form-group input:focus{border-color:#667eea;outline:none}.form-group small{color:#888;display:block;font-size:12px;margin-top:6px}.form-group select{background:#fff;border:1px solid #ddd;border-radius:6px;box-sizing:border-box;cursor:pointer;font-size:14px;padding:10px 12px;width:100%}.form-group select:focus{border-color:#667eea;outline:none}.schedule-type-select{background:#fff}.schedule-preview{align-items:center;background:#e3f2fd;border-left:4px solid #2196f3;border-radius:8px;display:flex;gap:10px;margin-bottom:16px;padding:12px 16px}.schedule-preview .preview-icon{font-size:20px}.schedule-preview .preview-text{color:#1565c0;font-size:14px;font-weight:500}.calendar-option{background:#f0f8ff;border:1px solid #e3f2fd;border-radius:8px;margin-bottom:16px;padding:12px 16px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.save-section{display:flex;justify-content:center;padding:20px 0}.btn-save{font-size:16px;padding:14px 40px}@media (max-width:768px){.notification-settings-container{padding:15px}.page-header{flex-direction:column;gap:15px}.page-header h1{order:2;text-align:center}.page-header .btn{order:1;width:100%}.header-spacer{display:none}.section-header{flex-direction:column;gap:12px}.section-header .btn{width:100%}.setting-sub-item{align-items:flex-start;flex-direction:column;gap:8px}.setting-sub-item select{width:100%}.form-actions{flex-direction:column}.btn-save,.form-actions .btn{width:100%}}.cage-history-container{box-sizing:border-box;height:100%;padding:1.5rem;width:100%}.cage-history-header{margin-bottom:1.5rem}.cage-history-header h2{color:#2c3e50;margin:0 0 .5rem}.cage-history-subtitle{color:#7f8c8d;margin:0}.error-message{background:#fee;border-radius:8px;color:#c00;margin-bottom:1rem}.cage-history-content{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:300px 1fr}@media (max-width:768px){.cage-history-content{grid-template-columns:1fr}}.cage-selector{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.25rem}.cage-selector h3{color:#2c3e50;font-size:1.1rem;margin:0 0 1rem}.no-cages{color:#7f8c8d;font-size:.9rem}.cage-list{display:flex;flex-wrap:wrap;gap:.5rem}.cage-button{background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#2c3e50;cursor:pointer;font-size:.95rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.cage-button:hover{background:#f8f9fa;border-color:#3498db}.cage-button.active{background:#3498db;border-color:#3498db;color:#fff}.history-panel{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.25rem}.history-panel h3{color:#2c3e50;font-size:1.1rem;margin:0 0 1rem}.loading,.no-history{color:#7f8c8d}.loading{padding:2rem;text-align:center}.history-list{display:flex;flex-direction:column;gap:1rem}.history-entry{background:#f8f9fa;border-left:4px solid #bdc3c7;border-radius:10px;padding:1rem;transition:all .2s ease}.history-entry.current{background:#f0fff4;border-left-color:#27ae60}.history-entry-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.75rem}.rabbit-link{background:none;border:none;color:#3498db;cursor:pointer;font-size:1.1rem;font-weight:600;padding:0;text-decoration:none}.rabbit-link:hover{color:#2980b9;text-decoration:underline}.current-badge{background:#27ae60;border-radius:4px;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .5rem;text-transform:uppercase}.history-entry-details{display:flex;flex-direction:column;gap:.5rem}.date-range{align-items:center;display:flex;flex-wrap:wrap;font-size:.9rem;gap:.5rem}.date-label{color:#7f8c8d}.date-value{color:#2c3e50;font-weight:500;margin-right:.5rem}.duration{font-style:italic}.duration,.rabbit-color{color:#7f8c8d;font-size:.85rem}.rabbit-color{align-items:center;display:flex;gap:.5rem;margin-top:.5rem}.color-swatch{border:1px solid #0000001a;border-radius:4px;height:16px;width:16px}@media (max-width:768px){.cage-history-container,.cage-selector,.history-panel{padding:1rem}.cage-button{padding:.75rem 1rem}.history-entry{padding:.875rem}}.cage-cards-container{box-sizing:border-box;display:flex;flex-direction:column;height:100%;overflow:auto;padding:20px;width:100%}.cage-cards-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.cage-cards-header h1{color:#2c3e50;font-size:28px;margin:0}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.empty-icon{font-size:64px;margin-bottom:16px}.empty-state h2{color:#2c3e50;margin:0 0 8px}.empty-state p{color:#666;margin:0 0 24px}.templates-list{display:flex;flex-direction:column;gap:12px}.template-row{align-items:center;background:#fff;border-radius:8px;box-shadow:0 1px 4px #0000001a;display:flex;gap:16px;padding:12px 16px;transition:box-shadow .2s}.template-row:hover{box-shadow:0 2px 8px #00000026}.template-row.default{border-left:4px solid #4caf50}.template-row-preview{align-items:center;background:#f5f5f5;border-radius:4px;display:flex;flex-shrink:0;height:50px;justify-content:center;padding:4px;width:60px}.template-row-preview .mini-card{border-radius:2px;max-height:100%;max-width:100%}.template-row-info{flex:1 1;min-width:0}.template-row-name{align-items:center;display:flex;gap:8px;margin-bottom:4px}.template-name{color:#2c3e50;font-size:16px;font-weight:600}.default-badge{background:#4caf50;border-radius:12px;color:#fff;font-size:11px;font-weight:500;padding:2px 8px}.template-row-meta{color:#666;font-size:13px}.meta-separator{color:#ccc;margin:0 6px}.template-row-actions{display:flex;flex-shrink:0;gap:8px}.btn-small{font-size:13px;padding:6px 12px}.designer-view{display:flex;flex-direction:column;overflow:hidden;padding:0}.designer-header{align-items:center;background:#fff;border-bottom:1px solid #ddd;display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.designer-title{align-items:center;display:flex;gap:16px}.template-name-input{background:#0000;border:none;border-bottom:2px solid #0000;font-size:20px;font-weight:600;min-width:200px;padding:4px 8px}.template-name-input:focus{border-bottom-color:#3498db;outline:none}.designer-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.save-error{color:#e74c3c;font-size:13px;margin-left:8px}.designer-controls select{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:8px 12px}.custom-size-inputs{align-items:center;display:flex;gap:6px}.custom-size-inputs input{border:1px solid #ddd;border-radius:6px;padding:8px;text-align:center;width:60px}.custom-size-inputs span{color:#666}.designer-body{display:flex;flex:1 1;overflow:hidden}.palette-panel{background:#fff;border-right:1px solid #ddd;flex-shrink:0;overflow-y:auto;padding:16px;width:200px}.palette-panel h3{color:#2c3e50;font-size:16px;margin:0 0 16px}.palette-section{margin-bottom:20px}.palette-section h4{color:#666;font-size:12px;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.palette-item{align-items:center;background:#f5f5f5;border-radius:6px;cursor:grab;display:flex;gap:8px;margin-bottom:6px;padding:8px 10px;transition:background .2s,transform .2s;-webkit-user-select:none;user-select:none}.palette-item:hover{background:#e8e8e8}.palette-item:active{cursor:grabbing}.palette-item.dragging{opacity:.5;transform:scale(.95)}.palette-icon{font-size:14px}.palette-label{color:#333;font-size:13px}.canvas-panel{background:#e9ecef;display:flex;flex:1 1;flex-direction:column;overflow:hidden}.canvas-toolbar{background:#fff;border-bottom:1px solid #ddd;display:flex;gap:20px;padding:12px 20px}.toolbar-group{align-items:center;display:flex;gap:8px}.toolbar-group label{color:#666;font-size:13px}.toolbar-group input[type=color]{border:1px solid #ddd;border-radius:4px;cursor:pointer;height:32px;width:32px}.toolbar-group select{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:6px 10px}.canvas-container{flex:1 1;flex-direction:column;overflow:auto;padding:20px}.canvas-container,.canvas-wrapper{align-items:center;display:flex;justify-content:center}.canvas-wrapper{flex:1 1}.card-canvas{border-radius:4px;box-shadow:0 4px 20px #0003;position:relative;transition:box-shadow .2s}.card-canvas.drop-hover{box-shadow:0 4px 20px #3498db66}.canvas-size-label{color:#666;font-size:12px;margin-top:12px}.card-element{border:1px solid #0000;cursor:move;position:absolute;transition:border-color .2s}.card-element:hover{border-color:#3498db80}.card-element.selected{border-color:#3498db;z-index:10}.card-element.dragging{opacity:.3}.drag-preview-layer{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:1000}.drag-preview-element{background:#3498db1a;border:2px dashed #3498db;border-radius:4px;box-shadow:0 4px 12px #3498db4d;position:absolute}.drag-preview-element.palette-preview{align-items:center;background:#3498db26;display:flex;justify-content:center}.drag-preview-label{color:#3498db;font-size:12px;font-weight:500;white-space:nowrap}.drop-position-indicator{animation:pulse-indicator 1s ease-in-out infinite;background:#2ecc7140;border:2px solid #2ecc71;pointer-events:none;position:absolute;z-index:5}@keyframes pulse-indicator{0%,to{opacity:1}50%{opacity:.5}}.placeholder-content{align-items:center;background:#f0f0f0;border:1px dashed #999;border-radius:4px;color:#666;display:flex;font-size:12px;height:100%;justify-content:center;width:100%}.color-box-preview{border-radius:2px;height:100%;width:100%}.resize-handle{background:#3498db;border:2px solid #fff;border-radius:2px;height:10px;position:absolute;width:10px;z-index:20}.resize-handle.nw{cursor:nw-resize;left:-5px;top:-5px}.resize-handle.ne{cursor:ne-resize;right:-5px;top:-5px}.resize-handle.sw{bottom:-5px;cursor:sw-resize;left:-5px}.resize-handle.se{bottom:-5px;cursor:se-resize;right:-5px}.resize-handle.n{cursor:n-resize;top:-5px}.resize-handle.n,.resize-handle.s{left:50%;transform:translateX(-50%)}.resize-handle.s{bottom:-5px;cursor:s-resize}.resize-handle.e{cursor:e-resize;right:-5px}.resize-handle.e,.resize-handle.w{top:50%;transform:translateY(-50%)}.resize-handle.w{cursor:w-resize;left:-5px}.properties-panel{background:#fff;border-left:1px solid #ddd;flex-shrink:0;overflow-y:auto;padding:16px;width:250px}.properties-panel.empty{align-items:center;color:#666;display:flex;justify-content:center;text-align:center}.properties-panel h3{border-bottom:1px solid #eee;color:#2c3e50;font-size:16px;margin:0 0 16px;padding-bottom:12px}.property-group{margin-bottom:16px}.property-group>label{color:#666;display:block;font-size:12px;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.property-group input[type=number],.property-group input[type=text],.property-group select{border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-size:14px;padding:8px 10px;width:100%}.property-group input[type=color]{border:1px solid #ddd;border-radius:4px;cursor:pointer;height:32px;width:40px}.property-row{align-items:center;display:flex;gap:8px}.property-row span{color:#666}.checkbox-label{align-items:center;color:#333;cursor:pointer;display:flex;font-size:13px;gap:6px}.checkbox-label input[type=checkbox]{height:16px;width:16px}.delete-element-btn{margin-top:20px;width:100%}.print-modal-compact{display:flex;flex-direction:column;max-height:85vh;max-width:650px;width:95%}.print-modal-compact .modal-body{display:flex;flex:1 1;flex-direction:column;gap:16px;overflow:hidden}.print-filters{flex-shrink:0}.filter-header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.filter-add-wrapper{position:relative}.btn-add-filter{background:#4caf50;border:none;color:#fff}.btn-add-filter:hover{background:#45a049}.filter-menu{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px #00000026;left:0;margin-top:4px;max-height:300px;min-width:180px;overflow-y:auto;position:absolute;top:100%;z-index:100}.filter-menu-item{background:none;border:none;color:#333;cursor:pointer;display:block;font-size:14px;padding:10px 14px;text-align:left;transition:background .2s;width:100%}.filter-menu-item:hover{background:#f5f5f5}.filter-menu-item:first-child{border-radius:8px 8px 0 0}.filter-menu-item:last-child{border-radius:0 0 8px 8px}.btn-link{background:none;border:none;color:#666;cursor:pointer;padding:4px 8px;text-decoration:underline}.btn-link:hover{color:#333}.active-filters{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.filter-chip{align-items:center;background:#f0f4f8;border:1px solid #e0e4e8;border-radius:6px;display:flex;gap:8px;padding:8px 12px}.filter-chip-label{color:#555;font-size:13px;font-weight:500;white-space:nowrap}.filter-input{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:13px;min-width:100px;padding:6px 10px}.filter-input:focus{border-color:#3498db;outline:none}.range-inputs{align-items:center;display:flex;flex:1 1;gap:8px}.range-inputs .filter-input{flex:1 1;min-width:80px}.range-separator{color:#666;font-size:12px}.filter-chip-remove{background:none;border:none;color:#999;cursor:pointer;font-size:18px;line-height:1;padding:0 4px}.filter-chip-remove:hover{color:#e74c3c}.filter-actions{align-items:center;background:#f8f9fa;border-radius:6px;display:flex;justify-content:space-between;padding:10px 14px}.filter-count{color:#666;font-size:13px}.filter-buttons{display:flex;gap:8px}.rabbit-list-container{background:#fff;border:1px solid #eee;border-radius:8px;flex:1 1;overflow:hidden}.rabbit-list{max-height:350px;overflow-y:auto;padding:4px}.no-results{color:#666;font-size:14px;padding:40px 20px;text-align:center}.rabbit-checkbox{align-items:center;border:1px solid #0000;border-radius:6px;cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:background .2s}.rabbit-checkbox:hover{background:#f5f5f5}.rabbit-checkbox.selected{background:#e8f5e9;border-color:#4caf50}.rabbit-checkbox input{flex-shrink:0;height:18px;width:18px}.rabbit-name{color:#333;flex:1 1;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rabbit-breed{color:#888;flex-shrink:0;font-size:12px}.rabbit-gender{background:#f0f0f0;color:#666;padding:2px 6px}.cage-badge,.rabbit-gender{border-radius:4px;flex-shrink:0;font-size:11px}.cage-badge{background:#e3f2fd;color:#1976d2;font-weight:500;padding:2px 8px}.print-notice{background:#fff3cd;border-radius:6px;color:#856404;flex-shrink:0;font-size:13px;padding:10px 14px;text-align:center}@media (max-width:1024px){.designer-body{flex-direction:column}.palette-panel{border-bottom:1px solid #ddd;border-right:none;display:flex;gap:8px;max-height:150px;overflow-x:auto;padding:12px;width:100%}.palette-panel h3{display:none}.palette-section{display:flex;gap:8px;margin-bottom:0}.palette-section h4{display:none}.palette-item{margin-bottom:0;white-space:nowrap}.properties-panel{border-left:none;border-top:1px solid #ddd;max-height:200px;width:100%}}@media (max-width:768px){.cage-cards-header,.designer-header{align-items:flex-start;flex-direction:column;gap:12px}.designer-controls{flex-wrap:wrap;width:100%}.template-row{flex-wrap:wrap;gap:12px}.template-row-preview{height:40px;width:50px}.template-row-info{flex-basis:calc(100% - 80px);flex-grow:1;flex-shrink:1}.template-row-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.filter-chip{flex-wrap:wrap}.range-inputs{width:100%}.filter-actions{align-items:stretch;flex-direction:column;gap:8px}.filter-buttons{justify-content:stretch}.filter-buttons .btn{flex:1 1}.rabbit-list{max-height:250px}}.rabbit-page{margin:0 auto;max-width:800px;padding:20px}.loading-container{align-items:center;color:#666;display:flex;flex-direction:column;justify-content:center;min-height:300px}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e0e0e0;border-radius:50%;border-top-color:#4a90a4;height:40px;margin-bottom:16px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.error-container{flex-direction:column;min-height:300px;padding:40px;text-align:center}.error-container,.error-icon{align-items:center;display:flex;justify-content:center}.error-icon{background:#dc3545;border-radius:50%;color:#fff;font-size:36px;font-weight:700;height:60px;margin-bottom:20px;width:60px}.error-container h2{color:#333;margin-bottom:10px}.error-container p{color:#666;margin-bottom:20px}.back-button{background:#4a90a4;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;padding:12px 24px;transition:background .2s}.back-button:hover{background:#3d7a8c}.rabbit-page-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.back-nav-button{background:none;border:1px solid #ddd;border-radius:6px;color:#666;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s}.back-nav-button:hover{background:#f5f5f5;border-color:#ccc}.rabbit-page-header h1{color:#333;flex:1 1;margin:0}.status-badge{border-radius:20px;font-size:14px;font-weight:500;padding:6px 14px;text-transform:capitalize}.status-alive{background:#d4edda;color:#155724}.status-sold{background:#fff3cd;color:#856404}.status-deceased{background:#f8d7da;color:#721c24}.status-retired{background:#e2e3e5;color:#383d41}.rabbit-page-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.rabbit-photo-section{background:#f5f5f5;display:flex;justify-content:center;max-height:400px;overflow:hidden;width:100%}.rabbit-photo-large{height:auto;max-height:400px;object-fit:cover;width:100%}.info-section{border-bottom:1px solid #eee;padding:24px}.info-section:last-of-type{border-bottom:none}.info-section h2{color:#333;font-size:18px;font-weight:600;margin:0 0 16px}.info-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.info-item{display:flex;flex-direction:column;gap:4px}.info-item label{color:#888;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.info-item span{color:#333;font-size:15px}.gc-number{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:12px;margin-bottom:16px;padding:12px 16px}.gc-label{color:#666;font-size:14px}.gc-value{color:#4a90a4;font-size:18px;font-weight:600}.accolades-list h3{color:#666;font-size:14px;margin:0 0 12px}.accolade-item{align-items:center;border-bottom:1px solid #eee;display:flex;gap:12px;padding:8px 0}.accolade-item:last-child{border-bottom:none}.accolade-type{color:#333;font-weight:500}.accolade-show{color:#666}.accolade-date{color:#888;font-size:13px;margin-left:auto}.rabbit-notes{color:#555;line-height:1.6;margin:0;white-space:pre-wrap}.rabbit-page-actions{background:#f8f9fa;display:flex;flex-wrap:wrap;gap:12px;padding:24px}.action-button{background:#4a90a4;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:background .2s}.action-button:hover{background:#3d7a8c}.action-button.secondary{background:#fff;border:1px solid #4a90a4;color:#4a90a4}.action-button.secondary:hover{background:#f0f7fa}@media (max-width:600px){.rabbit-page{padding:12px 12px 100px}.rabbit-page-header{align-items:flex-start;flex-direction:column}.rabbit-page-header h1{font-size:24px}.info-grid{grid-template-columns:1fr 1fr}.info-section{padding:16px}.rabbit-page-actions{flex-direction:column}.action-button{text-align:center;width:100%}}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:600px;overflow-y:auto;padding:3rem;width:100%}.login-card h1{color:#2c3e50;font-size:1.8rem;margin-bottom:.5rem;text-align:center}.login-card h2{color:#666;font-size:1.3rem;font-weight:400;margin-bottom:2rem;text-align:center}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24}.error-message,.success-message{margin-bottom:1.5rem;padding:1rem}.success-message{background:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724}.verification-notice{background:#fff3cd;border:1px solid #ffeeba;border-radius:6px;color:#856404;margin-bottom:1.5rem;padding:1rem}.verification-notice p{margin:0 0 1rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.form-row.three-col{grid-template-columns:2fr 1fr 1fr}.form-group-small{min-width:0}.btn-block{font-size:1.1rem;margin-top:1rem;padding:.75rem;width:100%}.toggle-mode{border-top:1px solid #eee;margin-top:1.5rem;padding-top:1.5rem;text-align:center}.toggle-mode p{color:#666;margin:0}.link-button{background:none;border:none;color:#3498db;cursor:pointer;font-size:inherit;padding:0;text-decoration:underline}.link-button:hover{color:#2980b9}.link-button:disabled{cursor:not-allowed;opacity:.6}.forgot-password-link{margin-top:1rem;text-align:center}.turnstile-container{margin:1rem 0}.turnstile-container>div{width:100%!important}.turnstile-container iframe{max-width:100%!important;width:100%!important}@media (max-width:768px){.login-card{padding:2rem}.login-card h1{font-size:1.5rem}.login-card h2{font-size:1.1rem}}
/*# sourceMappingURL=main.1183426c.css.map*/