*{padding:0;margin:0;box-sizing:border-box}body{font-family:Inter,sans-serif;background-color:#202124;color:#fff;min-height:100vh}input,textarea{padding:12px;margin:12px 0;font-family:Inter,sans-serif;background-color:#ffffff0f;color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:8px}input::placeholder,textarea::placeholder{color:#aaa;font-weight:700}.note-app__header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid rgba(255,255,255,.12);background-color:#121212;gap:24px}.note-app__header h1{margin:0;font-size:28px;letter-spacing:.03em}.note-search{width:100%;max-width:420px}.note-search input{width:100%;padding:12px 16px;height:44px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background-color:#ffffff0d}.note-search input::placeholder{color:#ccc}.note-app__body{max-width:1200px;margin:24px auto;padding:0 16px 48px;display:flex;flex-direction:column;gap:32px}.note-app__body h2{font-weight:400;margin:0 0 16px}.note-input{margin:0 auto;max-width:560px;width:100%;background-color:#ffffff0a;border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:28px;box-shadow:0 24px 48px #00000040}.note-input input,.note-input textarea{display:block;width:100%}.app-page{max-width:980px;margin:0 auto;padding:24px 18px 48px}.app-page .back-button{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background-color:#ffffff0a;color:#fff;cursor:pointer;margin-bottom:24px}.app-page h2{margin-bottom:20px;font-size:clamp(1.75rem,1.5rem + .8vw,2.2rem)}.case-form{display:grid;gap:18px;padding:28px;border-radius:24px;border:1px solid rgba(255,255,255,.12);background-color:#ffffff0a}.case-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.case-form__field{display:grid;gap:10px}.case-form__field label{font-size:.95rem;color:#d7d7d7}.teacher-input-row,.case-form__field .teacher-input-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.teacher-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.teacher-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background-color:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#fff}.teacher-chip button{border:none;background:transparent;color:#ffdcdc;cursor:pointer;font-size:.95rem}.case-form__field small{color:#b0b0b0;font-size:.85rem}.case-form input,.case-form textarea{margin:0}.case-form textarea{min-height:180px;resize:vertical}.case-form__image-preview{border:1px solid rgba(255,255,255,.12);border-radius:16px;overflow:hidden;max-width:420px}.case-form__image-preview img{width:100%;display:block}.case-form button{width:fit-content;padding:14px 24px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background-color:#ffffff14;color:#fff;font-weight:700;cursor:pointer;transition:transform .2s ease,background-color .2s ease}.case-form button:hover{background-color:#ffffff24;transform:translateY(-1px)}.case-form__message{margin-top:0;color:#b9f6ca;font-size:.95rem}@media (max-width: 820px){.case-form__grid{grid-template-columns:1fr}}@media (max-width: 560px){.note-app__body{padding:0 12px 32px}.app-page{padding:18px 14px 36px}.app-page .back-button{width:100%;justify-content:center}.case-form{padding:20px}}.note-input__field{display:block;width:100%}.note-input__date-time-wrapper{display:grid;grid-template-columns:2fr 1fr;gap:12px}.note-input__date-time-wrapper .note-input__field{margin:12px 0}.note-input__photo-preview-wrapper{margin:8px 0 16px;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.12)}.note-input__photo-preview{width:100%;height:auto;display:block}.note-input h2{margin-bottom:20px;font-size:22px}.note-input__title__char-limit{font-size:14px;text-align:right;color:#aaa;margin-bottom:4px}.note-input__title-wrapper{position:relative;display:flex;align-items:center}.note-input__title{flex:1;padding-right:50px}.note-input__title-wrapper .note-input__title__char-limit{position:absolute;right:12px;margin:0;font-size:12px}.note-input__feedback{font-size:14px;margin-bottom:12px}.note-input__feedback--error{color:#ff8a80}.note-input__feedback--success{color:#b9f6ca}.note-input__body{min-height:175px}.note-input button{display:block;width:100%;padding:14px;margin-top:12px;background-color:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:12px;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .2s ease,transform .2s ease}.note-input button:hover{background-color:#ffffff24;transform:translateY(-1px)}.notes-list{display:grid;grid-template-columns:1fr;gap:24px;margin-bottom:48px}.notes-list--grouped{display:flex;flex-direction:column;gap:32px}.notes-group{display:flex;flex-direction:column;gap:16px}.notes-group__header{display:flex;align-items:baseline;justify-content:space-between}.notes-group__title{font-size:18px;text-transform:capitalize}.notes-group__count{font-size:12px;color:#aaa}.notes-group__list{display:grid;grid-template-columns:1fr;gap:22px}.notes-list__empty-message{text-align:center;color:#aaa}.note-item{border:1px solid rgba(255,255,255,.12);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;background-color:#ffffff08;box-shadow:0 20px 40px #0000002e}.note-item__content{padding:22px;flex:1}.note-item__title{font-size:18px;margin:0 0 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-item__date{font-size:12px;margin-bottom:12px;color:#aaa}.note-item__body{font-size:14px;line-height:1.6;color:#eee}.note-item__meta{font-size:13px;color:#ccc;margin:4px 0}.note-item__incident-time{color:#999}.note-item__photo-wrapper{margin-top:16px;display:flex;justify-content:center}.note-item__photo{max-width:100%;border-radius:16px;border:1px solid rgba(255,255,255,.12)}.note-item__action{display:flex;border-top:1px solid rgba(255,255,255,.08)}.note-action-button{width:100%;padding:14px 0;border:0;background-color:transparent;color:#fff;font-family:Inter,sans-serif;font-weight:700;cursor:pointer;transition:color .2s ease,background-color .2s ease}.note-action-button--delete{color:#ff5f52;border-right:1px solid rgba(255,255,255,.08)}.note-action-button--archive{color:#fff263}.note-action-button:hover{background-color:#ffffff0d}.note-search__clear{position:absolute;right:12px;background:transparent;border:0;color:#aaa;font-size:20px}.apps-dashboard{padding:0;margin:0}.apps-dashboard__greeting{text-align:center;margin-bottom:32px;padding:24px 16px}.apps-dashboard__greeting h2{font-size:28px;font-weight:600;margin-bottom:8px;letter-spacing:-.5px}.apps-dashboard__greeting p{color:#aaa;font-size:15px}.apps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;padding:0 12px;margin-bottom:40px}@media (min-width: 600px){.apps-grid{grid-template-columns:repeat(2,1fr);gap:20px;padding:0 20px}}@media (min-width: 900px){.apps-grid{grid-template-columns:repeat(3,1fr)}}.app-card{position:relative;background:linear-gradient(135deg,#ffffff0d,#ffffff05);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:20px 16px;cursor:pointer;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;transition:all .3s ease;overflow:hidden}.app-card:hover:not(.app-card--disabled){background:linear-gradient(135deg,#ffffff14,#ffffff0a);border-color:#ffffff1f;transform:translateY(-4px);box-shadow:0 12px 28px #00000040}.app-card--blue{--card-bg: rgba(71, 128, 245, .15);--card-color: #4780f5}.app-card--green{--card-bg: rgba(76, 175, 80, .15);--card-color: #4caf50}.app-card--orange{--card-bg: rgba(255, 152, 0, .15);--card-color: #ff9800}.app-card--purple{--card-bg: rgba(156, 39, 176, .15);--card-color: #9c27b0}.app-card--red{--card-bg: rgba(244, 67, 54, .15);--card-color: #f44336}.app-card--gray{--card-bg: rgba(158, 158, 158, .15);--card-color: #9e9e9e}.app-card--blue,.app-card--green,.app-card--orange,.app-card--purple,.app-card--red,.app-card--gray{background:var(--card-bg)}.app-card--blue .app-card__icon-wrapper{background:#4780f533}.app-card--green .app-card__icon-wrapper{background:#4caf5033}.app-card--orange .app-card__icon-wrapper{background:#ff980033}.app-card--purple .app-card__icon-wrapper{background:#9c27b033}.app-card--red .app-card__icon-wrapper{background:#f4433633}.app-card--gray .app-card__icon-wrapper{background:#9e9e9e33}.app-card__icon-wrapper{width:64px;height:64px;display:flex;align-items:center;justify-content:center;border-radius:14px;margin-bottom:4px}.app-card__icon{font-size:32px;line-height:1}.app-card__body{flex:1;display:flex;flex-direction:column;gap:6px}.app-card__title{margin:0;font-size:16px;font-weight:600;color:#fff}.app-card__short-desc{margin:0;font-size:13px;color:#aaa;line-height:1.4}.app-card__arrow{position:absolute;bottom:8px;right:12px;font-size:20px;opacity:0;transition:opacity .3s ease}.app-card:hover:not(.app-card--disabled) .app-card__arrow{opacity:.6}.app-card--disabled{opacity:.4;pointer-events:none;cursor:not-allowed}.app-card--disabled .app-card__short-desc{color:#666}.app-page{background:#ffffff05;padding:18px;border-radius:12px}.case-form input,.case-form textarea{margin-bottom:8px}.login-wrapper{min-height:100vh;display:flex;background:linear-gradient(135deg,#0f172a,#1e1b4b);color:#fff;align-items:center;justify-content:center;padding:24px}.login-container{display:flex;width:100%;max-width:1000px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:24px;overflow:hidden;box-shadow:0 25px 50px -12px #00000080;flex-direction:row}.login-hero{flex:1;padding:48px;background:linear-gradient(to bottom right,#6366f11a,#a855f71a);display:flex;flex-direction:column;justify-content:center}.login-hero__logo{width:80px;margin-bottom:24px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.3))}.login-hero__title{font-size:2.5rem;font-weight:800;margin-bottom:16px;background:linear-gradient(to right,#818cf8,#c084fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;line-height:1.2}.login-hero__subtitle{font-size:1.1rem;color:#cbd5e1;line-height:1.6;margin-bottom:32px}.login-hero__quote{font-style:italic;color:#94a3b8;border-left:4px solid #818cf8;padding-left:16px}.login-form-section{flex:1;padding:48px;display:flex;flex-direction:column;justify-content:center;background:#0f172a99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-form-section__header{margin-bottom:32px}.login-form-section__header h2{font-size:1.75rem;margin-bottom:8px}.login-form-section__header p{color:#94a3b8}.login-input-group{margin-bottom:20px}.login-input-group select,.login-input-group input{width:100%;padding:14px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#0003;color:#fff;font-size:1rem;transition:all .3s ease;margin:0}.login-input-group select:focus,.login-input-group input:focus{outline:none;border-color:#818cf8;background:#0006;box-shadow:0 0 0 3px #818cf833}.login-btn-submit{width:100%;padding:14px 20px;border-radius:12px;border:none;background:linear-gradient(to right,#4f46e5,#7e22ce);color:#fff;font-weight:700;font-size:1rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;margin-top:12px}.login-btn-submit:hover{transform:translateY(-2px);box-shadow:0 10px 20px -10px #7e22ce80}.login-forgot-btn{background:transparent;border:none;color:#a78bfa;cursor:pointer;font-size:.85rem;font-weight:600}.login-forgot-btn:hover{text-decoration:underline}.login-default-passwords{margin-top:32px;padding:16px;background:#0003;border-radius:12px;font-size:.85rem}.login-default-passwords h3{font-size:.9rem;margin-bottom:8px;color:#94a3b8}.login-default-passwords ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px;color:#cbd5e1;padding-left:0}.login-default-passwords code{background:#ffffff1a;padding:2px 6px;border-radius:4px;color:#f8fafc}@media (max-width: 860px){.login-container{flex-direction:column}.login-hero,.login-form-section{padding:32px 24px}.login-hero__title{font-size:2rem}.login-default-passwords ul{grid-template-columns:1fr}}
