body{background-color:#f8fafc;color:#334155;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;margin:0;padding:0}.min-h-screen{min-height:100vh}.bg-gray-50{background-color:#f8fafc}.max-w-7xl{max-width:80rem}.mx-auto{margin-left:auto;margin-right:auto}.p-4{padding:1rem}.bg-gradient-to-r{background:linear-gradient(135deg,#4f46e5,#7c3aed)}.text-white{color:#fff}.text-center{text-align:center}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.rounded-t-2xl{border-top-left-radius:1rem;border-top-right-radius:1rem}.shadow-lg{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.m-0{margin:0}.text-4xl{font-size:2.25rem}.font-bold{font-weight:700}.mt-2{margin-top:.5rem}.text-lg{font-size:1.125rem}.mt-1{margin-top:.25rem}.text-sm{font-size:.875rem}.opacity-90{opacity:.9}.bg-white{background-color:#fff}.rounded-b-2xl{border-bottom-left-radius:1rem;border-bottom-right-radius:1rem}.overflow-hidden{overflow:hidden}.py-4{padding-bottom:1rem;padding-top:1rem}.mt-4{margin-top:1rem}.text-gray-600{color:#6b7280}.h-80vh{height:80vh}.smart-calendar{background:#fff;border-radius:12px;display:flex;flex-direction:column;height:100%;overflow:hidden}.calendar-header{align-items:center;background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 6px -1px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.header-left{display:flex;flex-direction:column;gap:16px}.header-left .year-title{font-size:1.875rem;font-weight:700;margin:0}.action-buttons{display:flex;flex-wrap:wrap;gap:12px}.action-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.action-button.primary{background:#fffffff2;color:#059669;font-weight:600}.action-button.primary:hover{background:#fff;box-shadow:0 4px 8px #0000001a;transform:translateY(-1px)}.action-button.secondary{background:#ffffff26;border:1px solid #ffffff4d;color:#fff}.action-button.secondary:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-1px)}.action-button.tertiary{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;color:#fff;font-weight:600}.action-button.tertiary:hover{background:linear-gradient(135deg,#f59e0b,#ea580c);box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.assignments{display:flex;flex-direction:column;gap:2px;margin-top:4px}.assignment-item{border-radius:4px;color:#fff;cursor:pointer;font-size:.75rem;font-weight:500;overflow:hidden;padding:2px 6px;text-overflow:ellipsis;transition:all .2s ease;white-space:nowrap}.assignment-item:hover{position:relative;transform:scale(1.05);z-index:10}.assignment-item.priority-high{background:#dc2626;border:1px solid #b91c1c}.assignment-item.priority-medium{background:#2563eb;border:1px solid #1d4ed8}.assignment-item.priority-easy{background:#16a34a;border:1px solid #15803d}.item-title{display:block;max-width:100%}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;max-width:500px;overflow-y:auto;padding:0;width:90%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e5e7eb;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:20px 24px}.modal-header h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0}.close-button{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:1.5rem;padding:4px;transition:all .2s ease}.close-button:hover{background:#f3f4f6;color:#374151}.modal-content form{padding:24px}.form-group{margin-bottom:20px}.form-group label{color:#374151;display:block;font-size:.875rem;font-weight:500;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:.875rem;padding:10px 12px;transition:all .2s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-group textarea{min-height:80px;resize:vertical}.form-group select{cursor:pointer}.form-actions{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}.cancel-button{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .2s ease}.cancel-button:hover{background:#f9fafb;border-color:#9ca3af}.submit-button{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .2s ease}.submit-button:hover{background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.header-right{align-items:center;display:flex;gap:12px}.nav-button,.today-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px;transition:all .2s ease}.nav-button:hover,.today-button:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-1px)}.today-button{background:#ffffffe6;border-color:#0000;color:#059669;font-weight:600}.today-button:hover{background:#fff;transform:translateY(-1px)}.calendar-scroll{background:#fafbfc;flex:1 1;overflow-y:auto;padding:24px}.calendar-scroll::-webkit-scrollbar{width:8px}.calendar-scroll::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.calendar-scroll::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.calendar-scroll::-webkit-scrollbar-thumb:hover{background:#94a3b8}.month-container{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;margin-bottom:32px;overflow:hidden}.month-header{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-bottom:1px solid #e2e8f0;padding:16px 20px}.month-title{color:#334155;font-size:1.25rem;font-weight:600;margin:0}.days-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;display:grid;grid-template-columns:repeat(7,1fr)}.day-header{color:#64748b;font-size:.875rem;font-weight:600;letter-spacing:.05em;padding:12px 8px;text-align:center;text-transform:uppercase}.days-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day{background:#fff;border-bottom:1px solid #f1f5f9;border-right:1px solid #f1f5f9;cursor:pointer;min-height:80px;padding:8px;position:relative;transition:all .2s ease}.calendar-day:hover{background:#f8fafc;box-shadow:0 4px 12px #0000001a;transform:scale(1.02);z-index:10}.calendar-day.empty{background:#f8fafc;cursor:default}.calendar-day.empty:hover{background:#f8fafc;box-shadow:none;transform:none}.calendar-day.today{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.calendar-day.today .day-number{color:#fff;font-weight:700}.calendar-day.today:hover{background:linear-gradient(135deg,#2563eb,#1e40af)}.calendar-day.selected{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.calendar-day.selected .day-number{color:#fff;font-weight:700}.day-number{color:#374151;display:block;font-size:1rem;font-weight:600;margin-bottom:4px}.assignments{min-height:40px}@media (max-width:768px){.calendar-header{flex-direction:column;gap:16px;padding:16px}.header-left{align-items:center;text-align:center}.header-left .year-title{font-size:1.5rem}.action-buttons{gap:8px;justify-content:center}.action-button{font-size:.75rem;padding:6px 12px}.header-right{flex-wrap:wrap;justify-content:center}.nav-button,.today-button{font-size:.875rem;padding:6px 12px}.calendar-day{min-height:60px;padding:4px}.day-number{font-size:.875rem}.month-title{font-size:1.125rem}.assignment-item{font-size:.6rem;padding:1px 4px}.modal-content{margin:10px;width:95%}.modal-content form{padding:16px}.form-actions{flex-direction:column}.cancel-button,.submit-button{width:100%}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.baf36ae0.css.map*/