*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f3f4f6;margin:0}#root{min-height:100dvh}.container{color:#333;max-width:960px;margin:0 auto;padding:24px 16px;font-family:system-ui,Segoe UI,Roboto,sans-serif}header{text-align:center;margin-bottom:24px}header h1{color:#222;margin:0 0 8px;font-size:28px}header p{color:#666;margin:0;font-size:14px}.settings{background:#f8f9fa;border-radius:12px;margin-bottom:24px;padding:20px}.settings h2{margin:0 0 16px;font-size:18px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.form-grid label{color:#555;flex-direction:column;gap:6px;font-size:14px;display:flex}.form-grid input,.form-grid select{background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:8px 10px;font-size:16px}.form-grid select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.result{text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:24px;padding:20px}.verdict{border-radius:10px;margin-bottom:16px;padding:16px;font-size:24px;font-weight:700}.verdict.buy{color:#166534;background:#dcfce7}.verdict.skip{color:#991b1b;background:#fee2e2}.details{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.row{color:#666;flex-direction:column;gap:4px;font-size:14px;display:flex}.row strong{color:#222;font-size:18px}.row strong.positive{color:#166534}.row strong.negative{color:#991b1b}.calendar-section{margin-bottom:40px}.calendar-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.calendar-header h2{margin:0;font-size:18px}.calendar-actions{gap:8px;display:flex}.calendar-actions button{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:8px 14px;font-size:14px}.calendar-actions button:hover{background:#f3f4f6}.range{color:#666;margin:0 0 16px;font-size:14px}.months{flex-direction:column;gap:24px;display:flex}.month h3{color:#444;margin:0 0 8px;font-size:16px}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.weekday-header{text-align:center;color:#888;padding:6px 0;font-size:12px;font-weight:600}.day-cell{aspect-ratio:1;color:#333;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:8px;justify-content:center;align-items:center;font-size:14px;transition:background .15s,border-color .15s;display:flex}.day-cell:hover:not(:disabled){opacity:.85}.day-cell.selected{color:#fff;background:#3b82f6;border-color:#2563eb}.day-cell.other-month{color:#bbb;background:#fafafa}.day-cell.out-of-range{opacity:.4;cursor:not-allowed}.day-cell.sunday{color:#ef4444}.day-cell.saturday{color:#3b82f6}.day-cell.selected.sunday,.day-cell.selected.saturday{color:#fff}.day-cell.empty{cursor:default;background:0 0;border-color:#0000}.day-cell.holiday{color:#ef4444}.day-cell.selected.holiday{color:#fff}.day-cell{flex-direction:column;gap:2px;position:relative}.day-number{line-height:1}.holiday-badge{color:#fff;background:#ef4444;border-radius:4px;padding:1px 4px;font-size:10px;font-weight:700;line-height:1}.holiday-list{flex-wrap:wrap;gap:6px;margin:0 0 10px;display:flex}.holiday-chip{color:#991b1b;background:#fee2e2;border-radius:6px;padding:3px 8px;font-size:12px;font-weight:600}@media (width<=640px){.container{padding:16px 12px}header h1{font-size:22px}.form-grid{grid-template-columns:1fr}.details{grid-template-columns:repeat(2,1fr)}}
