.vacation-planner-container{max-width:1280px;margin:0 auto;padding:1.25rem;color:var(--color-text-primary)}.planner-header{text-align:center;margin-bottom:1.25rem}.planner-header h1{font-size:2rem;font-weight:700;margin-bottom:.5rem;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.planner-header p{color:var(--color-text-secondary);font-size:1.1rem}.optimization-section{background:var(--color-bg-secondary);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.optimization-section h2{font-size:1.5rem;font-weight:700;margin-bottom:.5rem;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.optimization-subtitle{color:var(--color-text-secondary);margin-bottom:1rem}.optimization-card{background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:10px;padding:1rem;margin-bottom:1.5rem}.optimization-result{display:flex;justify-content:space-between;align-items:center}.optimization-label{color:var(--color-text-secondary);font-size:.9rem}.optimization-value{color:var(--color-text-primary);font-weight:700;font-size:1.2rem}.prefill-section h3{font-size:1.1rem;font-weight:600;margin-bottom:.75rem;color:var(--color-text-primary)}.prefill-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.prefill-btn{padding:.75rem 1rem;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-primary);cursor:pointer;transition:all .2s ease;font-weight:500}.prefill-btn:hover,.prefill-btn.active{background:var(--gradient-primary);color:#000;border-color:var(--color-primary)}.summary-bar{display:none}@media (max-width:1024px){.summary-bar{display:grid;background:var(--color-bg-secondary);border-radius:12px;padding:1rem;margin-bottom:1rem;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}.planner-content{display:grid;grid-template-columns:300px 1fr;gap:1rem;align-items:start}.planner-controls{background:var(--color-bg-secondary);border-radius:12px;padding:.75rem;height:fit-content;position:sticky;top:100px}.control-group{margin-bottom:1.1rem}.control-group label{display:block;color:var(--color-text-primary);font-weight:600;margin-bottom:.35rem;font-size:.8rem}.control-input{width:100%;padding:.4rem .5rem;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-primary);font-size:.8rem}.control-input:focus{outline:0;border-color:var(--color-primary)}.working-days-toggle{display:flex;gap:.35rem}.day-toggle{flex:1;padding:.4rem .45rem;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease}.day-toggle[data-active=true]{background:var(--gradient-primary);color:#000;border-color:var(--color-primary)}.working-days-toggle.small .day-toggle{padding:.3rem .4rem;font-size:.75rem}.planner-main{display:flex;flex-direction:column;gap:1.2rem}.calendar-container{display:grid;gap:.45rem;grid-template-columns:repeat(4,1fr)}.calendar-month{background:var(--color-bg-secondary);border-radius:6px;padding:1rem;font-size:.92em}.month-header{font-size:.8rem;font-weight:700;margin-bottom:.35rem;color:var(--color-text-primary)}.week-days-header{display:grid;grid-template-columns:repeat(7,1fr);gap:.12rem;margin-bottom:.15rem}.day-header{text-align:center;padding:.18rem;color:var(--color-text-secondary);font-weight:600;font-size:.6rem}.days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.14rem}.day-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:5px;cursor:pointer;position:relative;transition:all .2s ease;background:var(--color-bg-tertiary);border:1px solid var(--color-border)}.day-cell.empty{background:0 0;border:0;cursor:default}.day-cell.working-day{background:#ffffff0d}.day-cell.weekend{background:#ffffff05;opacity:.6}.day-cell.holiday{background:#f003;border-color:#f006}.day-cell.vacation{background:var(--gradient-primary);border-color:var(--color-primary)}.day-cell.auto-vacation{background:var(--gradient-primary)!important;border-color:var(--color-primary)!important;filter:brightness(.9);cursor:help!important}.day-cell.excess{background:#ffffff14;border-color:#ffffff26;opacity:.7}.day-cell.today{outline:2px solid var(--color-primary);outline-offset:-2px}.day-cell.disabled{background:#ffffff0f;border-color:#ffffff14;opacity:.5;cursor:not-allowed}.day-cell:hover{transform:scale(1.12);z-index:10}.day-number{color:var(--color-text-primary);font-weight:600;font-size:.65rem}.day-cell.weekend .day-number{color:var(--color-text-secondary)}.holiday-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:6px;padding:.5rem;font-size:.75rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;margin-bottom:.5rem}.day-cell:hover .holiday-tooltip{opacity:1}.summary-panel{background:var(--color-bg-secondary);border-radius:12px;padding:1.5rem;position:sticky;top:90px}.summary-panel.compact{background:var(--color-bg-secondary);border-radius:10px;padding:.75rem;position:sticky;top:86px;height:fit-content}.summary-panel.compact h2{font-size:1rem;margin-bottom:.75rem}.summary-panel.compact .summary-item{padding:.5rem 0}.summary-panel.compact .summary-value{font-size:1rem}.summary-panel.compact .summary-label{font-size:.8rem}.info-section{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--color-border)}.info-section h3{font-size:.95rem;margin-bottom:.5rem;color:var(--color-text-primary)}.info-section details{margin-bottom:.35rem;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:8px;padding:.5rem .6rem}.info-section summary{cursor:pointer;font-weight:600;color:var(--color-text-primary)}.faq-section{margin-top:2rem;padding:0;max-width:1200px;margin-left:auto;margin-right:auto;box-sizing:border-box;overflow-x:hidden}.faq-section h2{font-size:1.5rem;margin-bottom:.5rem;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.faq-intro{color:var(--color-text-secondary);margin-bottom:.75rem}.faq-items.modern{display:flex;flex-direction:column;gap:.5rem;width:100%;max-width:100%;box-sizing:border-box}.faq-item{background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:12px;overflow:hidden;width:100%;max-width:100%;box-sizing:border-box}.faq-item summary{cursor:pointer;font-weight:600;padding:.9rem 1rem;list-style:none;display:flex;align-items:center;justify-content:space-between;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.faq-item summary::-webkit-details-marker{display:none}.faq-item .faq-q{flex:1;min-width:0;overflow-wrap:break-word;word-wrap:break-word}.faq-item .chevron{transition:transform .2s ease;opacity:.7;flex:0 0 1em;text-align:center;flex-shrink:0}.faq-item[open] .chevron{transform:rotate(180deg)}.faq-answer{padding:0 1rem 1rem;color:var(--color-text-secondary);line-height:1.6;box-sizing:border-box;overflow-wrap:break-word;word-wrap:break-word;max-width:100%}.faq-updated{margin-top:.75rem;font-size:.85rem;color:var(--color-text-secondary);opacity:.8;text-align:right}.summary-item{display:flex;justify-content:space-between;padding:1rem 0;border-bottom:1px solid var(--color-border)}.summary-item:last-of-type{border-bottom:none}.summary-label{color:var(--color-text-secondary);font-size:.9rem}.summary-value{color:var(--color-text-primary);font-weight:700;font-size:1.2rem}.legend-section{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--color-border)}.legend-section h3{font-size:1.1rem;font-weight:600;margin-bottom:1rem;color:var(--color-text-primary)}.legend-item{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;color:var(--color-text-secondary)}.legend-color{width:24px;height:24px;border-radius:6px;border:1px solid var(--color-border)}.legend-color.working-day{background:#ffffff0d}.legend-color.weekend{background:#ffffff05;opacity:.6}.legend-color.holiday{background:#f003;border-color:#f006}.legend-color.vacation{background:var(--gradient-primary);border-color:var(--color-primary)}.settings-toggle-btn{display:none;width:100%;padding:.75rem 1rem;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:12px;color:var(--color-text-primary);font-weight:600;margin-bottom:1rem;align-items:center;justify-content:space-between;cursor:pointer;text-align:left;transition:background .2s}.settings-toggle-btn:hover{background:var(--color-bg-tertiary)}.settings-toggle-btn .icon{margin-right:.5rem}.settings-toggle-btn .chevron{transition:transform .2s;margin-left:auto}.settings-toggle-btn.active .chevron{transform:rotate(180deg)}@media (max-width:1024px){.planner-content{grid-template-columns:1fr}.planner-controls{position:static;display:none}.planner-controls.visible{display:block;animation:slideDown .3s ease-out}.settings-toggle-btn{display:flex}.calendar-container{grid-template-columns:repeat(2,1fr)}.summary-panel.compact{display:none}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.vacation-planner-container{padding:.75rem}.planner-header{text-align:left;padding:0 .5rem}.planner-header h1{font-size:1.5rem}.planner-header p{font-size:.95rem}.optimization-section{padding:1rem;margin-left:.5rem;margin-right:.5rem}.optimization-section h2{font-size:1.25rem}.optimization-subtitle{font-size:.9rem}.optimization-card{padding:.75rem}.optimization-label{font-size:.8rem}.optimization-value{font-size:1rem;text-align:right}.prefill-section h3{font-size:1rem}.prefill-buttons{grid-template-columns:1fr;gap:.5rem}.prefill-btn{padding:.6rem .8rem;font-size:.85rem}.summary-bar{margin-left:.5rem;margin-right:.5rem;grid-template-columns:repeat(2,1fr);padding:.75rem;gap:.5rem}.summary-bar .summary-item{padding:.5rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-tertiary);flex-direction:column;align-items:flex-start}.summary-bar .summary-label{font-size:.7rem;display:block;margin-bottom:.25rem}.summary-bar .summary-value{font-size:.9rem}.planner-content{padding:0 .5rem}.planner-controls{padding:1rem}.control-group label{font-size:.85rem}.control-input{padding:.6rem .75rem;font-size:.9rem}.working-days-toggle{gap:.4rem}.day-toggle,.working-days-toggle.small .day-toggle{padding:.6rem .5rem;font-size:.85rem}.calendar-container{grid-template-columns:repeat(2,1fr);gap:.5rem}.calendar-month{padding:.6rem;font-size:.8em}.month-header{font-size:.7rem;margin-bottom:.4rem}.week-days-header{gap:.15rem;margin-bottom:.25rem}.day-header{padding:.2rem;font-size:.55rem}.days-grid{gap:.15rem}.day-cell{min-height:32px;border-radius:4px}.day-number{font-size:.65rem}.holiday-tooltip{font-size:.65rem;padding:.35rem .5rem;white-space:normal;max-width:140px;text-align:center;z-index:1000}.faq-section{margin-top:1.5rem;padding:0 .5rem}.faq-section h2{font-size:1.25rem}.faq-intro{font-size:.9rem}.faq-item summary{padding:.75rem;font-size:.9rem}.faq-answer{padding:0 .75rem .75rem;font-size:.85rem}}@media (hover:none){.day-cell:hover{transform:none}.day-cell:active{transform:scale(.95)}.day-cell:active .holiday-tooltip{opacity:1}}@media (max-width:480px){.vacation-planner-container{padding:.5rem}.planner-header{margin-bottom:1rem}.summary-bar{padding:.5rem;gap:.4rem}}@media (max-width:640px){.vacation-planner-container{padding:.5rem;overflow-x:hidden;width:100%;max-width:100vw}.calendar-container{grid-template-columns:repeat(2,1fr);gap:.25rem;width:100%}.calendar-month{padding:.4rem;width:100%}.day-cell{min-height:28px;font-size:.8em}.day-number{font-size:.6rem}.holiday-tooltip{display:none}.planner-content{padding:0;width:100%}.control-input,select,input{max-width:100%}.days-grid{gap:.1rem}.month-header{font-size:.65rem}.week-days-header{gap:.1rem}.day-header{font-size:.5rem;padding:.15rem}}*,:before,:after{box-sizing:border-box}html{scrollbar-gutter:stable}