.container-full{width:100vw;height:100vh;position:relative;overflow:hidden;background:radial-gradient(ellipse at bottom,#1b2735,#090a0f)}.navbar{position:absolute;top:0;left:0;width:100%;padding:25px 20px;display:flex;justify-content:space-between;align-items:center;z-index:10;pointer-events:none;box-sizing:border-box;gap:20px}.logo-area{pointer-events:auto;background:#1e293bb3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:6px 12px;border-radius:16px;border:1px solid rgba(148,163,184,.2);display:flex;align-items:center;gap:8px;box-shadow:0 2px 10px #0000004d;cursor:default}.panda-logo:hover{transform:scale(1.2) rotate(5deg)}.title{font-size:16px;font-weight:700;color:#f1f5f9;line-height:1;text-shadow:0 0 10px rgba(255,255,255,.3);white-space:nowrap}.subtitle{font-size:12px;color:#94a3b8;margin-top:2px;white-space:nowrap}.nav-actions{display:flex;gap:10px;pointer-events:auto}.nav-btn{width:40px;height:40px;background:#1e293be6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;border:1px solid rgba(148,163,184,.2);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px #0000004d;cursor:pointer;transition:background .2s;color:#cbd5e1}.nav-btn:hover{background:#1e293b;color:#fff}.info-icon{font-size:18px;font-weight:700;color:#cbd5e1;font-family:serif}.search-container{pointer-events:none;position:absolute;top:90px;left:20px;z-index:10;width:350px}.search-bar{pointer-events:auto;background:#1e293be6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;border:1px solid rgba(148,163,184,.2);padding:0 12px;height:40px;display:flex;align-items:center;gap:8px;box-shadow:0 2px 10px #0000004d;box-sizing:border-box}.search-input{flex:1;font-size:14px;color:#f1f5f9;background:transparent;border:none;outline:none}.search-input::placeholder{color:#64748b}.search-results{pointer-events:auto;position:absolute;top:100%;left:0;width:100%;margin-top:8px;background:#1e293bf2;border-radius:12px;max-height:200px;box-shadow:0 5px 15px #00000080;border:1px solid rgba(148,163,184,.2);overflow-y:auto}.search-item{padding:12px 16px;border-bottom:1px solid rgba(148,163,184,.1);display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background .2s}.search-item:hover{background-color:#ffffff0d}.panda-name{font-size:14px;font-weight:600;color:#e2e8f0}.panda-stud{font-size:12px;color:#94a3b8;background:#ffffff1a;padding:2px 6px;border-radius:4px}.graph-canvas{width:100%;height:100%;display:block;touch-action:none}.zoom-controls{position:absolute;bottom:80px;right:20px;display:flex;flex-direction:column;gap:8px;z-index:10}.footer{position:absolute;bottom:10px;left:0;width:100%;text-align:center;color:#64748b;font-size:12px;pointer-events:none;z-index:10;text-shadow:0 0 2px rgba(0,0,0,.5)}.zoom-btn{width:40px;height:40px;background:#1e293bcc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;color:#e2e8f0;box-shadow:0 2px 10px #0000004d;border:1px solid rgba(148,163,184,.2);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.zoom-btn:hover{background-color:#ffffff1a}.info-panel-overlay{position:fixed;top:0;right:0;width:100%;height:100%;background:#00000080;z-index:100;display:flex;justify-content:flex-end}.info-panel{width:100%;max-width:400px;height:100%;padding:20px;box-sizing:border-box;background:#1e293b;color:#f1f5f9;overflow-y:auto;box-shadow:-5px 0 20px #00000080;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.info-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.info-title{font-size:24px;font-weight:800;color:#f8fafc;margin-bottom:4px;text-shadow:0 0 15px rgba(255,255,255,.2)}.info-stud{font-size:14px;color:#94a3b8;font-family:monospace}.header-actions{display:flex;align-items:center;gap:12px}.action-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;cursor:pointer;color:#94a3b8;transition:all .2s ease;background:#ffffff0d;border:1px solid rgba(148,163,184,.1)}.action-icon:hover{background:#ffffff26;color:#f8fafc;transform:translateY(-1px);box-shadow:0 4px 12px #0003;border-color:#fff3}.close-btn{display:flex;align-items:center;justify-content:center}.info-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid rgba(148,163,184,.1)}.label{color:#94a3b8;font-size:14px}.value{color:#e2e8f0;font-weight:500;font-size:14px;text-align:right;max-width:60%}.text-blue{color:#60a5fa;background:#3b82f633;padding:2px 6px;border-radius:4px;font-size:12px}.text-pink{color:#f472b6;background:#ec489933;padding:2px 6px;border-radius:4px;font-size:12px}.divider{height:1px;background:#94a3b81a;margin:20px 0}.section-title{font-size:16px;font-weight:700;color:#f1f5f9;margin-bottom:12px}.family-tree{margin-bottom:10px}.tree-container,.tree-branch{display:flex;flex-direction:column}.tree-children{display:flex;flex-direction:column;margin-left:20px;border-left:1px dashed rgba(148,163,184,.2);padding-left:10px}.tree-node{display:flex;align-items:center;margin-bottom:8px;position:relative;cursor:pointer}.tree-node.root-node{margin-bottom:12px;padding:8px;background:#ffffff0d;border-radius:6px;border:1px solid rgba(148,163,184,.2);justify-content:space-between;cursor:default}.node-line{position:absolute;left:-10px;top:50%;width:10px;height:1px;background:#94a3b84d}.node-content{flex:1;display:flex;justify-content:space-between;align-items:center;padding:6px 8px;background:#1e293b99;border-radius:4px;border:1px solid rgba(148,163,184,.1);transition:background .2s}.tree-node:not(.root-node):hover .node-content{background:#ffffff1a}.node-content.male{border-left:3px solid #60a5fa}.node-content.female{border-left:3px solid #f472b6}.node-role{font-size:10px;color:#94a3b8;display:block;margin-bottom:2px}.node-name{font-size:13px;font-weight:600;color:#e2e8f0}.node-stud{font-size:11px;color:#64748b;background:#0003;padding:1px 4px;border-radius:3px}.empty-tree{text-align:center;color:#64748b;font-size:12px;padding:10px}.parents-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.parent-card{background:#ffffff0d;border:1px solid rgba(148,163,184,.1);border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:4px;cursor:pointer;transition:background .2s}.parent-card:hover{background:#ffffff1a}.parent-label{font-size:12px;color:#94a3b8}.parent-name{font-size:14px;font-weight:600;color:#e2e8f0}.story-text{font-size:14px;color:#cbd5e1;line-height:1.6;display:block}.modal-mask{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box}.modal-content{background:#1e293b;width:100%;max-width:300px;border-radius:16px;padding:20px;box-shadow:0 10px 25px -5px #00000080;border:1px solid rgba(148,163,184,.2)}.modal-header{margin-bottom:12px;display:flex;justify-content:space-between;align-items:center}.modal-title{font-size:18px;font-weight:800;color:#f1f5f9}.modal-text{font-size:14px;color:#cbd5e1;line-height:1.5;display:block;margin-bottom:15px}.legend{background:#ffffff0d;padding:12px;border-radius:8px;margin-bottom:15px}.legend-item{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:13px;color:#cbd5e1}.dot{width:10px;height:10px;border-radius:50%;box-shadow:0 0 4px currentColor}.dot.blue{background:#60a5fa;border:1px solid #3b82f6;color:#60a5fa}.dot.pink{background:#f472b6;border:1px solid #ec4899;color:#f472b6}.dot.gray{background:#64748b;border:1px solid #475569;color:#64748b}.dot.yellow{background:#fef08a;border:1px solid #fde047;color:#fef08a}.instructions{font-size:13px;color:#94a3b8;margin-bottom:20px;display:flex;flex-direction:column;gap:4px}.modal-close-btn{background:#059669;color:#fff;border-radius:10px;font-size:15px;font-weight:600;padding:10px 0;box-shadow:0 2px 8px #05966966;width:100%;border:none;cursor:pointer}.modal-close-btn:hover{background:#047857}.relation-modal{max-width:400px}.close-icon{cursor:pointer;color:#94a3b8}.close-icon:hover{color:#fff}.relation-inputs{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.input-group{display:flex;flex-direction:column;gap:5px}.input-group label{font-size:12px;color:#94a3b8}.search-wrapper{position:relative}.search-wrapper input{width:100%;background:#0003;border:1px solid rgba(148,163,184,.2);padding:10px;border-radius:8px;color:#fff;font-size:14px;box-sizing:border-box}.dropdown{position:absolute;top:100%;left:0;width:100%;background:#1e293b;border:1px solid rgba(148,163,184,.2);border-radius:8px;margin-top:5px;z-index:10;box-shadow:0 4px 12px #00000080;max-height:150px;overflow-y:auto}.dropdown-item{padding:10px;cursor:pointer;font-size:14px;color:#e2e8f0;border-bottom:1px solid rgba(255,255,255,.05)}.dropdown-item:hover{background:#ffffff1a}.action-btn{width:100%;padding:12px;background:#059669;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:background .2s}.action-btn:hover{background:#059669}.action-btn:disabled{background:#475569;cursor:not-allowed;color:#94a3b8}.relation-result{margin-top:20px;padding:15px;background:#ffffff0d;border-radius:8px;border:1px solid rgba(148,163,184,.2);text-align:center}.result-label{font-size:16px;font-weight:700;color:#fbbf24;margin-bottom:10px}.lca-info{font-size:14px;color:#cbd5e1;margin-bottom:15px}.highlight{color:#fff;font-weight:600}.view-btn{background:transparent;border:1px solid #94a3b8;color:#cbd5e1;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:12px}.view-btn:hover{border-color:#fff;color:#fff}.feedback-modal{max-width:450px}.feedback-tabs{display:flex;background:#0003;border-radius:8px;padding:4px;margin-bottom:20px}.tab-item{flex:1;text-align:center;padding:8px;font-size:14px;color:#94a3b8;cursor:pointer;border-radius:6px;transition:all .2s}.tab-item.active{background:#3b82f6;color:#fff;font-weight:600}.feedback-form{display:flex;flex-direction:column;gap:15px;margin-bottom:20px;max-height:60vh;overflow-y:auto}.feedback-form textarea{width:100%;background:#0003;border:1px solid rgba(148,163,184,.2);padding:10px;border-radius:8px;color:#fff;font-size:14px;box-sizing:border-box;resize:vertical}.activity-list{display:flex;flex-direction:column;gap:15px;max-height:400px;overflow-y:auto;padding-right:5px}.activity-item{background:#ffffff0d;border-radius:8px;padding:12px;border-left:3px solid #60a5fa;display:flex;flex-direction:column;gap:4px}.activity-item.contribution{border-left-color:#34d399}.activity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.activity-date{font-size:11px;color:#94a3b8;background:#0003;padding:2px 6px;border-radius:4px}.activity-author{font-size:11px;color:#cbd5e1;font-weight:500}.activity-title{font-size:15px;font-weight:600;color:#f1f5f9}.activity-desc{font-size:13px;color:#cbd5e1;line-height:1.5}.loading-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0f172acc;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:2000}.loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top:3px solid #60a5fa;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.loading-text{color:#94a3b8;font-size:14px;font-weight:500}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:600px){.navbar{padding:15px 10px;gap:10px}.logo-area{padding:4px 8px;gap:6px}.panda-logo{height:28px}.title{font-size:14px}.subtitle{font-size:10px}.nav-btn{width:36px;height:36px}.search-container{top:80px;left:10px;width:calc(100% - 20px)}.search-bar{height:36px}.search-input{font-size:13px}}.birthday-modal{max-width:450px!important;animation:zoomInModal .3s cubic-bezier(.34,1.56,.64,1)}@keyframes zoomInModal{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.birthday-subtitle-text{font-size:13px;color:#94a3b8;margin-bottom:16px;display:block;text-align:center}.birthday-date-picker{display:flex;align-items:center;justify-content:space-between;background:#0003;padding:10px 14px;border-radius:10px;margin-bottom:20px;border:1px solid rgba(148,163,184,.1)}.birthday-label{font-size:14px;color:#cbd5e1;font-weight:500}.birthday-selectors{display:flex;gap:8px}.birthday-select{background:#1e293b;border:1px solid rgba(148,163,184,.3);color:#f1f5f9;padding:6px 12px;border-radius:6px;font-size:14px;cursor:pointer;outline:none;transition:all .2s ease}.birthday-select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.birthday-lists{max-height:45vh;overflow-y:auto;padding-right:6px;margin-bottom:16px}.birthday-lists::-webkit-scrollbar{width:6px}.birthday-lists::-webkit-scrollbar-track{background:#0000001a;border-radius:3px}.birthday-lists::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:3px}.birthday-lists::-webkit-scrollbar-thumb:hover{background:#94a3b880}.birthday-empty{text-align:center;color:#64748b;font-size:14px;padding:30px 10px;line-height:1.5}.birthday-section{margin-bottom:20px}.birthday-section-title{font-size:14px;font-weight:700;color:#f8fafc;margin-bottom:10px;display:flex;align-items:center;letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid rgba(148,163,184,.1);padding-bottom:4px}.birthday-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media(max-width:480px){.birthday-grid{grid-template-columns:1fr}}.birthday-card{background:#ffffff08;border:1px solid rgba(148,163,184,.15);border-radius:8px;padding:10px 12px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;gap:4px;position:relative;overflow:hidden}.birthday-card:after{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:transparent}.birthday-card.living.sex-male:after{background:#60a5fa}.birthday-card.living.sex-female:after{background:#f472b6}.birthday-card.living.sex-unknown:after{background:#94a3b8}.birthday-card.deceased:after{background:#fde047}.birthday-card:hover{background:#ffffff14;transform:translateY(-2px);box-shadow:0 4px 12px #0003;border-color:#ffffff40}.birthday-card.deceased{opacity:.75}.birthday-card.deceased:hover{opacity:1}.birthday-card-name-row{display:flex;justify-content:space-between;align-items:center;gap:6px}.birthday-name{font-size:14px;font-weight:600;color:#e2e8f0}.birthday-stud-badge{font-size:10px;color:#94a3b8;background:#0000004d;padding:1px 4px;border-radius:4px;font-family:monospace}.birthday-card-info-row{display:flex;justify-content:space-between;align-items:center;font-size:11px}.birthday-meta{color:#94a3b8}.birthday-meta-gender{color:#64748b;font-weight:500}.birthday-card.living.sex-male .birthday-meta-gender{color:#60a5fa}.birthday-card.living.sex-female .birthday-meta-gender{color:#f472b6}.celebration-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:9999;overflow:hidden}.celebration-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.celebration-banner{position:absolute;top:35%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;background:#0f172a26;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);border:1px solid rgba(255,255,255,.1);padding:30px 45px;border-radius:24px;box-shadow:0 10px 40px #00000080,0 0 30px #ec489926;text-align:center;pointer-events:auto;z-index:5;animation:bannerEntrance .8s cubic-bezier(.34,1.56,.64,1) forwards}.celebration-banner-icon{color:#ec4899;filter:drop-shadow(0 0 8px rgba(236,72,153,.6));margin-bottom:12px;animation:iconBounce 2s ease-in-out infinite}.celebration-banner-title{font-size:32px;font-weight:800;margin:0 0 8px;background:linear-gradient(135deg,#ffd23f,#ec4899,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-fill-color:transparent;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3));letter-spacing:1px}.celebration-banner-subtitle{font-size:18px;font-weight:500;margin:0;color:#e2e8f0;text-shadow:0 2px 4px rgba(0,0,0,.5);letter-spacing:.5px}.celebration-skip-btn{position:absolute;top:24px;right:24px;z-index:10;pointer-events:auto;background:#0f172a99;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.15);color:#cbd5e1;padding:8px 16px;border-radius:20px;font-size:13px;font-weight:500;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #00000040;display:flex;align-items:center;gap:6px}.celebration-skip-btn:hover{background:#0f172ad9;border-color:#ffffff4d;color:#fff;transform:translateY(-1px);box-shadow:0 6px 16px #00000059}.celebration-skip-btn:active{transform:translateY(1px)}@keyframes bannerEntrance{0%{opacity:0;transform:translate(-50%,-60%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes iconBounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-6px) scale(1.05)}}@media(max-width:600px){.celebration-banner{width:85%;padding:20px 25px;top:25%}.celebration-banner-title{font-size:22px}.celebration-banner-subtitle{font-size:14px}.celebration-banner-icon{width:32px;height:32px}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;background-color:#0f172a;color:#f8fafc}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}#root{width:100%;height:100vh}.login-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background-color:#0f172a;color:#e2e8f0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}.login-card{background:#1e293bb3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:40px;border-radius:16px;border:1px solid rgba(148,163,184,.2);box-shadow:0 4px 20px #00000080;width:100%;max-width:400px;text-align:center}.login-title{font-size:1.8rem;font-weight:700;margin-bottom:2rem;color:#f1f5f9}.login-form{display:flex;flex-direction:column;gap:1.5rem;margin:10px;padding:10px}.form-group{text-align:left}.form-label{display:block;margin-bottom:.5rem;font-size:.9rem;color:#94a3b8}.form-input{width:100%;padding:12px;background:#0f172a99;border:1px solid rgba(148,163,184,.2);border-radius:8px;color:#f8fafc;font-size:1rem;transition:all .2s;box-sizing:border-box}.form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.login-btn{width:100%;padding:12px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.login-btn:hover:not(:disabled){background:#2563eb}.login-btn:disabled{opacity:.7;cursor:not-allowed}.error-msg{color:#ef4444;font-size:.9rem;margin-top:1rem;padding:8px;background:#ef44441a;border-radius:6px}.dashboard-container{position:absolute;top:0;left:0;width:100vw;height:100vh;background-color:#0f172a;color:#f8fafc;display:flex;flex-direction:column;z-index:50;overflow-y:auto;overflow-x:hidden}.dashboard-header{padding:20px 40px 20px 20px;border-bottom:1px solid rgba(255,255,255,.1);background:#0f172acc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;gap:20px;z-index:60;flex-shrink:0}.header-top{display:flex;align-items:center;justify-content:space-between}.header-title-area{display:flex;align-items:center;gap:20px}.header-title{font-size:1.5rem;font-weight:700;margin:0}.dashboard-logo-container{display:flex;align-items:center}.logo-area{pointer-events:auto;background:#1e293bb3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:6px 12px;border-radius:16px;border:1px solid rgba(148,163,184,.2);display:flex;align-items:center;gap:8px;box-shadow:0 2px 10px #0000004d;cursor:default;text-decoration:none}.logo-icon{padding:3px;display:flex;align-items:center;justify-content:center}.panda-logo{height:35px;width:auto;border-radius:20%;transition:transform .3s ease;filter:drop-shadow(0 0 5px rgba(255,255,255,.2))}.logo-area:hover .panda-logo{transform:scale(1.2) rotate(5deg)}.logo-text{display:flex;flex-direction:column}.title{font-size:16px;font-weight:700;color:#f1f5f9;line-height:1;text-shadow:0 0 10px rgba(255,255,255,.3)}.subtitle{font-size:12px;color:#94a3b8;margin-top:2px}.stat-badge{padding:4px 12px;background:#ffffff1a;border-radius:20px;font-size:.9rem}.filters-container{display:flex;flex-direction:column;gap:15px}.filter-row{display:flex;gap:25px;flex-wrap:wrap}.filter-row.bottom-row{align-items:flex-end}.filter-group-sm{min-width:120px}.filter-group-md{min-width:200px}.filter-group-flex{flex:1;min-width:200px}.filter-label{font-size:.8rem;color:#94a3b8;margin-bottom:4px;display:block}.input-range-container{display:flex;gap:8px}.input-base{padding:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff}.input-sm{width:80px}.input-full{width:100%}.range-separator{align-self:center;color:#666}.reset-btn{padding:4px 12px;background:#059669;color:#fff;border:none;box-shadow:0 2px 8px #05966966;border-radius:8px;cursor:pointer;font-size:.8rem;transition:all .2s;height:34px}.reset-btn:hover{background:#047857}.main-content{flex:1;display:flex;flex-wrap:wrap;margin-top:20px;gap:20px;padding:0 20px 20px;z-index:50;position:relative}.left-column{flex:1 1 500px;display:flex;flex-direction:column;gap:20px}.right-column{flex:1 1 500px;position:relative;overflow:hidden;border-radius:12px;border:1px solid rgba(255,255,255,.05);background:#ffffff03;min-height:500px;display:flex;flex-direction:column}@media(min-width:1050px){.main-content{display:block}.left-column{width:calc(50% - 10px)}.right-column{position:absolute;top:0;bottom:20px;right:20px;width:calc(50% - 30px);height:auto;min-height:0}}.stats-panels{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.stat-card{background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:12px 15px}.stat-card-title{margin:0 0 10px;font-size:.9rem;color:#ffffffb3}.stat-items-container{display:flex;gap:15px}.stat-item{flex:1}.stat-value{font-size:1.2rem;font-weight:700}.stat-label{font-size:.75rem;color:#ffffff80}.chart-container-card{background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:20px;display:flex;flex-direction:column;min-height:300px}.chart-header{display:flex;justify-content:space-between;margin-bottom:15px}.chart-title{font-size:1rem;font-weight:700;margin:0;display:flex;align-items:center;gap:8px;color:#f8fafc}.chart-body{flex:1;width:100%;overflow:hidden}.chart-empty{display:flex;height:100%;align-items:center;justify-content:center;color:#64748b}.panda-table-container{width:100%;height:100%;overflow-y:auto;overflow-x:auto}.panda-table{width:100%;min-width:600px;border-collapse:collapse;font-size:.9rem;color:#e2e8f0}.panda-table th{position:sticky;top:0;background:#1e293b;z-index:10;text-align:left;padding:12px 16px;font-weight:600;color:#94a3b8;border-bottom:1px solid rgba(255,255,255,.1);white-space:nowrap}.panda-table td{padding:10px 16px;border-bottom:1px solid rgba(255,255,255,.05)}.panda-table tr:hover{background:#ffffff08}.panda-table tr:last-child td{border-bottom:none}
