:root{--ios-red:#ff3b30;--ios-green:#34c759;--ios-blue:#007aff;--ios-orange:#ff9500;--ios-purple:#af52de;--ios-pink:#ff2d92;--ios-yellow:#fc0;--ios-gray:#8e8e93;--ios-light-gray:#f2f2f7;--ios-dark-gray:#1c1c1e;--ios-background:#f2f2f7;--ios-card:#fff;--ios-text:#000;--ios-text-secondary:#8e8e93;--ios-border:#c6c6c8;--ios-shadow:0 1px 3px rgba(0,0,0,.1);--ios-shadow-large:0 4px 12px rgba(0,0,0,.15);--ios-blur:blur(20px);--ios-primary:#007aff;--ios-secondary:#5856d6;--ios-success:#34c759;--ios-warning:#ff9500;--ios-danger:#ff3b30;--ios-info:#5ac8fa;--christmas-red:#ff3b30;--christmas-green:#34c759;--christmas-gold:#fc0;--border-light:#e9ecef}.profile-picture-placeholder{:root{--ios-red:#ff3b30;--ios-green:#34c759;--ios-blue:#007aff;--ios-orange:#ff9500;--ios-purple:#af52de;--ios-pink:#ff2d92;--ios-yellow:#fc0;--ios-gray:#8e8e93;--ios-light-gray:#f2f2f7;--ios-dark-gray:#1c1c1e;--ios-background:#f2f2f7;--ios-card:#fff;--ios-text:#000;--ios-text-secondary:#8e8e93;--ios-border:#c6c6c8;--ios-shadow:0 1px 3px rgba(0,0,0,.1);--ios-shadow-large:0 4px 12px rgba(0,0,0,.15);--ios-blur:blur(20px);--ios-primary:#007aff;--ios-secondary:#5856d6;--ios-success:#00693E;--ios-warning:#ff9500;--ios-danger:#ff3b30;--ios-info:#5ac8fa;--christmas-red:#ff3b30;--christmas-green:#34c759;--christmas-gold:#fc0;--border-light:#e9ecef}}body{background:url(seba.jpg) no-repeat 50% fixed;background-size:cover;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0;min-height:100vh;padding:0;transition:all .3s ease}.background-overlay{backdrop-filter:blur(8px);background:rgba(0,0,0,.3);height:100%;left:0;position:fixed;top:0;width:100%;z-index:-1}.login-container{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:2rem}.login-card{backdrop-filter:var(--ios-blur);background:hsla(0,0%,100%,.95);border:1px solid hsla(0,0%,100%,.2);border-radius:20px;box-shadow:0 20px 40px rgba(0,0,0,.15);max-width:400px;overflow:hidden;position:relative;width:100%;z-index:1}.login-card:before{background:url(seba.jpg) no-repeat 50%;background-size:cover;border-radius:20px;bottom:0;content:"";left:0;opacity:.95;position:absolute;right:0;top:0;z-index:-1}.content-transition,.login-body,.login-header{transition:opacity .3s ease}.content-transition{opacity:0}.content-transition.loaded{opacity:1}.login-header{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:.5rem 1.25rem}.login-body,.login-header{background:transparent;position:relative}.login-body{backdrop-filter:blur(0);padding:1.25rem}.login-body:before{background:transparent;border-radius:0 0 20px 20px;bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:-1}.login-body h4{color:#fff;font-weight:600;position:relative;text-shadow:0 2px 8px rgba(0,0,0,.9),0 4px 16px rgba(0,0,0,.8);z-index:1}.login-body .text-center p,.login-body p{color:#fff!important;position:relative;text-shadow:0 2px 6px rgba(0,0,0,.9),0 3px 12px rgba(0,0,0,.8);z-index:1}.form-control{backdrop-filter:blur(3px);background:hsla(0,0%,100%,.95);border:2px solid var(--ios-border);border-radius:16px;box-sizing:border-box;font-family:inherit;font-size:.95rem;font-weight:500;max-width:100%;min-height:48px;padding:.875rem 1.25rem;transition:all .3s ease;width:100%}.form-control:focus{background:#fff;border-color:var(--ios-primary);box-shadow:0 0 0 4px rgba(0,122,255,.15);outline:none;transform:translateY(-1px)}.input-group{display:flex;flex-wrap:wrap;max-width:100%;overflow:hidden;width:100%}.input-group-text{align-items:center;background:var(--christmas-red);border:2px solid var(--christmas-red);border-radius:16px 0 0 16px;color:#fff!important;display:flex;font-weight:600;min-height:48px;overflow:hidden;padding:.875rem 1.25rem;text-overflow:ellipsis;white-space:nowrap}.input-group .form-control{border-left:none;border-radius:0 16px 16px 0}.input-group .form-control:focus{border-left:none}.modal-dialog{margin:1.75rem auto;max-width:90vw}.modal-content{backdrop-filter:blur(10px);border:none;border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.15);max-width:100%;overflow:hidden}.modal-header{border-bottom:1px solid var(--ios-border);border-radius:20px 20px 0 0;overflow:hidden;padding:1.5rem 2rem}.modal-body{max-width:100%;overflow-x:auto;padding:2rem}.modal-footer{border-radius:0 0 20px 20px;border-top:1px solid var(--ios-border);overflow:hidden;padding:1.5rem 2rem}.modal-title{color:var(--ios-text);font-size:1.25rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alert{border:none;border-radius:16px;box-shadow:0 4px 20px rgba(0,0,0,.08);font-weight:500;max-width:100%;overflow:hidden;padding:1rem 1.5rem;width:100%;word-wrap:break-word;overflow-wrap:break-word}.alert-success{background:rgba(52,199,89,.1);border-left:4px solid var(--ios-success);color:#00693E}.alert-danger{background:rgba(255,59,48,.1);border-left:4px solid var(--ios-danger);color:#e03535}.alert-warning{background:rgba(255,149,0,.1);border-left:4px solid #ff9500;color:#ff9500}.card{border:none;border-radius:20px;box-shadow:0 12px 40px rgba(0,0,0,.08)}.card,.list-group{max-width:100%;overflow:hidden;width:100%}.list-group{border-radius:16px}.list-group-item{border:none;border-bottom:1px solid var(--ios-border);padding:1rem 1.5rem;word-wrap:break-word;overflow-wrap:break-word}.list-group-item:last-child{border-bottom:none}.badge{border-radius:12px;font-size:.8rem;font-weight:600;padding:.5rem .75rem;text-overflow:ellipsis;white-space:nowrap}.badge,.present-item{max-width:100%;overflow:hidden}.present-item{background:#fafafa;border:1px solid #f0f0f0;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.04);margin-bottom:.75rem;padding:1.25rem 1rem;transition:all .3s ease;width:100%}.present-item:hover{background:#fff;border-color:var(--ios-primary);box-shadow:0 4px 16px rgba(0,122,255,.08)}.present-item .row{align-items:center;margin:0;width:100%}.present-item .col-md-2,.present-item .col-md-4{overflow:hidden;padding:0 .75rem}.present-item .form-check{display:flex;justify-content:center;margin:0}.present-item .form-check-input{cursor:pointer;height:1.2rem;margin:0;width:1.2rem}.present-title{color:var(--ios-text);font-size:1.1rem;font-weight:600;line-height:1.4;margin:0 0 .25rem;word-break:break-word}.btn-group-vertical{display:flex;flex-direction:column;gap:.25rem}.btn-group-vertical .btn{align-items:center;border-radius:8px;display:flex;font-size:.8rem;justify-content:center;min-width:40px;padding:.375rem .75rem}.btn-group-vertical .btn:first-child{border-radius:8px 8px 0 0}.btn-group-vertical .btn:last-child{border-radius:0 0 8px 8px}.btn-group-vertical .btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical .btn:only-child{border-radius:8px}.btn{align-items:center;border:none;border-radius:16px;display:inline-flex;font-size:.95rem;font-weight:600;gap:.5rem;justify-content:center;max-width:100%;min-height:48px;overflow:hidden;padding:.875rem 1.5rem;text-overflow:ellipsis;transition:all .3s ease;white-space:nowrap}.btn:hover{box-shadow:0 8px 25px rgba(0,0,0,.15);transform:translateY(-2px)}.btn-danger{background:var(--ios-danger);box-shadow:0 6px 20px rgba(255,59,48,.25);color:#fff}.btn-danger:hover{background:#e03535;box-shadow:0 10px 30px rgba(255,59,48,.35)}.btn-success{background:var(--ios-success);box-shadow:0 6px 20px rgba(16, 212, 65, 0.25);color:#fff}.btn-success:hover{background:#34c759;box-shadow:0 10px 30px rgba(52,199,89,.35)}.btn-outline-danger{background:transparent;border:2px solid var(--ios-danger);box-shadow:0 4px 15px rgba(255,59,48,.15);color:var(--ios-danger)}.btn-outline-danger:hover{background:var(--ios-danger);box-shadow:0 8px 25px rgba(255,59,48,.25);color:#fff}.progress{background:var(--ios-light-gray);border-radius:4px;height:8px;overflow:hidden}.progress-bar{border-radius:4px;transition:all .3s ease}.login-card .snowflake{animation:fall linear infinite;color:#fff;cursor:default;font-size:.8em;opacity:.6;pointer-events:none;position:absolute;text-shadow:0 0 3px hsla(0,0%,100%,.6);top:-100px;user-select:none;z-index:0}@keyframes fall{0%{opacity:.6;transform:translateY(-100px) rotate(0deg)}10%{opacity:.8}90%{opacity:.6}to{opacity:0;transform:translateY(400px) rotate(1turn)}}.login-card .snowflake:first-child{animation-delay:0s;animation-duration:20s;left:10%}.login-card .snowflake:nth-child(2){animation-delay:5s;animation-duration:25s;left:20%}.login-card .snowflake:nth-child(3){animation-delay:10s;animation-duration:30s;left:30%}.login-card .snowflake:nth-child(4){animation-delay:15s;animation-duration:22s;left:40%}.login-card .snowflake:nth-child(5){animation-delay:20s;animation-duration:28s;left:50%}.login-card .snowflake:nth-child(6){animation-delay:25s;animation-duration:24s;left:60%}.login-card .snowflake:nth-child(7){animation-delay:30s;animation-duration:32s;left:70%}.login-card .snowflake:nth-child(8){animation-delay:35s;animation-duration:20s;left:80%}.login-card .snowflake:nth-child(9){animation-delay:40s;animation-duration:26s;left:90%}.login-card .snowflake:nth-child(10){animation-delay:45s;animation-duration:30s;left:15%}.login-card .snowflake:nth-child(11){animation-delay:50s;animation-duration:22s;left:25%}.login-card .snowflake:nth-child(12){animation-delay:55s;animation-duration:28s;left:35%}.login-card .snowflake:nth-child(13){animation-delay:60s;animation-duration:24s;left:45%}.login-card .snowflake:nth-child(14){animation-delay:65s;animation-duration:32s;left:55%}.login-card .snowflake:nth-child(15){animation-delay:70s;animation-duration:20s;left:65%}.login-card .snowflake:nth-child(16){animation-delay:75s;animation-duration:26s;left:75%}.login-card .snowflake:nth-child(17){animation-delay:80s;animation-duration:30s;left:85%}.login-card .snowflake:nth-child(18){animation-delay:85s;animation-duration:22s;left:95%}.login-card .snowflake:nth-child(19){animation-delay:90s;animation-duration:28s;left:5%}.login-card .snowflake:nth-child(20){animation-delay:95s;animation-duration:24s;left:100%}.present-item{order:0;transition:all .5s ease-in-out}.present-item.checked{order:1;transition:all .5s ease-in-out}.btn,.form-control,.input-group,.login-body,.login-header{position:relative;z-index:2}.recipient-item{background:var(--ios-card);border:1px solid var(--ios-border);border-radius:16px;box-shadow:0 4px 20px rgba(0,0,0,.06);margin-bottom:1.5rem;max-width:100%;overflow:hidden;padding:1.5rem;transition:all .3s ease;width:100%}.recipient-item:hover{border-color:var(--ios-border);box-shadow:0 4px 20px rgba(0,0,0,.06);transform:none}.recipient-name{color:var(--ios-text);font-size:1.2rem}.recipient-item .btn-outline-primary{background:rgba(0,122,255,.05);border:2px solid var(--ios-primary);color:var(--ios-primary)}.recipient-item .btn-outline-primary:hover{background:var(--ios-primary);border-color:var(--ios-primary);color:#fff}.recipient-item .btn-outline-danger{background:rgba(255,59,48,.05);border:2px solid var(--ios-danger);color:var(--ios-danger)}.recipient-item .btn-outline-danger:hover{background:var(--ios-danger);border-color:var(--ios-danger);color:#fff}.recipient-item 
.btn-outline-success{    border: 2px solid var(--ios-success);
    color: var(--ios-success);
    background: rgba(52, 199, 89, 0.05);}
.recipient-item .btn-outline-success:hover{background:var(--ios-success);border-color:var(--ios-success);color:#fff}.recipient-item .btn-outline-warning{background:rgba(255,149,0,.05);border:2px solid #ff9500;color:#ff9500}.recipient-item .btn-outline-warning:hover{background:#ff9500;border-color:#ff9500;color:#fff}.recipient-item .progress{background:rgba(0,0,0,.1);border-radius:10px;overflow:hidden}.recipient-item .progress-bar{background:var(--ios-success);border-radius:10px;transition:width .3s ease}.recipient-item .badge{border-radius:12px;font-size:.75rem;font-weight:500;padding:.375rem .75rem}.recipient-item .badge.bg-success{background:rgba(52,199,89,.1)!important;border:1px solid var(--ios-success);color:var(--ios-success)!important}.recipient-item .alert{border:none;border-radius:12px;font-size:.85rem;margin-bottom:1rem;padding:.75rem 1rem}.recipient-item .alert-warning{background:rgba(255,149,0,.1);border-left:3px solid #ff9500;color:#ff9500}.presents-preview{margin-top:1rem}.presents-preview .present-item{background:rgba(0,0,0,.02);border:1px solid rgba(0,0,0,.05);border-radius:8px;margin-bottom:.5rem;padding:.75rem;transition:all .2s ease}.presents-preview .present-item:hover{background:rgba(0,0,0,.05);box-shadow:none;transform:none}.presents-preview .present-item.checked{background:rgba(52,199,89,.05);opacity:.6}@media (max-width:768px){.recipient-item{padding:1rem}.recipient-item .row{flex-direction:column;gap:1rem}.recipient-item .col-md-2,.recipient-item .col-md-4,.recipient-item .col-md-6{text-align:center;width:100%}.recipient-item .btn-group-vertical{flex-direction:row;gap:.5rem;justify-content:center}.recipient-item .btn-group-vertical .btn{flex:1;max-width:180px}.recipient-name{flex-wrap:wrap;justify-content:center}.profile-picture-wrapper{margin:0 auto}}.container{margin:0 auto;max-width:1200px;overflow-x:hidden;padding:0 1.5rem}.container.mt-4{margin-top:2rem!important}.form-check-input{border:2px solid var(--ios-border);border-radius:6px;cursor:pointer;height:1.2rem;transition:all .3s ease;width:1.2rem}.form-check-input:checked{background-color:var(--ios-primary)}.form-check-input:checked,.form-check-input:focus{border-color:var(--ios-primary);box-shadow:0 0 0 3px rgba(0,122,255,.15)}.spinner-border{border-width:.2rem;color:var(--ios-primary);height:2rem;width:2rem}.text-muted{color:var(--ios-text-secondary)!important;font-weight:500}a{color:var(--ios-primary);transition:all .3s ease}a,a:hover{text-decoration:none}a:hover{color:#0056b3}.profile-picture-wrapper{border-radius:50%;box-shadow:0 4px 15px rgba(0,0,0,.1);overflow:hidden;transition:all .3s ease}.profile-picture-wrapper:hover{box-shadow:0 8px 25px rgba(0,0,0,.15);transform:scale(1.05)}.profile-picture-wrapper img{border-radius:50%;height:100%;width:100%}.profile-picture-wrapper.identified,.profile-picture-wrapper.identified img{border:none!important;box-shadow:none!important}*{box-sizing:border-box}.row{margin:0;width:100%}.col-md-2,.col-md-4,.col-md-6,.col-md-8{overflow:hidden;padding:0 .75rem}.main-card{backdrop-filter:var(--ios-blur);background:hsla(0,0%,100%,.95);border:none;border:1px solid hsla(0,0%,100%,.3);border-radius:20px;box-shadow:0 12px 40px rgba(0,0,0,.08);margin-bottom:2rem;max-width:100%;overflow:hidden;transition:all .3s ease;width:100%}.main-card:hover{box-shadow:0 16px 50px rgba(0,0,0,.12);transform:translateY(-2px)}.main-card .card-header{align-items:center;backdrop-filter:var(--ios-blur);background:var(--christmas-red);border-bottom:1px solid var(--ios-border);border-radius:20px 20px 0 0;display:flex;min-height:56px;overflow:hidden;padding:.75rem 1.5rem;width:100%}.main-card .card-body{overflow-x:auto;padding:2rem;width:100%}.navbar{backdrop-filter:var(--ios-blur);background:hsla(0,0%,100%,.95);border-bottom:1px solid hsla(0,0%,100%,.2);box-shadow:0 4px 20px rgba(0,0,0,.08);overflow:hidden;padding:1rem 0;width:100%}.navbar-brand{color:var(--christmas-red)!important;font-size:1.4rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-label{color:var(--ios-text);display:block;font-size:.95rem;margin-bottom:.75rem}.btn-login,.form-label{font-weight:600;width:100%}.btn-login{backdrop-filter:blur(3px);background:var(--christmas-red);border:none;border-radius:12px;box-shadow:0 4px 12px rgba(255,59,48,.3);color:#fff;font-size:1rem;margin-top:1rem;padding:1rem 2rem;transition:all .2s ease}.btn-login:hover{background:#d70015;box-shadow:0 6px 20px rgba(255,59,48,.4);color:#fff!important;transform:translateY(-2px)}.btn-login:active{transform:translateY(0)}.btn-link{border-radius:8px;color:#fff;font-size:.9rem;font-weight:600;margin-top:1rem;padding:.5rem 1rem;position:relative;text-decoration:none;text-shadow:0 1px 3px rgba(0,0,0,.8);transition:all .2s ease;z-index:1}.btn-link:hover{background:rgba(255,59,48,.2);color:#fff!important;text-decoration:none;text-shadow:0 1px 3px rgba(0,0,0,.9)}.login-card .fa-gift{color:var(--christmas-red);font-size:2rem;margin-bottom:.75rem;text-shadow:0 2px 4px rgba(0,0,0,.1)}.input-group-text i{color:#fff!important}.recipient-item .btn-group-vertical{display:flex;flex-direction:column;gap:.5rem;max-width:100%;width:100%}.recipient-item .btn-group-vertical .btn{align-items:center;border-radius:12px;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;justify-content:center;min-height:40px;overflow:hidden;padding:.5rem 1rem;text-overflow:ellipsis;transition:all .3s ease;white-space:nowrap}.recipient-item .btn-group-vertical .btn:hover{box-shadow:0 4px 12px rgba(0,0,0,.15);transform:translateY(-1px)}.recipient-item .btn-group-vertical .btn:first-child,.recipient-item .btn-group-vertical .btn:last-child,.recipient-item .btn-group-vertical .btn:only-child{border-radius:12px}.recipient-item .btn-outline-success.btn-sm,.recipient-item .btn-outline-warning.btn-sm{align-items:center;border-radius:8px;display:inline-flex;font-size:.8rem;font-weight:500;gap:.25rem;justify-content:center;min-height:32px;overflow:hidden;padding:.375rem .75rem;text-overflow:ellipsis;transition:all .3s ease;white-space:nowrap}.recipient-item .btn-outline-success.btn-sm:hover,.recipient-item .btn-outline-warning.btn-sm:hover{box-shadow:0 4px 12px rgba(0,0,0,.15);transform:translateY(-1px)}.recipient-item .mb-3 .btn{display:block;margin:0 auto;max-width:200px}@media (max-width:768px){.recipient-item .mb-3 .btn{max-width:100%;width:100%}}.recipient-item .btn-group-vertical>.btn{border-radius:12px!important;margin-bottom:.5rem}.recipient-item .btn-group-vertical>.btn:first-child{border-radius:12px!important}.recipient-item .btn-group-vertical>.btn:last-child,.recipient-item .btn-group-vertical>.btn:only-child{border-radius:12px!important;margin-bottom:0}.recipient-item .btn-group-vertical>.btn:not(:last-child){margin-bottom:.5rem}.recipient-item .d-flex.align-items-center .btn{align-items:center;border-radius:8px;display:inline-flex;flex-shrink:0;font-size:.8rem;font-weight:500;gap:.25rem;justify-content:center;min-height:32px;overflow:hidden;padding:.375rem .75rem;text-overflow:ellipsis;transition:all .3s ease;white-space:nowrap}.recipient-item .d-flex.align-items-center .btn:hover{box-shadow:0 4px 12px rgba(0,0,0,.15);transform:translateY(-1px)}.recipient-item .d-flex.align-items-center{flex-wrap:wrap;gap:.5rem}.recipient-item .recipient-name{flex:1;min-width:0}@media (max-width:768px){.recipient-item .d-flex.align-items-center{align-items:flex-start;flex-direction:column;gap:.75rem}.recipient-item .d-flex.align-items-center .btn{align-self:flex-start}.recipient-item .btn-group-vertical{width:100%}.recipient-item .btn-group-vertical .btn{justify-content:center;width:100%}}.present-item .btn-group-vertical{display:flex;flex-direction:column;gap:.25rem}.present-item .btn-group-vertical .btn{border-radius:8px;font-size:.8rem;padding:.375rem .75rem;transition:all .3s ease}.present-item .btn-group-vertical .btn:hover{box-shadow:0 4px 12px rgba(0,0,0,.15);transform:translateY(-1px)}.present-item .btn-group-vertical .btn:first-child{border-radius:8px 8px 0 0}.present-item .btn-group-vertical .btn:last-child{border-radius:0 0 8px 8px}.present-item .btn-group-vertical .btn:not(:first-child):not(:last-child){border-radius:0}.present-item .btn-group-vertical .btn:only-child{border-radius:8px}.present-item.checked{background:hsla(0,0%,50%,.1);border-color:hsla(0,0%,50%,.3);transition:all .5s ease}.present-item.checked .present-title{color:var(--ios-text-secondary)}.present-item{transition:all .5s ease}.present-item.checking{opacity:.8;transition:all .5s ease-in-out}.btn-outline-primary{background-color:transparent;border:2px solid #0d6efd;color:#0d6efd;transition:all .3s ease}.btn-outline-primary:hover{background-color:#0d6efd;border-color:#0d6efd;color:#fff}.btn-outline-primary:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.present-item .btn-outline-danger,.present-item .btn-outline-primary{border-width:2px;font-weight:500;transition:all .3s ease}.present-item .btn-outline-danger:hover,.present-item .btn-outline-primary:hover{box-shadow:0 2px 4px rgba(0,0,0,.1);transform:translateY(-1px)}.present-item .col-md-2.text-end{align-items:center;display:flex;justify-content:flex-end}.present-item .btn-group-vertical{margin-left:auto}.present-item .btn-group-vertical .btn{align-items:center;display:flex;height:36px;justify-content:center;margin-bottom:.25rem;min-width:40px}.present-item .btn-group-vertical .btn:last-child{margin-bottom:0}@media (max-width:768px){.navbar-nav{align-items:center;display:flex;gap:.5rem;justify-content:space-between;width:100%}.navbar-nav .btn{flex:1;font-size:.9rem;margin:0 .25rem;padding:.5rem .75rem;white-space:nowrap}.navbar-brand{font-size:1.1rem;margin-bottom:.5rem}.navbar .container{align-items:stretch;flex-direction:column}}@media (max-width:576px){.container{padding:0 .75rem}.main-card .card-body{padding:1rem}.main-card .card-header{padding:.5rem .75rem}.btn,.form-control{font-size:.9rem;padding:.75rem 1rem}}.navbar-nav .btn i{margin-right:.5rem}@media (max-width:576px){.navbar-brand{display:none}.navbar-nav{margin-top:0}}@media (max-width:768px){.col-md-2,.col-md-4{width:100%!important}.col-md-2{margin-bottom:1rem}.btn-group-vertical .btn{margin-bottom:.5rem;width:100%}.present-item .row{flex-direction:column}.present-item .col-md-2{margin-bottom:.5rem;width:100%!important}.present-item .text-end{text-align:center!important}.present-item .btn-group-vertical{flex-direction:row;gap:.5rem;justify-content:center}.present-item .btn-group-vertical .btn{margin-bottom:0}}.recipient-name{align-items:center;display:flex;font-size:1.1rem;font-weight:600;gap:.5rem;margin:0}@media (max-width:768px){.recipient-name{align-items:flex-start;flex-direction:column;font-size:1rem;gap:.25rem}}.recipients-page .main-card:not(.col-md-4){margin-left:0;margin-right:0;max-width:none;width:100%}.recipients-page .main-card .card-header .text-white,.recipients-page .main-card .card-header .text-white i{color:#fff!important}.recipients-page .compact-card{height:auto;min-height:auto}@media (max-width:575.98px){.recipients-page .compact-card .card-body{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:120px;padding:.75rem;text-align:center}.recipients-page .compact-card .btn-lg{font-size:.8rem;line-height:1.2;padding:.4rem .5rem}.recipients-page .compact-card .text-muted{font-size:.7rem}.recipients-page .action-btn .btn-text{display:none}.recipients-page .action-btn i{font-size:1.2rem;margin-right:0}.recipients-page .compact-card .btn-lg{align-items:center;border-radius:50%;display:flex;height:3rem;justify-content:center;margin:0 auto;padding:0;width:3rem}.recipients-page .row .col-4:nth-child(3) .compact-card .card-body{padding-bottom:1.5rem}.recipient-item .col-md-2{align-items:center;display:flex;justify-content:center;margin-bottom:1rem;text-align:center;width:100%}.recipient-item .profile-picture-wrapper{align-items:center;display:flex;justify-content:center;margin:0 auto}.recipient-item .btn-group-vertical{display:flex;flex-direction:row;gap:.5rem;justify-content:center;margin-top:1rem}.recipient-item .btn-group-vertical .btn{flex:1;max-width:180px}.recipient-item .d-flex.align-items-center{align-items:stretch;flex-direction:column;gap:.5rem}.recipient-item .recipient-name{margin-bottom:.5rem;text-align:center}.recipient-item .row{align-items:center;display:flex;flex-direction:column;text-align:center}.recipient-item .col-md-6{text-align:center;width:100%}.recipient-item .recipient-name{align-items:center;display:flex;gap:.5rem;justify-content:center}.recipient-item .recipient-name i.fas.fa-user{margin-right:0}}.recipients-page .container>.main-card{margin-left:0;margin-right:0;margin-top:.5rem;padding-left:0;padding-right:0}.recipients-page .row:first-child,.recipients-page .row:first-child .col-4,.recipients-page .row:first-child .compact-card{margin-bottom:0}.recipients-page .present-item .btn-sm{border-radius:.375rem;font-size:.75rem;padding:.25rem .5rem}.recipients-page .present-item .btn-outline-warning{border-color:#ffc107;color:#ffc107}.recipients-page .present-item .btn-outline-warning:hover{background-color:#ffc107;border-color:#ffc107;color:#000}.recipients-page .present-item .btn-success{background-color:#198754;border-color:#198754}.recipients-page .present-item .btn-success:hover{background-color:#34c759;border-color:#34c759}.recipients-page .present-item .btn-secondary{background-color:#6c757d;border-color:#6c757d;opacity:.6}.recipients-page .present-item{background-color:hsla(0,0%,100%,.05);border:1px solid var(--border-light);border-radius:.5rem;margin-bottom:.5rem;padding:.75rem}.recipients-page .present-item.checked{background-color:hsla(0,0%,100%,.02);opacity:.6}.recipients-page .present-item.checked .present-title{color:#6c757d;text-decoration:line-through}@media (max-width:575.98px){.recipients-page .present-item .d-flex.align-items-center.justify-content-between{align-items:stretch!important;flex-direction:column;gap:.5rem}.recipients-page .present-item .d-flex.align-items-center.justify-content-between>.d-flex.align-items-center:last-child{justify-content:flex-end;width:100%}.recipients-page .present-item .w-100.w-md-auto{width:100%!important}}@media (min-width:768px){.recipients-page .present-item .w-100.w-md-auto{width:auto!important}.recipients-page .present-item .d-flex.align-items-center.justify-content-between{align-items:center!important;flex-direction:row!important}}.present-item.reserved-by-other{background-color:#f8f9fa;border-left:3px solid #6c757d;opacity:.6}.present-item.reserved-by-other .present-title{color:#6c757d;text-decoration:line-through}.present-item.reserved-by-other .form-check-input{opacity:.5;pointer-events:none}.present-item.reserved-by-other .btn{opacity:.7}@media (max-width:768px){.present-item.reserved-by-other{opacity:.5}.present-item.reserved-by-other .present-title{font-size:.9rem}}.profile-picture-wrapper{display:inline-block;position:relative}.profile-picture-wrapper img{object-fit:cover;transition:all .3s ease}.profile-picture-wrapper .fas.fa-user,.profile-picture-wrapper img{border:3px solid var(--border-light);border-radius:50%!important;height:80px!important;width:80px!important}.profile-picture-wrapper .fas.fa-user{align-items:center!important;background:var(--border-light);color:var(--ios-text-secondary);display:flex!important;font-size:2rem;justify-content:center!important}.recipient-name .btn-outline-danger{align-items:center!important;background:var(--ios-danger);border:2px solid var(--ios-danger);border-radius:50%!important;color:#fff;display:inline-flex!important;height:28px!important;justify-content:center!important;margin-left:8px;padding:0!important;transition:all .3s ease;width:28px!important}.recipient-name .btn-outline-danger:hover{background:#d32f2f;border-color:#d32f2f;transform:scale(1.1)}.recipient-name .btn-outline-danger i{font-size:12px}@media (max-width:768px){.recipients-page .row .col-4{margin-bottom:1rem;width:100%!important}.recipients-page .row .col-4:nth-child(2),.recipients-page .row .col-4:nth-child(3){display:inline-block;width:50%!important}.recipients-page .compact-card .card-body{min-height:auto;padding:1rem .75rem}.recipients-page .action-btn{align-items:center;display:flex;font-size:1rem;gap:8px;height:60px;justify-content:center;width:100%}.recipients-page .action-btn .btn-text{display:none}.recipients-page .action-btn i{font-size:2rem;margin:0}.recipients-page .action-btn.btn-primary{background:linear-gradient(135deg,#007bff,#0056b3);border:2px solid #007bff;border-radius:12px;box-shadow:0 4px 12px rgba(0,123,255,.3);color:#fff;padding:1rem}.recipients-page .action-btn.btn-warning{background:linear-gradient(135deg,#ffc107,#e0a800);border:2px solid #ffc107;border-radius:12px;box-shadow:0 4px 12px rgba(255,193,7,.3);color:#212529;padding:1rem}.recipients-page .action-btn.btn-success{background:linear-gradient(135deg,#28a745,#1e7e34);border:2px solid #28a745;border-radius:12px;box-shadow:0 4px 12px rgba(40,167,69,.3);color:#fff;padding:1rem}}#selfIdentificationModal .modal-dialog{max-width:500px}#selfIdentificationModal .modal-content{border:none;border-radius:16px;box-shadow:var(--ios-shadow-large);overflow:hidden}#selfIdentificationModal .modal-header{background:linear-gradient(135deg,var(--ios-primary),var(--ios-secondary));border-bottom:none;color:#fff;padding:1.5rem}#selfIdentificationModal .modal-title{font-size:1.25rem;font-weight:600;margin:0}#selfIdentificationModal .modal-body{padding:2rem;text-align:center}#selfIdentificationModal .modal-body p{color:var(--ios-text);font-size:1.1rem;line-height:1.5;margin-bottom:1.5rem}#selfIdentificationModal .modal-footer{border-top:none;gap:12px;padding:1.5rem}#selfIdentificationModal .btn{border:none;border-radius:12px;font-weight:600;padding:12px 24px;transition:all .3s ease}#selfIdentificationModal .btn-secondary{background:var(--ios-light-gray);color:var(--ios-text)}#selfIdentificationModal .btn-secondary:hover{background:var(--ios-gray);transform:translateY(-1px)}#selfIdentificationModal .btn-warning{background:var(--ios-warning);color:#fff}#selfIdentificationModal .btn-warning:hover{background:#e68900;transform:translateY(-1px)}#selfIdentificationModal .btn-success{background:var(--ios-success);color:#fff}#selfIdentificationModal .btn-success:hover{background:#34c759;transform:translateY(-1px)}#recipientSelectionModal .modal-dialog{max-width:600px}#recipientSelectionModal .modal-content{border:none;border-radius:16px;box-shadow:var(--ios-shadow-large)}#recipientSelectionModal .modal-header{background:linear-gradient(135deg,var(--ios-success),var(--ios-primary));border-bottom:none;color:#fff;padding:1.5rem}#recipientSelectionModal .modal-title{font-size:1.25rem;font-weight:600}#recipientSelectionModal .modal-body{padding:2rem}#recipientSelectionModal .list-group-item{border:2px solid var(--ios-light-gray);border-radius:12px;margin-bottom:8px;padding:1rem;transition:all .3s ease}#recipientSelectionModal .list-group-item:hover{background:var(--ios-light-gray);border-color:var(--ios-primary);transform:translateY(-1px)}#recipientSelectionModal .list-group-item .btn{border:none;border-radius:8px;font-weight:600;padding:8px 16px}#recipientSelectionModal .input-group{border-radius:12px;box-shadow:var(--ios-shadow);overflow:hidden}#recipientSelectionModal .form-control{border:none;font-size:1rem;padding:12px 16px}#recipientSelectionModal .form-control:focus{border-color:var(--ios-primary);box-shadow:none}#recipientSelectionModal .btn-success{background:var(--ios-success);border:none;color:#fff;font-weight:600;padding:12px 20px}#recipientSelectionModal .btn-success:hover{background:#34c759;transform:translateY(-1px)}@media (max-width:768px){#recipientSelectionModal .modal-dialog,#selfIdentificationModal .modal-dialog{margin:1rem;max-width:calc(100% - 2rem)}#recipientSelectionModal .modal-body,#selfIdentificationModal .modal-body{padding:1.5rem}#recipientSelectionModal .modal-footer,#selfIdentificationModal .modal-footer{flex-direction:column;padding:1.5rem}#recipientSelectionModal .btn,#selfIdentificationModal .btn{margin-bottom:8px;width:100%}#recipientSelectionModal .list-group-item{flex-direction:column;gap:12px;text-align:center}#recipientSelectionModal .list-group-item .btn{width:100%}}.recipients-page .compact-card{border:none;box-shadow:var(--ios-shadow);cursor:pointer;transition:all .3s ease}.recipients-page .compact-card:hover{box-shadow:var(--ios-shadow-large);transform:translateY(-4px)}.recipients-page .compact-card .card-body{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:120px;padding:1.5rem}.recipients-page .action-btn{background:transparent;border:none;color:inherit;text-decoration:none;transition:all .3s ease;width:100%}.recipients-page .action-btn:hover{transform:scale(1.05)}.recipients-page .action-btn:focus{box-shadow:none;outline:none}.recipients-page .action-btn.btn-primary{background:linear-gradient(135deg,#007bff,#0056b3);border:2px solid #007bff;box-shadow:0 4px 12px rgba(0,123,255,.3);color:#fff}.recipients-page .action-btn.btn-warning{background:linear-gradient(135deg,#ffc107,#e0a800);border:2px solid #ffc107;box-shadow:0 4px 12px rgba(255,193,7,.3);color:#212529}.recipients-page .action-btn.btn-success{background:linear-gradient(135deg,#28a745,#1e7e34);border:2px solid #28a745;box-shadow:0 4px 12px rgba(40,167,69,.3);color:#fff}.recipients-page .action-btn:hover{box-shadow:0 6px 20px rgba(0,0,0,.2);transform:translateY(-2px)}.recipients-page .action-btn.btn-primary:hover{background:linear-gradient(135deg,#0056b3,#004085);border-color:#0056b3;box-shadow:0 6px 20px rgba(0,123,255,.4)}.recipients-page .action-btn.btn-warning:hover{background:linear-gradient(135deg,#e0a800,#d39e00);border-color:#e0a800;box-shadow:0 6px 20px rgba(255,193,7,.4)}.recipients-page .action-btn.btn-success:hover{background:linear-gradient(135deg,#1e7e34,#155724);border-color:#1e7e34;box-shadow:0 6px 20px rgba(40,167,69,.4)}@media (max-width:768px){.recipients-page .row:first-child .col-4:first-child{margin-bottom:1rem;width:100%}.recipients-page .row:first-child .col-4:not(:first-child){width:50%}.recipients-page .compact-card{display:flex;flex-direction:column;height:100%}.recipients-page .compact-card .card-body{display:flex;flex:1;flex-direction:column;justify-content:center}}.present-item.reserved-by-me{background-color:#fff3cd;border-left:4px solid #ffc107}.present-item.reserved-by-me .present-title{color:#856404}@keyframes smoothSlideUp{0%{opacity:1;transform:translateY(100%);z-index:2}80%{opacity:1;transform:translateY(0);z-index:2}to{opacity:1;transform:translateY(0);z-index:2}}@keyframes smoothSlideDown{0%{opacity:1;transform:translateY(-100%);z-index:2}80%{opacity:1;transform:translateY(0);z-index:2}to{opacity:1;transform:translateY(0);z-index:2}}@keyframes fadeOutCard{0%{opacity:1}80%{opacity:.3}to{opacity:1}}.present-item.smooth-slide-up{animation:smoothSlideUp .4s cubic-bezier(.4,0,.2,1)}.present-item.smooth-slide-down{animation:smoothSlideDown .4s cubic-bezier(.4,0,.2,1)}.present-item.fading{animation:fadeOutCard .4s cubic-bezier(.4,0,.2,1)}.present-item-modal{background-color:#f8f9fa;transition:all .3s ease}.present-item-modal:hover{background-color:#e9ecef;box-shadow:0 4px 8px rgba(0,0,0,.1);transform:translateY(-2px)}.present-item-modal.checked{background-color:#d4edda;border-color:#c3e6cb!important}.present-item-modal.checked h6{color:#6c757d}.present-item-modal .form-check-input:checked{background-color:#28a745;border-color:#28a745}.present-item-modal .card-header{font-weight:600}.present-item-modal .badge{font-size:.75rem}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.recipient-avatar img:hover{border-color:var(--ios-primary);transform:scale(1.05)}.profile-picture-placeholder{align-items:center!important;background:var(--border-light);border:3px solid var(--border-light);border-radius:50%!important;color:var(--ios-text-secondary);display:flex!important;font-size:2rem;height:80px!important;justify-content:center!important;transition:all .3s ease;width:80px!important}.profile-picture-placeholder:hover{background:var(--ios-gray);transform:scale(1.05)}.profile-picture-placeholder i{color:var(--ios-text-secondary)}.profile-picture-placeholder-large{align-items:center!important;background:var(--border-light);border:4px solid var(--border-light);border-radius:50%!important;color:var(--ios-text-secondary);display:flex!important;font-size:4rem;height:200px!important;justify-content:center!important;margin:0 auto;transition:all .3s ease;width:200px!important}.profile-picture-placeholder-large i{color:var(--ios-text-secondary)}.recipient-avatar{align-items:center;display:flex;justify-content:center}.recipient-avatar img{border:3px solid var(--border-light);border-radius:50%!important;height:80px!important;object-fit:cover;transition:all .3s ease;width:80px!important}#profileModalImage{max-height:80vh!important;max-width:80vw}#profileModalImage,.profile-preview-image{display:block;margin-left:auto;margin-right:auto;width:auto}.profile-preview-image{height:auto;max-height:90%;max-width:90%}.present-item,.presents-list{position:relative}.present-item{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;margin-bottom:8px;opacity:1;padding:12px;transform:translateY(0);transition:all .6s ease-out}.present-item.checked{background:rgba(40,167,69,.1);border-color:rgba(40,167,69,.3);opacity:.7}.present-item.appearing{animation:slideInFromTop .6s ease-out}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}@keyframes slideOutToTop{0%{height:auto;opacity:1;transform:translateY(0)}to{height:0;opacity:0;transform:translateY(-50px)}}.present-item .form-check-input{transform:scale(1);transition:all .3s ease}.present-item .form-check-input:checked{animation:checkPulse .3s ease-out;transform:scale(1.1)}@keyframes checkPulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1.1)}}.present-item.checked .present-title{color:hsla(0,0%,100%,.6);text-decoration:line-through;transition:all .3s ease}.presents-list-container{overflow:hidden;position:relative}.present-item:first-child{transition-delay:0s}.present-item:nth-child(2){transition-delay:50ms}.present-item:nth-child(3){transition-delay:.1s}.present-item:nth-child(4){transition-delay:.15s}.present-item:nth-child(5){transition-delay:.2s}.present-item:hover{box-shadow:0 4px 12px rgba(0,0,0,.15);transform:translateY(-2px);transition:all .3s ease}.present-item.checked:hover{transform:translateY(-1px)}.present-item.updating{opacity:.5;pointer-events:none}.present-item.updating .form-check-input{animation:spin 1s linear infinite}.present-item.animating .form-check-input{pointer-events:none}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.present-item-modal{position:relative;transition:all .6s ease-out}.present-item-modal.updating{opacity:.5;pointer-events:none}.present-item-modal.updating .form-check-input{animation:spin 1s linear infinite}.present-item-modal.animating .form-check-input{pointer-events:none}.present-item-modal.checked{background-color:rgba(40,167,69,.1);border-color:rgba(40,167,69,.3)}.present-item-modal.checked h6{color:rgba(0,0,0,.6);text-decoration:line-through}.present-item-modal .form-check-input{transform:scale(1);transition:all .3s ease}.present-item-modal .form-check-input:checked{animation:checkPulse .3s ease-out;transform:scale(1.1)}.present-item.smooth-slide-up{animation:smoothSlideUp .8s cubic-bezier(.4,0,.2,1);z-index:2}.present-item.smooth-slide-down{animation:smoothSlideDown .8s cubic-bezier(.4,0,.2,1);z-index:2}.present-item.fading{animation:fadeOutCard .8s cubic-bezier(.4,0,.2,1)}.present-item-modal.animating,.present-item.animating{pointer-events:none}

/* Add at the end of the file for mobile stacking of present-item blocks */
@media (max-width: 576px) {
  .present-item .d-flex.align-items-start.flex-wrap.flex-md-nowrap.w-100.gap-2 {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0.5rem !important;
  }
  .present-item .flex-shrink-0,
  .present-item .flex-grow-1,
  .present-item .d-flex.flex-column.align-items-end.justify-content-between.ms-2 {
    min-width: 0 !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .present-item .present-title-block,
  .present-item .present-comments {
    width: 100%;
  }
}

/* Add at the end of the file for reservation button min width */
.present-item .btn-outline-warning,
.present-item .btn-outline-warning.btn-sm {
  min-width: 80px !important;
}

/* Add at the end of the file for cancel reservation button min width */
.present-item .btn-danger,
.present-item .btn-danger.btn-sm {
  min-width: 80px !important;
}