@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--font-sans:"Inter", -split-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--bg-primary:#fff;--bg-secondary:#f4f4f6;--bg-tertiary:#f9f9fa;--bg-card:#fff;--text-primary:#171717;--text-secondary:#393c41;--text-muted:#5c5e62;--border-color:#e2e2e6;--border-focus:#171717;--accent-color:#3e6ae1;--accent-hover:#2a52be;--chart-total-start:#171b2138;--chart-total-end:#171b2114;--chart-completed-start:#10b981;--chart-completed-end:#059669;--status-success:#0f5d3e;--status-success-bg:#10b98114;--status-success-border:#10b98126;--status-warning:#b25e00;--status-warning-bg:#f59e0b14;--status-warning-border:#f59e0b26;--status-error:#b91c1c;--status-error-bg:#ef444414;--status-error-border:#ef444426;--status-info:#4f46e5;--status-info-bg:#4f46e514;--status-info-border:#4f46e526;--gradient-card:linear-gradient(180deg, #fff 0%, #f9f9fa 100%);--gradient-glow-green:linear-gradient(180deg, #10b9811a 0%, #10b98100 100%);--gradient-glow-red:linear-gradient(180deg, #ef44441a 0%, #ef444400 100%);--shadow-sm:0 1px 3px 0 #00000005, 0 1px 2px -1px #00000005;--shadow-md:0 10px 15px -3px #00000008, 0 4px 6px -4px #00000005;--shadow-lg:0 20px 25px -5px #0000000a, 0 8px 10px -6px #00000008;--transition-speed:.25s;--transition-bezier:cubic-bezier(.25, .1, .25, 1)}[data-theme=dark]{--bg-primary:#000;--bg-secondary:#111;--bg-tertiary:#161616;--bg-card:#111;--text-primary:#fff;--text-secondary:#e2e2e6;--text-muted:#8e8e93;--border-color:#1e1e20;--border-focus:#fff;--chart-total-start:#ffffff47;--chart-total-end:#ffffff1a;--chart-completed-start:#34d399;--chart-completed-end:#059669;--status-success:#10b981;--status-success-bg:#10b9811f;--status-success-border:#10b98133;--status-warning:#f59e0b;--status-warning-bg:#f59e0b1f;--status-warning-border:#f59e0b33;--status-error:#ef4444;--status-error-bg:#ef44441f;--status-error-border:#ef444433;--status-info:#818cf8;--status-info-bg:#818cf81f;--status-info-border:#818cf833;--gradient-card:linear-gradient(180deg, #111 0%, #161616 100%);--gradient-glow-green:linear-gradient(180deg, #10b98114 0%, #10b98100 100%);--gradient-glow-red:linear-gradient(180deg, #ef444414 0%, #ef444400 100%);--shadow-sm:0 1px 2px 0 #0009;--shadow-md:0 8px 16px -2px #00000080;--shadow-lg:0 24px 32px -4px #000000b3}.material-symbols-rounded{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"liga";font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 20;transition:font-variation-settings var(--transition-speed) var(--transition-bezier), color var(--transition-speed);direction:ltr;font-family:Material Symbols Rounded;font-size:20px;font-style:normal;font-weight:400;line-height:1;display:inline-block}.material-symbols-rounded.fill{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 20}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;transition:background-color var(--transition-speed) var(--transition-bezier), color var(--transition-speed) var(--transition-bezier);-webkit-tap-highlight-color:transparent;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4,h5,h6{letter-spacing:-.03em;color:var(--text-primary);font-weight:700}h1{letter-spacing:-.04em}p{color:var(--text-secondary);font-size:13.5px;line-height:1.6}.app-container{flex-direction:column;width:100%;min-height:100vh;display:flex}.main-content{flex-direction:column;flex:1;width:100%;max-width:1400px;margin:0 auto;padding:40px 80px;display:flex}@media (width<=768px){.main-content{padding:24px 16px}}.panel-header{border-bottom:1px solid var(--border-color);background-color:var(--bg-primary);z-index:100;height:56px;transition:border-bottom var(--transition-speed), background-color var(--transition-speed);justify-content:space-between;align-items:center;padding:0 32px;display:flex;position:sticky;top:0}.panel-header-left{align-items:center;gap:12px;display:flex}.panel-logo{letter-spacing:.25em;text-transform:uppercase;color:var(--text-primary);font-size:16px;font-weight:700;text-decoration:none}.panel-logo-sub{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);border-left:1px solid var(--border-color);padding-left:12px;font-size:11px;font-weight:600}.panel-header-nav{align-items:center;gap:4px;display:flex}.nav-link{color:var(--text-secondary);transition:color var(--transition-speed), background-color var(--transition-speed);border-radius:4px;padding:6px 16px;font-size:13px;font-weight:500;text-decoration:none}.nav-link:hover{color:var(--text-primary);background-color:var(--bg-secondary)}.nav-link.active{color:var(--text-primary);font-weight:600}.panel-header-right{align-items:center;gap:12px;display:flex}.icon-button{color:var(--text-secondary);cursor:pointer;width:36px;height:36px;transition:color var(--transition-speed), background-color var(--transition-speed);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.icon-button:hover,.icon-button.active{color:var(--text-primary);background-color:var(--bg-secondary)}.user-dropdown{background-color:var(--bg-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-color);z-index:1000;transform-origin:100% 0;border-radius:14px;width:260px;padding:0;animation:.2s cubic-bezier(.16,1,.3,1) dropdown-fade-in;position:absolute;top:46px;right:0;overflow:visible;box-shadow:0 10px 30px #00000026,0 1px 3px #0000000d}@keyframes dropdown-fade-in{0%{opacity:0;transform:scale(.95)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}.user-info{border-bottom:1px solid var(--border-color);background-color:var(--bg-tertiary);border-top-left-radius:13px;border-top-right-radius:13px;flex-direction:column;align-items:center;padding:20px 16px 16px;display:flex}.user-avatar-bubble{background:var(--text-primary);width:44px;height:44px;color:var(--bg-primary);letter-spacing:-.02em;border-radius:50%;justify-content:center;align-items:center;margin-bottom:10px;font-size:16px;font-weight:700;display:flex;box-shadow:0 4px 12px #00000014}.user-info-name{color:var(--text-primary);letter-spacing:-.01em;font-size:14px;font-weight:700}.user-info-email{color:var(--text-muted);margin-top:3px;font-size:11.5px}.session-config{border-bottom:1px solid var(--border-color);background-color:var(--bg-card);padding:16px}.session-config-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;opacity:.8;align-items:center;gap:5px;margin-bottom:10px;font-size:10px;font-weight:700;display:flex}.session-input-wrapper{align-items:center;gap:8px;display:flex}.session-input{background-color:var(--bg-secondary);border:1px solid var(--border-color);height:34px;color:var(--text-primary);transition:border-color var(--transition-speed), background-color var(--transition-speed);border-radius:6px;outline:none;padding:6px 12px;font-size:13px}.session-input:focus,.session-input:hover{border-color:var(--border-focus)}.session-input-number{text-align:center;width:75px}.session-input-select{cursor:pointer;flex:1;padding-right:12px}.session-config-help{color:var(--text-muted);margin-top:8px;font-size:10px;display:block}.dropdown-item{text-align:left;width:calc(100% - 16px);color:var(--text-secondary);cursor:pointer;transition:background-color var(--transition-speed), color var(--transition-speed), transform .1s;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;margin:4px 8px;padding:10px 12px;font-size:13px;font-weight:500;display:flex}.dropdown-item:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.dropdown-item:active{transform:scale(.98)}.dropdown-item-logout{color:var(--status-error);justify-content:center}.dropdown-item-logout:hover{background-color:var(--status-error-bg);color:var(--status-error)}.custom-select-wrapper{flex:1;position:relative}.custom-select-options{background-color:var(--bg-card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);z-index:1010;border-radius:8px;animation:.15s cubic-bezier(.16,1,.3,1) select-fade-in;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden}@keyframes select-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.custom-select-option{color:var(--text-secondary);cursor:pointer;transition:background-color var(--transition-speed), color var(--transition-speed);padding:8px 12px;font-size:13px}.custom-select-option:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.custom-select-option.active{background-color:var(--accent-color);font-weight:600;color:#fff!important}.panel-form-container{flex-direction:column;gap:24px;width:100%;max-width:380px;margin:auto;padding:40px 0;display:flex}.panel-form-header{text-align:left;margin-bottom:8px}.panel-form-header h2{letter-spacing:-.03em;margin-bottom:8px;font-size:28px;font-weight:600}.panel-input-group{flex-direction:column;gap:6px;width:100%;display:flex}.panel-label{color:var(--text-secondary);text-align:left;font-size:12.5px;font-weight:500}.panel-input-wrapper{align-items:center;display:flex;position:relative}.panel-input{width:100%;font-size:14px;font-family:var(--font-sans);background-color:var(--bg-secondary);color:var(--text-primary);transition:border-color var(--transition-speed), background-color var(--transition-speed);border:1px solid #0000;border-radius:8px;outline:none;padding:12px 16px}.panel-input:focus{border-color:var(--border-focus);background-color:var(--bg-primary)}.panel-input-icon{color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;right:16px}.panel-btn{cursor:pointer;font-size:13px;font-weight:600;font-family:var(--font-sans);letter-spacing:-.01em;border-radius:99px;outline:none;justify-content:center;align-items:center;gap:8px;width:100%;padding:10px 24px;text-decoration:none;transition:all .3s;display:inline-flex}.panel-btn:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.panel-btn:active{transform:translateY(0)}.panel-btn-primary{background-color:var(--text-primary);color:var(--bg-primary);border:1px solid var(--text-primary)}.panel-btn-primary:hover{background-color:var(--text-secondary);border-color:var(--text-secondary)}.panel-btn-secondary{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid #0000}.panel-btn-secondary:hover{background-color:var(--border-color);color:var(--text-primary)}.panel-btn-outline{color:var(--text-primary);border:2px solid var(--text-primary);background-color:#0000}.panel-btn-outline:hover{background-color:var(--text-primary);color:var(--bg-primary)}.panel-btn-text{color:var(--text-secondary);background:0 0;border:none;width:auto;padding:4px 8px}.panel-btn-text:hover{color:var(--text-primary);text-decoration:underline}.panel-btn-danger{background-color:var(--status-error);color:#fff;border:1px solid var(--status-error)}.panel-btn-danger:hover{background-color:#a81818;border-color:#a81818}.panel-toggle-group{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:20px;gap:2px;padding:3px;display:inline-flex}.panel-toggle-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:16px;padding:6px 16px;font-size:12px;font-weight:500;transition:all .2s}.panel-toggle-btn:hover{color:var(--text-primary)}.panel-toggle-btn.active{background-color:var(--bg-card);color:var(--text-primary);box-shadow:var(--shadow-sm)}.theme-toggle-container{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:18px;align-items:center;gap:2px;width:fit-content;height:36px;padding:2px;display:flex}.theme-toggle-btn{width:30px;height:30px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-speed) var(--transition-bezier);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.theme-toggle-btn.active{background-color:var(--bg-primary);color:var(--text-primary);box-shadow:var(--shadow-sm)}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;margin-top:32px;display:grid}.panel-card{background-color:var(--bg-card);background-image:var(--gradient-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(8px);transition:border-color .4s var(--transition-bezier), box-shadow .4s var(--transition-bezier), transform .4s var(--transition-bezier);text-align:left;border-radius:16px;flex-direction:column;gap:20px;padding:28px;display:flex}.panel-card:hover{border-color:var(--text-muted);box-shadow:var(--shadow-lg);transform:translateY(-4px)scale(1.005)}.panel-card-header{justify-content:space-between;align-items:flex-start;display:flex}.panel-card-title{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:11px;font-weight:600}.panel-card-value{letter-spacing:-.03em;color:var(--text-primary);align-items:baseline;margin-top:10px;font-size:56px;font-weight:500;line-height:1;display:flex}.panel-card-unit{color:var(--text-secondary);letter-spacing:normal;margin-left:6px;font-size:20px;font-weight:700}.panel-card-subtext{color:var(--text-secondary);margin-top:6px;font-size:16px;font-weight:700;line-height:1.4}.section-title{letter-spacing:-.03em;color:var(--text-primary);margin:0 0 4px;font-size:24px;font-weight:700}.section-subtitle{color:var(--text-secondary);margin:0;font-size:13.5px}.table-container{border:1px solid var(--border-color);background-color:var(--bg-card);width:100%;box-shadow:var(--shadow-sm);border-radius:12px;overflow-x:auto}.panel-table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}.panel-table th{color:var(--text-secondary);background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);text-transform:uppercase;letter-spacing:.08em;padding:16px 20px;font-size:11px;font-weight:600}.panel-table td{color:var(--text-primary);border-bottom:1px solid var(--border-color);padding:16px 20px;transition:background-color .2s}.panel-table tr:last-child td{border-bottom:none}.panel-table tr:hover td{background-color:var(--bg-secondary)}.panel-badge{letter-spacing:.02em;border-radius:12px;align-items:center;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.panel-badge-success{background-color:var(--status-success-bg);color:var(--status-success);border:1px solid var(--status-success-border)}.panel-badge-warning{background-color:var(--status-warning-bg);color:var(--status-warning);border:1px solid var(--status-warning-border)}.panel-badge-danger{background-color:var(--status-error-bg);color:var(--status-error);border:1px solid var(--status-error-border)}.panel-badge-info{background-color:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.page-header{justify-content:space-between;align-items:center;margin-bottom:32px;display:flex}.page-title-group h1{letter-spacing:-.03em;font-size:34px;font-weight:600}.page-title-group p{color:var(--text-secondary);margin-top:6px;font-size:13.5px}.panel-footer{border-top:1px solid var(--border-color);height:60px;color:var(--text-muted);background-color:var(--bg-primary);transition:background-color var(--transition-speed);justify-content:space-between;align-items:center;margin-top:auto;padding:0 40px;font-size:12px;display:flex}.panel-footer-links{gap:16px;display:flex}.panel-footer-link{color:var(--text-muted);text-decoration:none;transition:color .2s}.panel-footer-link:hover{color:var(--text-primary)}.panel-banner{border-radius:4px;align-items:center;gap:8px;margin-bottom:16px;padding:12px 16px;font-size:13px;display:flex}.panel-banner-error{background-color:var(--status-error-bg);border:1px solid var(--status-error-border);color:var(--status-error)}.panel-banner-success{background-color:var(--status-success-bg);border:1px solid var(--status-success-border);color:var(--status-success)}.panel-scrollbar::-webkit-scrollbar{width:6px;height:6px}.panel-scrollbar::-webkit-scrollbar-track{background:0 0}.panel-scrollbar::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:99px}.panel-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.4s forwards fadeIn}
