:root{--bg-color: #0b0d19;--bg-gradient: radial-gradient(circle at top left, #14172e, #070810 70%);--panel-bg: rgba(20, 24, 46, .45);--panel-bg-heavy: rgba(13, 16, 33, .85);--border-color: rgba(255, 255, 255, .07);--border-focus: rgba(139, 92, 246, .5);--text-primary: #f3f4f6;--text-secondary: #d1d5db;--text-muted: #9ca3af;--accent-purple: #8b5cf6;--accent-blue: #3b82f6;--accent-gradient: linear-gradient(135deg, #a78bfa 0%, #8b5cf6 100%);--accent-hover: #7c3aed;--cat-work: #3b82f6;--cat-personal: #10b981;--cat-health: #a855f7;--cat-urgent: #f43f5e;--shadow-lg: 0 10px 30px -10px rgba(0, 0, 0, .5);--shadow-glow: 0 0 15px rgba(139, 92, 246, .25);--radius-lg: 16px;--radius-md: 12px;--radius-sm: 8px}:root[data-theme=light]{--bg-color: #f3f4f6;--bg-gradient: radial-gradient(circle at top left, #e5e7eb, #f9fafb 70%);--panel-bg: rgba(255, 255, 255, .65);--panel-bg-heavy: rgba(255, 255, 255, .95);--border-color: rgba(0, 0, 0, .08);--border-focus: rgba(139, 92, 246, .7);--text-primary: #111827;--text-secondary: #4b5563;--text-muted: #9ca3af;--shadow-lg: 0 10px 25px -5px rgba(0, 0, 0, .05), 0 8px 10px -6px rgba(0, 0, 0, .05)}*{box-sizing:border-box;margin:0;padding:0}*:focus-visible{outline:2px solid var(--accent-purple);outline-offset:2px}body{font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:var(--bg-color);background-image:var(--bg-gradient);color:var(--text-primary);min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden;-webkit-font-smoothing:antialiased;transition:background .3s ease,color .3s ease}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0000001a}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}:root[data-theme=light] ::-webkit-scrollbar-thumb{background:#00000026}::-webkit-scrollbar-thumb:hover{background:#fff3}.hidden{display:none!important}.flex-wrap-gap{display:flex;flex-wrap:wrap;gap:12px}.font-small{font-size:.85rem!important}.app-loader{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--bg-color);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:9999}.spinner{width:50px;height:50px;border:3px solid rgba(139,92,246,.1);border-top-color:var(--accent-purple);border-radius:50%;animation:spin 1s infinite linear;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.glass-panel{background:var(--panel-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);transition:all .3s ease}.glass-panel-heavy{background:var(--panel-bg-heavy);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.app-container{display:flex;flex-direction:column;min-height:100vh;padding:24px;max-width:1440px;width:100%;margin:0 auto;gap:16px;animation:fadeIn .4s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.main-header{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;background:#ffffff03;border:1px solid var(--border-color);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.logo-area{display:flex;align-items:center;gap:12px}.logo-icon{width:28px;height:28px;color:var(--accent-purple)}.logo-text{font-size:1.4rem;font-weight:700;letter-spacing:.5px;background:linear-gradient(135deg,var(--text-primary) 50%,var(--accent-purple) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.user-profile-widget{display:flex;align-items:center;gap:10px}.user-email-display{font-size:.9rem;color:var(--text-secondary);font-weight:500;margin-right:8px}.btn{font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:all .2s ease;padding:10px 18px;font-size:.9rem}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 12px #8b5cf64d}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 16px #8b5cf666}.btn-secondary{background:#ffffff0d;color:var(--text-primary);border:1px solid var(--border-color)}:root[data-theme=light] .btn-secondary{background:#fff}.btn-secondary:hover{background:#ffffff1f}.btn-tertiary{background:transparent;color:var(--text-secondary)}.btn-tertiary:hover{background:#ffffff0d;color:var(--text-primary)}.btn-danger{background:#f43f5e26;color:#fb7185;border:1px solid rgba(244,63,94,.2)}.btn-danger:hover{background:#f43f5e40}.btn-small{padding:6px 12px;font-size:.8rem}.btn-block{width:100%}.btn-icon{width:34px;height:34px;padding:0;border-radius:50%;background:#ffffff0a;color:var(--text-secondary);border:1px solid var(--border-color)}.btn-icon:hover{color:var(--text-primary);background:#ffffff1a;transform:scale(1.02)}.workspace-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:20px;flex-grow:1}.calendar-card{padding:20px;display:flex;flex-direction:column}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:12px}.calendar-actions-wrapper,.calendar-nav{display:flex;align-items:center;gap:12px}.month-title{font-size:1.4rem;font-weight:700;min-width:180px;text-align:center}.view-selector{display:flex;background:#ffffff0a;border:1px solid var(--border-color);padding:2px;border-radius:var(--radius-sm)}:root[data-theme=light] .view-selector{background:#0000000a}.view-tab{border:none;background:transparent;color:var(--text-secondary);padding:6px 12px;font-weight:600;font-size:.8rem;cursor:pointer;border-radius:4px;font-family:inherit;transition:all .2s ease}.view-tab.active{background:var(--accent-purple);color:#fff;box-shadow:0 2px 8px #8b5cf633}.weekdays-grid{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-weight:600;font-size:.8rem;text-transform:uppercase;color:var(--text-secondary);margin-bottom:10px;border-bottom:1px solid var(--border-color);padding-bottom:8px}.days-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:1fr;gap:6px;flex-grow:1;min-height:440px}.day-cell{position:relative;background:#ffffff03;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:6px;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;min-height:80px;transition:all .2s ease}.day-cell:hover{background:#ffffff0a;border-color:#ffffff1f;transform:translateY(-1px)}.day-cell.padding-day{opacity:.25}.day-num{font-size:1rem;font-weight:500;align-self:flex-end}.day-cell.today{border-color:var(--accent-purple);background:#8b5cf60f}.day-cell.today .day-num{color:var(--accent-purple);font-weight:700}.day-cell.selected{border-color:var(--text-primary);background:#ffffff0f;box-shadow:inset 0 0 0 1px var(--text-primary)}.day-cell.drag-over{background:#8b5cf626!important;border:2px dashed var(--accent-purple)!important}.day-cell .day-weather-badge{font-size:.7rem;position:absolute;left:6px;top:6px;opacity:.8}.day-cell .day-mood-badge{font-size:.75rem;position:absolute;left:6px;bottom:6px;filter:drop-shadow(0 0 2px rgba(0,0,0,.3))}.day-dots{display:flex;flex-wrap:wrap;gap:3px;margin-top:4px}.day-dot{width:5px;height:5px;border-radius:50%}.timeline-container{display:flex;flex-direction:column;flex-grow:1;overflow-y:auto;max-height:550px;position:relative;background:#00000005;border-radius:var(--radius-md);border:1px solid var(--border-color);padding:8px}.timeline-hour-slot{display:flex;border-top:1px dashed var(--border-color);height:50px;align-items:flex-start;position:relative;flex-shrink:0}.timeline-hour-label{width:50px;font-size:.75rem;color:var(--text-muted);text-align:right;padding-right:8px;transform:translateY(-8px);background:var(--bg-color)}.timeline-events-lane{flex-grow:1;height:100%;position:relative}.timeline-event-card{position:absolute;left:4px;right:4px;padding:4px 8px;border-radius:var(--radius-sm);font-size:.75rem;color:#fff;border-left:3px solid transparent;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;flex-direction:column;justify-content:center;transition:all .2s ease;z-index:2}.timeline-event-card:hover{filter:brightness(1.1);transform:scale(1.01);z-index:3}[draggable]{cursor:grab}[draggable]:active{cursor:grabbing}.agenda-card{padding:20px;display:flex;flex-direction:column;max-height:750px}.agenda-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-title{font-size:1.2rem;font-weight:600}.section-subtitle{font-size:.85rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:10px 0 6px;border-bottom:1px solid var(--border-color);padding-bottom:4px}.agenda-controls{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.search-box-wrapper{position:relative}.search-box-wrapper input{width:100%;padding:8px 10px 8px 32px;background:#ffffff05;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:.85rem;transition:all .2s ease}.search-box-wrapper input:focus{outline:none;background:#ffffff0d;border-color:var(--border-focus)}.search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.category-filters{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}.filter-tab{padding:5px 10px;border-radius:16px;font-size:.75rem;font-weight:600;cursor:pointer;background:#ffffff05;border:1px solid var(--border-color);color:var(--text-secondary);transition:all .2s ease;white-space:nowrap}.filter-tab:hover{background:#ffffff14;color:var(--text-primary)}.filter-tab.active{background:var(--text-primary);color:var(--bg-color);border-color:var(--text-primary)}.invitations-container{background:#8b5cf60a;border:1px solid rgba(139,92,246,.15);border-radius:var(--radius-md);padding:8px;margin-bottom:10px}.invitation-list{display:flex;flex-direction:column;gap:6px}.invitation-card{background:#ffffff05;border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:8px;font-size:.8rem;display:flex;flex-direction:column;gap:6px}.invitation-actions{display:flex;gap:6px}.event-list-container{overflow-y:auto;flex-grow:1;display:flex;flex-direction:column;gap:8px;max-height:380px}.event-card{padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:#ffffff03;display:flex;flex-direction:column;gap:4px;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;animation:fadeInUp .3s ease backwards}.event-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026;background:#ffffff0a}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.event-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px}.event-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.event-card-title{font-weight:600;font-size:.9rem;color:var(--text-primary)}.event-card-time{font-size:.75rem;color:var(--text-secondary);font-weight:500;white-space:nowrap}.event-card-desc{font-size:.78rem;color:var(--text-secondary);line-height:1.3}.event-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:2px}.event-badge{padding:1px 6px;border-radius:10px;font-size:.65rem;font-weight:600;text-transform:capitalize}.event-date-badge{font-size:.68rem;color:var(--text-muted)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#03040999;display:flex;justify-content:center;align-items:center;z-index:1000;padding:16px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fadeIn .2s ease}.modal-content{width:100%;max-width:440px;padding:20px;position:relative;max-height:90vh;display:flex;flex-direction:column}.auth-split-card{max-width:800px;display:flex;flex-direction:row;overflow:hidden;padding:0!important;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow-lg);max-height:520px}.auth-visual-side{flex:1.1;background:linear-gradient(135deg,var(--accent-purple) 0%,var(--accent-blue) 100%);padding:40px;display:flex;flex-direction:column;justify-content:space-between;color:#fff;position:relative;overflow:hidden}.auth-visual-side:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.08) 0%,transparent 70%);transform:rotate(30deg)}.auth-form-side{flex:.9;padding:40px;background:var(--panel-bg);display:flex;flex-direction:column;justify-content:center;overflow-y:auto;max-height:100%}@media (max-width: 768px){.auth-split-card{flex-direction:column;max-width:420px;max-height:90vh}.auth-visual-side{display:none}.auth-form-side{padding:24px}}.modal-body-scroll{overflow-y:auto;padding-right:4px;display:flex;flex-direction:column;gap:12px;max-height:calc(90vh - 80px)}.event-form-card form{overflow-y:auto;padding-right:6px;max-height:calc(90vh - 80px)}.event-form-card form::-webkit-scrollbar{width:6px}.event-form-card form::-webkit-scrollbar-track{background:transparent}.event-form-card form::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;border-bottom:1px solid var(--border-color);padding-bottom:8px}.auth-form{display:flex;flex-direction:column;gap:12px}.form-group{display:flex;flex-direction:column;gap:4px}label{font-size:.78rem;font-weight:600;color:var(--text-secondary)}input,textarea,select{width:100%;padding:9px 12px;background:#ffffff05;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:.88rem;transition:all .2s ease}:root[data-theme=light] input,:root[data-theme=light] textarea,:root[data-theme=light] select{background:#fff}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--border-focus)}select option{background-color:#131526;color:#f3f4f6}:root[data-theme=light] select option{background-color:#fff;color:#111827}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-actions{display:flex;justify-content:space-between;margin-top:12px}.categories-list-container{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;max-height:180px;overflow-y:auto;border-bottom:1px solid var(--border-color);padding-bottom:10px}.category-item{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:#ffffff03}.category-item-info{display:flex;align-items:center;gap:8px}.category-color-dot{width:12px;height:12px;border-radius:50%}.width-color-picker{max-width:80px}.dashboard-panel{padding:20px;display:flex;flex-direction:column;gap:16px;margin-bottom:16px;animation:slideDown .3s cubic-bezier(.16,1,.3,1);overflow-y:auto;max-height:calc(100vh - 100px)}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.dashboard-header{display:flex;justify-content:space-between;align-items:center}.metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.metric-card{padding:14px;text-align:center;background:#ffffff05}.metric-value{font-size:1.8rem;font-weight:700;color:var(--accent-purple);margin-bottom:4px}.metric-label{font-size:.78rem;color:var(--text-secondary);font-weight:600}.charts-container{display:grid;grid-template-columns:1fr 1.2fr;gap:20px;overflow-x:auto}.chart-card{padding:14px;display:flex;flex-direction:column;gap:10px}.chart-card h3{font-size:.9rem;font-weight:600;color:var(--text-secondary)}.svg-chart-container{height:200px;display:flex;justify-content:center;align-items:center;position:relative}.shortcuts-guide-list{display:flex;flex-direction:column;gap:10px}.shortcut-item{display:flex;align-items:center;gap:12px;font-size:.9rem}.shortcut-item kbd{background:#ffffff1a;border:1px solid var(--border-color);border-radius:4px;padding:2px 6px;font-family:monospace;font-weight:700;font-size:.8rem;min-width:28px;text-align:center}.habits-layout{display:grid;grid-template-columns:1fr 1.8fr;gap:20px}.habits-creation-card{padding:16px}.habits-list-card{padding:16px;max-height:400px;overflow-y:auto}.habit-row{display:flex;align-items:center;justify-content:space-between;padding:10px;background:#ffffff03;border:1px solid var(--border-color);border-radius:var(--radius-sm)}.habit-info-col{display:flex;flex-direction:column;gap:4px}.habit-weekly-grid{display:flex;gap:6px;align-items:center}.habit-day-check{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;cursor:pointer;border:1px solid var(--border-color);background:#ffffff05;transition:all .2s ease;-webkit-user-select:none;user-select:none}.habit-day-check.checked{color:#fff;border-color:transparent}.kanban-board{height:100%}.kanban-column{min-height:400px}.kanban-card{cursor:grab;-webkit-user-select:none;user-select:none;transition:all .2s ease}.kanban-card:active{cursor:grabbing}.kanban-card.drag-source{opacity:.4}.mood-emoji-btn{background:transparent;border:none;font-size:1.1rem;cursor:pointer;opacity:.4;transition:all .2s ease}.mood-emoji-btn:hover{opacity:1;transform:scale(1.15)}.mood-emoji-btn.active{opacity:1;transform:scale(1.2);filter:drop-shadow(0 0 4px var(--accent-purple))}.subtask-row{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text-primary)}.subtask-checkbox{cursor:pointer;width:14px;height:14px}@media (max-width: 1024px){.workspace-grid{grid-template-columns:1fr}.agenda-card{max-height:none}.charts-container,.habits-layout{grid-template-columns:1fr}}@media (max-width: 640px){.app-container{padding:12px}.main-header{padding:12px 16px;flex-wrap:wrap;gap:12px}.header-actions{width:100%;justify-content:space-between}.user-email-display{display:none}.metrics-grid{grid-template-columns:1fr;gap:10px}#add-event-fab{position:fixed;bottom:24px;right:24px;z-index:99;border-radius:50%;width:56px;height:56px;padding:0;justify-content:center;box-shadow:0 4px 16px #8b5cf666}#add-event-fab span{display:none}.modal-content{max-height:100vh;border-radius:0;padding:16px}}.world-clock-widget span{background:#ffffff0a;border:1px solid var(--border-color);padding:3px 8px;border-radius:4px;font-size:.75rem}:root[data-theme=light] .world-clock-widget span{background:#0000000a}.heatmap-grid{display:grid;grid-template-columns:repeat(53,1fr);grid-gap:3px;align-items:center}.heatmap-day{width:10px;height:10px;border-radius:2px;background:#ffffff08;transition:all .2s ease}:root[data-theme=light] .heatmap-day{background:#0000000d}.heatmap-day:hover{transform:scale(1.3);box-shadow:0 0 6px var(--accent-purple);cursor:pointer}.attachment-item{display:flex;justify-content:space-between;align-items:center;background:#ffffff05;padding:4px 8px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.75rem}@media print{body *{visibility:hidden!important}body.printing-receipt #thermal-receipt-print-section,body.printing-receipt #thermal-receipt-print-section *{visibility:visible!important}body.printing-receipt #thermal-receipt-print-section{display:block!important;position:absolute!important;left:0!important;top:0!important;width:58mm!important;background:#fff!important;color:#000!important;padding:2mm!important;margin:0!important;border:none!important;box-shadow:none!important}body.printing-report #weekly-report-print-section,body.printing-report #weekly-report-print-section *{visibility:visible!important}body.printing-report #weekly-report-print-section{display:block!important;position:absolute!important;left:0!important;top:0!important;width:100%!important;background:#fff!important;color:#000!important;padding:0!important;margin:0!important}}@keyframes spotlight-glow-pulse{0%{box-shadow:0 0 8px #8b5cf666,0 0 0 9999px #000000c7;border-color:#8b5cf699}to{box-shadow:0 0 20px #8b5cf6d9,0 0 0 9999px #000000d1;border-color:#8b5cf6}}
