:root{--bg-primary:#f8faf9;--bg-secondary:#fff;--bg-card:#fff;--bg-card-hover:#f1f7f3;--bg-card-solid:#fff;--bg-input:#f3f6f4;--bg-modal:#0006;--bg-page:#f0f5f2;--green-50:#ecfdf5;--green-100:#d1fae5;--green-200:#a7f3d0;--green-300:#6ee7b7;--green-400:#34d399;--green-500:#10b981;--green-600:#059669;--green-700:#047857;--green-800:#065f46;--green-900:#064e3b;--accent-primary:#10b981;--accent-primary-light:#34d399;--accent-primary-dark:#059669;--accent-red:#ef4444;--accent-red-light:#fef2f2;--accent-red-bg:#ef444414;--accent-orange:#f59e0b;--accent-orange-light:#fffbeb;--accent-orange-bg:#f59e0b14;--accent-yellow:#eab308;--accent-yellow-light:#fefce8;--accent-yellow-bg:#eab30814;--accent-blue:#3b82f6;--accent-blue-light:#eff6ff;--accent-blue-bg:#3b82f614;--accent-purple:#8b5cf6;--accent-purple-light:#f5f3ff;--accent-purple-bg:#8b5cf614;--accent-pink:#ec4899;--accent-pink-light:#fdf2f8;--accent-pink-bg:#ec489914;--accent-cyan:#06b6d4;--accent-cyan-light:#ecfeff;--accent-indigo:#6366f1;--gradient-primary:linear-gradient(135deg, #10b981 0%, #059669 100%);--gradient-primary-soft:linear-gradient(135deg, #d1fae5 0%, #a7f3d0 100%);--gradient-warm:linear-gradient(135deg, #f59e0b 0%, #ec4899 100%);--gradient-cool:linear-gradient(135deg, #3b82f6 0%, #8b5cf6 100%);--gradient-danger:linear-gradient(135deg, #ef4444 0%, #f59e0b 100%);--gradient-success:linear-gradient(135deg, #10b981 0%, #34d399 100%);--text-primary:#1a1a2e;--text-secondary:#64748b;--text-muted:#94a3b8;--text-on-green:#fff;--border-subtle:#e8eeeb;--border-light:#d4ddd8;--border-accent:#10b98140;--border-strong:#c0ccc5;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 2px 8px #0000000f;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 8px 32px #0000001a;--shadow-green:0 4px 16px #10b98133;--shadow-card:0 1px 3px #0000000a, 0 1px 2px #0000000f;--nav-height:68px;--page-padding:16px;--card-radius:16px;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:24px;--radius-full:999px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--duration-fast:.15s;--duration-normal:.25s;--duration-slow:.4s;--status-completed:#10b981;--status-completed-bg:#ecfdf5;--status-pending:#f59e0b;--status-pending-bg:#fffbeb;--status-overdue:#ef4444;--status-overdue-bg:#fef2f2;--status-inprogress:#3b82f6;--status-inprogress-bg:#eff6ff;--status-not-started:#94a3b8;--status-not-started-bg:#f1f5f9}*,:before,:after{box-sizing:border-box;margin:0;padding:0;font-family:Poppins,-apple-system,BlinkMacSystemFont,sans-serif!important}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;scroll-behavior:smooth;font-size:16px}body{background:var(--bg-page);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh;font-family:Poppins,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5;overflow-x:hidden}#root{z-index:1;flex-direction:column;min-height:100dvh;display:flex;position:relative}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;outline:none;font-family:inherit}input,textarea,select{color:inherit;background:0 0;border:none;outline:none;font-family:inherit}ul,ol{list-style:none}img{max-width:100%;display:block}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:4px}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}@keyframes dotPulse{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.app-container{background:var(--bg-primary);flex-direction:column;width:100%;max-width:480px;min-height:100dvh;margin:0 auto;display:flex;position:relative}.page-content{padding:var(--page-padding);padding-bottom:calc(var(--nav-height) + 20px);animation:fadeIn var(--duration-normal) var(--ease-out);flex:1;overflow-y:auto}.page-enter{animation:fadeIn var(--duration-normal) var(--ease-out)}.bottom-nav{width:100%;max-width:480px;height:var(--nav-height);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--border-subtle);padding:0 8px;padding-bottom:env(safe-area-inset-bottom,0);z-index:1000;background:#ffffffeb;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.nav-item{border-radius:var(--radius-md);transition:all var(--duration-normal) var(--ease-out);flex-direction:column;align-items:center;gap:3px;min-width:56px;padding:8px 12px;display:flex;position:relative}.nav-item svg{stroke-width:1.8px;width:22px;height:22px;transition:all var(--duration-normal) var(--ease-out);color:var(--text-muted)}.nav-item span{color:var(--text-muted);transition:all var(--duration-normal) var(--ease-out);font-size:10px;font-weight:600}.nav-item.active svg,.nav-item.active span{color:var(--green-600)}.nav-item.active:before{content:"";background:var(--gradient-primary);border-radius:0 0 4px 4px;width:24px;height:3px;position:absolute;top:-1px;left:50%;transform:translate(-50%)}.nav-item:active{transform:scale(.92)}.glass-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--card-radius);box-shadow:var(--shadow-card);transition:all var(--duration-normal) var(--ease-out);padding:16px}.glass-card:hover{border-color:var(--border-light);box-shadow:var(--shadow-sm)}.glass-card-gradient{background:var(--gradient-primary-soft);border:1px solid var(--green-200);border-radius:var(--card-radius);box-shadow:var(--shadow-card);padding:16px}.digital-clock-container{text-align:center;border-radius:var(--radius-xl);padding:24px 16px}.digital-clock{color:var(--green-800);letter-spacing:2px;font-family:Poppins,sans-serif;font-size:52px;font-weight:700;line-height:1}.digital-clock .clock-separator{color:var(--green-400);animation:1s ease-in-out infinite pulse}.clock-date{color:var(--green-700);letter-spacing:1px;text-transform:uppercase;margin-top:8px;font-size:13px;font-weight:500}.clock-ampm{color:var(--green-500);margin-left:4px;font-size:18px;font-weight:600}.greeting-section{margin-bottom:20px}.greeting-text{color:var(--text-primary);margin-bottom:4px;font-size:22px;font-weight:700}.greeting-text span{color:var(--green-600)}.greeting-subtitle{color:var(--text-secondary);font-size:13px;font-weight:400}.section-header{justify-content:space-between;align-items:center;margin-top:24px;margin-bottom:14px;display:flex}.section-header:first-child{margin-top:0}.section-title{color:var(--text-primary);letter-spacing:-.3px;font-size:17px;font-weight:700}.section-action{color:var(--green-600);cursor:pointer;border-radius:var(--radius-full);border:1px solid var(--green-200);background:var(--green-50);transition:all var(--duration-fast) var(--ease-out);padding:4px 12px;font-size:12px;font-weight:600}.section-action:hover{background:var(--green-100)}.progress-ring-wrapper{justify-content:center;align-items:center;display:inline-flex;position:relative}.progress-ring-bg{fill:none;stroke:var(--border-subtle)}.progress-ring-fill{fill:none;stroke-linecap:round;transition:stroke-dashoffset .8s var(--ease-out);transform-origin:50%;transform:rotate(-90deg)}.progress-ring-text{text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.progress-ring-percent{font-family:Poppins,sans-serif;font-size:20px;font-weight:700}.progress-ring-label{color:var(--text-secondary);font-size:10px;font-weight:500}.text-gradient{color:var(--green-600);background:0 0;-webkit-background-clip:unset;-webkit-text-fill-color:unset;background-clip:unset}.quick-actions-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.quick-action-card{cursor:pointer;transition:all var(--duration-normal) var(--ease-out);flex-direction:column;gap:10px;padding:16px;display:flex}.quick-action-card:active{transform:scale(.96)}.quick-action-icon{border-radius:var(--radius-md);justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;display:flex}.quick-action-icon.purple{background:var(--accent-purple-bg);color:var(--accent-purple)}.quick-action-icon.cyan{color:var(--accent-cyan);background:#06b6d414}.quick-action-icon.blue{background:var(--accent-blue-bg);color:var(--accent-blue)}.quick-action-icon.orange{background:var(--accent-orange-bg);color:var(--accent-orange)}.quick-action-icon.pink{background:var(--accent-pink-bg);color:var(--accent-pink)}.quick-action-icon.green{color:var(--green-600);background:#10b98114}.quick-action-title{color:var(--text-primary);font-size:13px;font-weight:600}.quick-action-sub{color:var(--text-secondary);margin-top:-6px;font-size:11px}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.status-dot.completed{background:var(--status-completed)}.status-dot.pending{background:var(--status-pending);animation:2s ease-in-out infinite dotPulse}.status-dot.overdue{background:var(--status-overdue);animation:1.5s ease-in-out infinite dotPulse}.status-dot.inprogress{background:var(--status-inprogress)}.status-dot.not-started{background:var(--status-not-started)}.status-badge{border-radius:var(--radius-full);align-items:center;gap:5px;padding:3px 10px;font-size:10px;font-weight:600;display:inline-flex}.status-badge.completed{background:var(--status-completed-bg);color:var(--status-completed)}.status-badge.pending{background:var(--status-pending-bg);color:var(--status-pending)}.status-badge.overdue{background:var(--status-overdue-bg);color:var(--status-overdue)}.status-badge.inprogress{background:var(--status-inprogress-bg);color:var(--status-inprogress)}.exam-toggle-container{justify-content:center;align-items:center;margin-bottom:20px;display:flex}.exam-toggle{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-full);padding:4px;display:flex;position:relative}.exam-toggle-btn{border-radius:var(--radius-full);transition:all var(--duration-normal) var(--ease-out);z-index:1;color:var(--text-secondary);padding:10px 24px;font-size:13px;font-weight:600;position:relative}.exam-toggle-btn.active{color:#fff}.exam-toggle-slider{border-radius:var(--radius-full);background:var(--gradient-primary);height:calc(100% - 8px);transition:all var(--duration-slow) var(--ease-spring);z-index:0;position:absolute;top:4px}.syllabus-tier-tabs{scrollbar-width:none;gap:8px;margin-bottom:16px;display:flex;overflow-x:auto}.syllabus-tier-tabs::-webkit-scrollbar{display:none}.tier-tab{border-radius:var(--radius-full);background:var(--bg-card);border:1px solid var(--border-subtle);white-space:nowrap;transition:all var(--duration-normal) var(--ease-out);color:var(--text-secondary);padding:8px 18px;font-size:12px;font-weight:600}.tier-tab.active{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-green);border-color:#0000}.accordion-section{border-radius:var(--card-radius);border:1px solid var(--border-subtle);background:var(--bg-card);box-shadow:var(--shadow-xs);transition:all var(--duration-normal) var(--ease-out);margin-bottom:10px;overflow:hidden}.accordion-header{cursor:pointer;transition:background var(--duration-fast);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.accordion-header:hover{background:var(--bg-card-hover)}.accordion-header-left{flex:1;align-items:center;gap:12px;display:flex}.accordion-icon{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:17px;display:flex}.accordion-title{color:var(--text-primary);font-size:14px;font-weight:600}.accordion-count{color:var(--text-secondary);font-size:11px}.accordion-progress{background:var(--border-subtle);border-radius:3px;width:44px;height:5px;margin-right:12px;overflow:hidden}.accordion-progress-fill{background:var(--gradient-primary);height:100%;transition:width .5s var(--ease-out);border-radius:3px}.accordion-chevron{color:var(--text-muted);transition:transform var(--duration-normal) var(--ease-out);flex-shrink:0}.accordion-chevron.open{transform:rotate(180deg)}.accordion-body{max-height:0;transition:max-height var(--duration-slow) var(--ease-out);overflow:hidden}.accordion-body.open{max-height:2000px}.topic-item{border-top:1px solid var(--border-subtle);transition:background var(--duration-fast);cursor:pointer;align-items:center;gap:12px;padding:12px 16px 12px 66px;display:flex}.topic-item:hover{background:var(--bg-card-hover)}.custom-checkbox{border:2px solid var(--border-light);width:22px;height:22px;transition:all var(--duration-fast) var(--ease-out);cursor:pointer;background:#fff;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.custom-checkbox.checked{background:var(--gradient-primary);border-color:#0000;box-shadow:0 2px 8px #10b9814d}.custom-checkbox.checked svg{opacity:1;transform:scale(1)}.custom-checkbox svg{color:#fff;opacity:0;width:13px;height:13px;transition:all var(--duration-fast) var(--ease-spring);transform:scale(.5)}.topic-text{color:var(--text-primary);flex:1;font-size:13px}.topic-text.completed{color:var(--text-muted);text-decoration:line-through}.deadline-banner{border-radius:var(--card-radius);background:var(--green-50);border:1px solid var(--green-200);justify-content:space-between;align-items:center;margin-bottom:16px;padding:14px 16px;display:flex}.deadline-info{flex-direction:column;gap:2px;display:flex}.deadline-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.deadline-days{font-family:Poppins,sans-serif;font-size:22px;font-weight:700}.deadline-days.urgent{color:var(--accent-red)}.deadline-days.warning{color:var(--accent-orange)}.deadline-days.safe{color:var(--green-600)}.deadline-set-btn{border-radius:var(--radius-full);background:var(--gradient-primary);color:#fff;transition:all var(--duration-fast);box-shadow:var(--shadow-green);padding:8px 16px;font-size:12px;font-weight:600}.deadline-set-btn:active{transform:scale(.95)}.task-date-nav{justify-content:center;align-items:center;gap:16px;margin-bottom:16px;display:flex}.task-date-nav button{background:var(--bg-card);border:1px solid var(--border-subtle);width:34px;height:34px;color:var(--text-secondary);transition:all var(--duration-fast);box-shadow:var(--shadow-xs);border-radius:50%;justify-content:center;align-items:center;display:flex}.task-date-nav button:active{background:var(--green-50);transform:scale(.9)}.task-date-text{text-align:center;min-width:140px;color:var(--text-primary);font-size:14px;font-weight:600}.task-item{border-radius:var(--card-radius);background:var(--bg-card);border:1px solid var(--border-subtle);box-shadow:var(--shadow-xs);transition:all var(--duration-normal) var(--ease-out);animation:slideUp var(--duration-normal) var(--ease-out);align-items:center;gap:12px;margin-bottom:8px;padding:14px 16px;display:flex}.task-item.completed{background:var(--green-50);border-color:var(--green-200)}.task-content{flex:1;min-width:0}.task-title{color:var(--text-primary);font-size:14px;font-weight:500}.task-title.done{color:var(--text-muted);text-decoration:line-through}.task-meta{align-items:center;gap:8px;margin-top:4px;display:flex}.task-priority{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:4px;padding:2px 8px;font-size:10px;font-weight:600;display:inline-flex}.task-priority:before{content:"";border-radius:50%;width:6px;height:6px}.task-priority.high{background:var(--accent-red-bg);color:var(--accent-red)}.task-priority.high:before{background:var(--accent-red)}.task-priority.medium{background:var(--accent-orange-bg);color:var(--accent-orange)}.task-priority.medium:before{background:var(--accent-orange)}.task-priority.low{color:var(--green-600);background:#10b98114}.task-priority.low:before{background:var(--green-500)}.task-delete{width:32px;height:32px;color:var(--text-muted);transition:all var(--duration-fast);border-radius:50%;justify-content:center;align-items:center;display:flex}.task-delete:hover{background:var(--accent-red-bg);color:var(--accent-red)}.habit-item{border-radius:var(--card-radius);background:var(--bg-card);border:1px solid var(--border-subtle);box-shadow:var(--shadow-xs);transition:all var(--duration-normal) var(--ease-out);align-items:center;gap:12px;margin-bottom:8px;padding:14px 16px;display:flex}.habit-info{flex:1}.habit-name{color:var(--text-primary);font-size:14px;font-weight:500}.habit-streak{color:var(--accent-orange);margin-top:2px;font-size:11px;font-weight:600}.stopwatch-display{text-align:center;padding:32px 0}.stopwatch-time{letter-spacing:2px;color:var(--green-700);font-family:Poppins,sans-serif;font-size:52px;font-weight:700;line-height:1}.stopwatch-ms{color:var(--green-400);font-size:28px}.stopwatch-controls{justify-content:center;align-items:center;gap:16px;margin-top:24px;display:flex}.sw-btn{width:56px;height:56px;transition:all var(--duration-fast) var(--ease-out);border:1px solid var(--border-subtle);background:var(--bg-card);box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.sw-btn:active{transform:scale(.9)}.sw-btn.start{background:var(--gradient-primary);color:#fff;width:68px;height:68px;box-shadow:var(--shadow-green);border:none}.sw-btn.pause{background:var(--gradient-warm);color:#fff;border:none;width:68px;height:68px;box-shadow:0 4px 16px #f59e0b4d}.sw-btn.secondary{background:var(--bg-card);color:var(--text-secondary)}.lap-list{margin-top:24px}.lap-item{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:10px 16px;font-size:13px;display:flex}.lap-number{color:var(--text-secondary);font-weight:500}.lap-time{color:var(--green-700);font-family:Poppins,sans-serif;font-weight:600}.pomodoro-container{text-align:center;padding:20px 0}.pomodoro-ring-container{margin-bottom:20px;display:inline-block;position:relative}.pomodoro-time{color:var(--text-primary);font-family:Poppins,sans-serif;font-size:42px;font-weight:700}.pomodoro-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;margin-top:4px;font-size:12px;font-weight:600}.pomodoro-controls{justify-content:center;align-items:center;gap:12px;margin-top:16px;display:flex}.pomodoro-sessions{color:var(--text-secondary);margin-top:16px;font-size:13px}.pomodoro-sessions span{color:var(--green-600);font-weight:700}.notes-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.note-card{border-radius:var(--card-radius);background:var(--bg-card);border:1px solid var(--border-subtle);cursor:pointer;box-shadow:var(--shadow-xs);transition:all var(--duration-normal) var(--ease-out);animation:scaleIn var(--duration-normal) var(--ease-out);padding:14px}.note-card:active{transform:scale(.97)}.note-card-title{color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:6px;font-size:14px;font-weight:600;display:-webkit-box;overflow:hidden}.note-card-content{color:var(--text-secondary);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:12px;line-height:1.4;display:-webkit-box;overflow:hidden}.note-card-date{color:var(--text-muted);align-items:center;margin-top:8px;font-size:10px;display:flex}.note-category-dot{border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.question-card{border-radius:var(--card-radius);background:var(--bg-card);border:1px solid var(--border-subtle);box-shadow:var(--shadow-xs);transition:all var(--duration-normal) var(--ease-out);animation:slideUp var(--duration-normal) var(--ease-out);margin-bottom:10px;padding:14px 16px}.question-text{color:var(--text-primary);margin-bottom:8px;font-size:14px;font-weight:500;line-height:1.5}.question-answer{color:var(--green-700);background:var(--green-50);border-radius:var(--radius-sm);border-left:3px solid var(--green-500);margin-bottom:8px;padding:8px 12px;font-size:13px}.question-meta{justify-content:space-between;align-items:center;display:flex}.question-category{border-radius:var(--radius-full);background:var(--green-50);color:var(--green-700);padding:3px 10px;font-size:11px;font-weight:600}.question-star{cursor:pointer;transition:all var(--duration-fast);font-size:18px}.question-star:active{transform:scale(1.3)}.modal-overlay{background:var(--bg-modal);-webkit-backdrop-filter:blur(8px);z-index:2000;width:100%;height:100%;animation:fadeIn var(--duration-fast) var(--ease-out);justify-content:center;align-items:flex-end;display:flex;position:fixed;top:0;left:0}.modal-content{background:var(--bg-secondary);border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-width:480px;max-height:85vh;animation:slideUp var(--duration-slow) var(--ease-spring);box-shadow:var(--shadow-lg);padding:20px;overflow-y:auto}.modal-handle{background:var(--border-light);border-radius:2px;width:40px;height:4px;margin:0 auto 16px}.modal-title{color:var(--text-primary);margin-bottom:20px;font-size:18px;font-weight:700}.modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header .modal-title{margin-bottom:0}.modal-close{color:var(--text-muted);background:0 0;border-radius:50%;padding:4px;transition:all .2s}.modal-close:hover{background:var(--bg-card-hover);color:var(--text-primary)}.modal-body,.form-group{margin-bottom:16px}.form-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:12px;font-weight:600;display:block}.form-input{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-primary);transition:border-color var(--duration-fast);padding:12px 16px;font-size:14px}.form-input:focus{border-color:var(--green-500);box-shadow:0 0 0 3px #10b9811a}.form-input::placeholder{color:var(--text-muted)}.form-textarea{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-primary);resize:vertical;min-height:100px;transition:border-color var(--duration-fast);padding:12px 16px;font-family:Poppins,sans-serif;font-size:14px}.form-textarea:focus{border-color:var(--green-500);box-shadow:0 0 0 3px #10b9811a}.form-textarea::placeholder{color:var(--text-muted)}.form-select{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-primary);appearance:none;cursor:pointer;padding:12px 16px;font-size:14px}.form-select option{background:var(--bg-secondary)}.btn-primary{background:var(--gradient-primary);color:#fff;border-radius:var(--radius-md);width:100%;transition:all var(--duration-fast);cursor:pointer;box-shadow:var(--shadow-green);padding:14px;font-size:15px;font-weight:600}.btn-primary:active{opacity:.9;transform:scale(.98)}.btn-secondary{background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-primary);border-radius:var(--radius-md);transition:all var(--duration-fast);cursor:pointer;padding:10px 20px;font-size:13px;font-weight:600}.btn-secondary:active{transform:scale(.97)}.btn-danger{background:var(--accent-red-bg);width:100%;color:var(--accent-red);border-radius:var(--radius-md);transition:all var(--duration-fast);cursor:pointer;border:1px solid #ef444426;padding:14px;font-size:15px;font-weight:600}.btn-danger:active{transform:scale(.98)}.priority-select{gap:8px;display:flex}.priority-option{text-align:center;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);cursor:pointer;transition:all var(--duration-fast);background:var(--bg-card);flex:1;justify-content:center;align-items:center;gap:4px;padding:10px;font-size:12px;font-weight:600;display:flex}.priority-option:before{content:"";border-radius:50%;width:8px;height:8px}.priority-option.high:before{background:var(--accent-red)}.priority-option.medium:before{background:var(--accent-orange)}.priority-option.low:before{background:var(--green-500)}.priority-option.high.selected{background:var(--accent-red-bg);border-color:var(--accent-red);color:var(--accent-red)}.priority-option.medium.selected{background:var(--accent-orange-bg);border-color:var(--accent-orange);color:var(--accent-orange)}.priority-option.low.selected{border-color:var(--green-500);color:var(--green-600);background:#10b98114}.profile-header{text-align:center;padding:24px 0}.profile-avatar{background:var(--gradient-primary);width:72px;height:72px;box-shadow:var(--shadow-green);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 12px;font-size:28px;display:flex}.profile-name{color:var(--text-primary);font-size:20px;font-weight:700}.profile-exam{color:var(--green-600);margin-top:4px;font-size:13px;font-weight:600}.stats-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:16px;display:grid}.stat-card{text-align:center;padding:16px}.stat-value{font-family:Poppins,sans-serif;font-size:24px;font-weight:700}.stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-size:11px;font-weight:600}.exam-select-cards{flex-direction:column;gap:10px;display:flex}.exam-select-card{border-radius:var(--card-radius);background:var(--bg-card);border:1px solid var(--border-subtle);cursor:pointer;box-shadow:var(--shadow-xs);transition:all var(--duration-normal) var(--ease-out);align-items:center;gap:14px;padding:16px;display:flex}.exam-select-card.selected{border-color:var(--green-500);background:var(--green-50)}.exam-select-card:active{transform:scale(.98)}.exam-radio{border:2px solid var(--border-light);width:22px;height:22px;transition:all var(--duration-fast);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.exam-radio.selected{border-color:var(--green-500)}.exam-radio.selected:after{content:"";background:var(--green-500);border-radius:50%;width:12px;height:12px}.exam-select-name{color:var(--text-primary);font-size:15px;font-weight:600}.exam-select-desc{color:var(--text-secondary);font-size:12px}.streak-banner{border-radius:var(--card-radius);background:var(--accent-orange-light);box-shadow:var(--shadow-xs);border:1px solid #f59e0b26;align-items:center;gap:14px;margin-bottom:16px;padding:16px;display:flex}.streak-fire{font-size:32px;line-height:1}.streak-count{color:var(--accent-orange);font-family:Poppins,sans-serif;font-size:28px;font-weight:800}.streak-label{color:var(--text-secondary);font-size:12px;font-weight:500}.quote-card{border-radius:var(--card-radius);background:var(--green-50);border:1px solid var(--green-200);margin-bottom:16px;padding:16px}.quote-text{color:var(--green-800);font-size:13px;font-style:italic;line-height:1.6}.quote-text:before{content:"\"";color:var(--green-400);margin-right:4px;font-size:24px;line-height:1}.countdown-card{justify-content:space-between;align-items:center;padding:16px;display:flex}.countdown-info h4{color:var(--text-primary);margin-bottom:4px;font-size:14px;font-weight:600}.countdown-info p{color:var(--text-secondary);font-size:12px}.countdown-days{text-align:center}.countdown-number{color:var(--accent-orange);font-family:Poppins,sans-serif;font-size:32px;font-weight:800}.countdown-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;font-size:10px;font-weight:600}.search-bar{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-full);transition:border-color var(--duration-fast);align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;display:flex}.search-bar:focus-within{border-color:var(--green-500)}.search-bar svg{width:18px;height:18px;color:var(--text-muted);flex-shrink:0}.search-bar input{color:var(--text-primary);flex:1;font-size:14px}.search-bar input::placeholder{color:var(--text-muted)}.sub-tabs{scrollbar-width:none;gap:6px;margin-bottom:20px;padding-bottom:4px;display:flex;overflow-x:auto}.sub-tabs::-webkit-scrollbar{display:none}.sub-tab{border-radius:var(--radius-full);background:var(--bg-card);border:1px solid var(--border-subtle);white-space:nowrap;transition:all var(--duration-normal) var(--ease-out);color:var(--text-secondary);cursor:pointer;box-shadow:var(--shadow-xs);padding:8px 16px;font-size:12px;font-weight:600}.sub-tab.active{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-green);border-color:#0000}.sub-tab:active{transform:scale(.95)}.empty-state{text-align:center;padding:48px 24px}.empty-state-icon{opacity:.5;margin-bottom:16px;font-size:48px}.empty-state-title{color:var(--text-secondary);margin-bottom:4px;font-size:16px;font-weight:600}.empty-state-desc{color:var(--text-muted);font-size:13px}.settings-item{border-radius:var(--card-radius);background:var(--bg-card);border:1px solid var(--border-subtle);cursor:pointer;box-shadow:var(--shadow-xs);transition:all var(--duration-fast);justify-content:space-between;align-items:center;margin-bottom:8px;padding:14px 16px;display:flex}.settings-item:active{background:var(--bg-card-hover)}.settings-item-left{align-items:center;gap:12px;display:flex}.settings-item-icon{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:38px;height:38px;font-size:16px;display:flex}.settings-item-title{color:var(--text-primary);font-size:14px;font-weight:500}.settings-item-subtitle{color:var(--text-secondary);font-size:12px}.note-view-title{color:var(--text-primary);margin-bottom:4px;font-size:20px;font-weight:700}.note-view-date{color:var(--text-muted);align-items:center;margin-bottom:16px;font-size:12px;display:flex}.note-view-content{color:var(--text-secondary);white-space:pre-wrap;font-size:14px;line-height:1.7}.note-actions{gap:8px;margin-top:20px;display:flex}.note-actions button{flex:1}.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.dash-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:all var(--duration-normal) var(--ease-out);flex-direction:column;padding:16px;display:flex}.dash-card:hover{box-shadow:var(--shadow-sm);border-color:var(--border-light)}.dash-icon{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:32px;height:32px;margin-bottom:12px;display:flex}.dash-value{color:var(--text-primary);font-family:Poppins,sans-serif;font-size:20px;font-weight:700;line-height:1.2}.dash-label{color:var(--text-secondary);margin-top:4px;font-size:11px;font-weight:500}.calendar-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:8px 4px;display:grid}.cal-day-header{color:var(--text-muted);text-transform:uppercase;margin-bottom:8px;font-size:10px;font-weight:700}.cal-cell{justify-content:center;align-items:center;height:44px;display:flex}.cal-date-wrapper{border-radius:8px;flex-direction:column;justify-content:center;align-items:center;width:36px;height:36px;display:flex;position:relative}.cal-date-wrapper.today{background:var(--green-50)}.cal-date{color:var(--text-primary);font-size:14px;font-weight:600}.cal-date.upcoming{color:var(--text-muted);opacity:.5}.cal-dot{border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px}.cal-dot.delivered{background:var(--green-500)}.cal-dot.absent{background:var(--accent-red)}.cal-legend{border-top:1px solid var(--border-subtle);justify-content:center;gap:16px;margin-top:20px;padding-top:16px;display:flex}.cal-legend-item{color:var(--text-secondary);align-items:center;gap:6px;font-size:11px;font-weight:500;display:flex}.activity-ladder{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-direction:column;padding:20px 16px;display:flex}.activity-item{gap:16px;padding-bottom:24px;display:flex;position:relative}.activity-item:last-child{padding-bottom:0}.act-line{background:var(--border-subtle);width:2px;position:absolute;top:32px;bottom:0;left:14px}.act-icon-wrapper{z-index:2;border:2px solid var(--bg-card);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex;position:relative}.act-content{flex:1;padding-top:4px}.act-desc{color:var(--text-primary);margin-bottom:2px;font-size:13px;font-weight:600}.act-time{color:var(--text-secondary);font-size:11px}@media (width>=481px){.app-container{border-left:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle);box-shadow:var(--shadow-lg)}}@media (width<=350px){.digital-clock{font-size:40px}.quick-actions-grid{gap:8px}.stopwatch-time{font-size:40px}}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-8{margin-bottom:8px}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.text-center{text-align:center}.flex-center{justify-content:center;align-items:center;display:flex}
