@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--color-primary: #f7a600;--color-primary-hover: #d88f00;--color-primary-dark: #b87800;--color-primary-light: rgba(247, 166, 0, .12);--color-primary-glow: rgba(247, 166, 0, .3);--color-success: #22c55e;--color-success-dark: #16a34a;--color-success-light: rgba(34, 197, 94, .12);--color-warning: #f97316;--color-warning-dark: #ea580c;--color-warning-light: rgba(249, 115, 22, .12);--color-error: #ef4444;--color-error-dark: #dc2626;--color-error-light: rgba(239, 68, 68, .12);--color-info: #06b6d4;--color-info-dark: #0891b2;--color-info-light: rgba(6, 182, 212, .12);--color-indigo: #6366f1;--color-indigo-dark: #4f46e5;--color-indigo-light: rgba(99, 102, 241, .12);--color-purple: #a855f7;--chart-1: #4f46e5;--chart-2: #f97316;--chart-3: #06b6d4;--chart-4: #22c55e;--chart-5: #ef4444;--chart-6: #a855f7;--chart-7: #facc15;--chart-8: #fb7185;--color-bg: #faf9f7;--color-bg-2: #f2f1ee;--color-bg-card: #ffffff;--color-bg-hover: #fffbf5;--color-bg-subtle: #f8f9fa;--color-text: #2b2b2b;--color-text-muted: #6b7280;--color-text-light: #9ca3af;--color-text-inverted: #ffffff;--color-border: #e3e1dc;--color-border-strong: #c5cdd8;--color-border-focus: var(--color-primary);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--text-xs: clamp(.68rem, 1.8vw, .78rem);--text-sm: clamp(.78rem, 2vw, .875rem);--text-base: clamp(.875rem,2.2vw, 1rem);--text-lg: clamp(1rem, 3vw, 1.125rem);--text-xl: clamp(1.1rem, 3.5vw, 1.375rem);--text-2xl: clamp(1.25rem, 4.5vw, 1.75rem);--text-3xl: clamp(1.5rem, 5.5vw, 2.25rem);--text-4xl: clamp(1.75rem, 6vw, 2.75rem);--text-metric: clamp(1.4rem, 4vw, 2.5rem);--text-metric-sm: clamp(1rem, 2.5vw, 1.8rem);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-full: 9999px;--shadow-xs: 0 1px 3px rgba(0, 0, 0, .08);--shadow-sm: 0 2px 6px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-xl: 0 16px 40px rgba(0, 0, 0, .14);--shadow-primary: 0 6px 18px var(--color-primary-glow);--ease-spring: cubic-bezier(.22, 1, .36, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-std: cubic-bezier(.4, 0, .2, 1);--dur-fast: .16s;--dur-mid: .28s;--dur-slow: .48s;--transition: all var(--dur-mid) var(--ease-spring);--icon-sm: 1rem;--icon-md: 1.25rem;--icon-lg: 1.5rem;--min-touch: 44px;--z-dropdown: 100;--z-sticky: 200;--z-modal: 300;--z-toast: 400;--z-header: 1000}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{touch-action:manipulation;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}html,body{width:100%;min-width:320px;min-height:100vh;overflow-x:hidden;background:var(--color-bg);color:var(--color-text)}body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-size:var(--text-base);line-height:1.6;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}#root{width:100%;min-height:100vh}img,video,svg,iframe{max-width:100%;display:block}svg{overflow:visible}a{color:var(--color-primary);text-decoration:none;font-weight:500;transition:color var(--dur-fast) var(--ease-std)}a:hover{color:var(--color-primary-hover)}button,a,[role=button]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}@media(pointer:coarse){button,a,[role=button],select,input{min-height:var(--min-touch)}}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:var(--color-bg-2);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:#d0cec9;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}h1,h2,h3,h4,h5,h6{font-family:Inter,system-ui,sans-serif;font-weight:700;line-height:1.25;letter-spacing:-.02em;color:var(--color-text);overflow-wrap:break-word;word-break:break-word}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{line-height:1.7;color:var(--color-text);overflow-wrap:break-word}small{font-size:var(--text-xs)}strong{font-weight:700}.section-title{font-size:var(--text-2xl);font-weight:800;color:var(--color-text);letter-spacing:-.02em;margin:0}.section-subtitle{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:var(--space-1)}.app-container{width:100%;min-height:100vh;background:var(--color-bg)}.page-section{position:relative;width:100%;max-width:1500px;margin:0 auto;padding:clamp(1rem,3vw,2.5rem) clamp(.75rem,3vw,3rem);background:linear-gradient(135deg,#ffa5002e,#ff8c001a);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-radius:var(--radius-lg);border:1px solid rgba(255,200,120,.35);box-shadow:0 8px 32px #00000040,0 0 20px #ff8c0033;font-family:Inter,system-ui,sans-serif;overflow:visible;animation:ds-page-slide-in .28s var(--ease-spring) both}.page-section:before{content:"";position:absolute;inset:0;height:140px;background:linear-gradient(to bottom,#00000073,#0000);border-radius:var(--radius-lg) var(--radius-lg) 0 0;pointer-events:none;z-index:0}.page-section>h1,.page-section .page-title{font-size:clamp(1.1rem,5vw,2rem);font-weight:800;color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.5);margin-bottom:var(--space-3);position:relative;z-index:1}.action-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3);padding-bottom:var(--space-5);border-bottom:2px solid var(--color-border);margin-bottom:var(--space-5)}.action-bar-left,.action-bar-right{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.grid-layout{display:flex;flex-wrap:wrap;gap:var(--space-4);width:100%}.cards-row{display:flex;flex-wrap:wrap;gap:var(--space-4);width:100%;margin-bottom:var(--space-6)}.cards-row.cols-2>*{flex:1 1 calc(50% - var(--space-4));min-width:min(220px,100%)}.cards-row.cols-3>*{flex:1 1 calc(33.33% - var(--space-4));min-width:min(200px,100%)}.cards-row.cols-4>*{flex:1 1 calc(25% - var(--space-4));min-width:min(180px,100%)}.cards-row.cols-5>*{flex:1 1 calc(20% - var(--space-4));min-width:min(160px,100%)}.flex-auto-row{display:flex;flex-wrap:wrap;gap:var(--space-4)}.flex-auto-row>*{flex:1 1 min(200px,100%)}.dual-panel{display:flex;flex-wrap:wrap;gap:var(--space-5)}.dual-panel>*{flex:1 1 min(340px,100%)}.filter-group{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end;width:100%}.filter-group>.filter-item{flex:1 1 min(180px,100%);display:flex;flex-direction:column;gap:var(--space-1)}.card{background:var(--color-bg-card);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-md);overflow:visible;transition:transform var(--dur-mid) var(--ease-spring),box-shadow var(--dur-mid) var(--ease-spring)}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.card-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid var(--color-border)}.card-header h2,.card-header h3,.card-title{font-size:var(--text-xl);font-weight:700;color:var(--color-text);margin:0}.card-body{padding:var(--space-5)}.card-footer{padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border);background:var(--color-bg-subtle);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.metric-card{border-radius:var(--radius-lg);padding:clamp(.875rem,2vw,1.25rem);box-shadow:var(--shadow-md);position:relative;overflow:hidden;transition:transform var(--dur-mid) var(--ease-spring),box-shadow var(--dur-mid) var(--ease-spring)}.metric-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.metric-card-label{font-size:var(--text-sm);font-weight:600;line-height:1.3;word-break:break-word;overflow-wrap:break-word;color:#ffffffe6;margin-bottom:var(--space-2)}.metric-card-value{font-size:var(--text-metric);font-weight:800;line-height:1;letter-spacing:-.02em;color:#fff;word-break:break-word;overflow-wrap:break-word}.metric-card-value.sm{font-size:var(--text-metric-sm)}.content-card{background:#fff9;border-radius:var(--radius-lg);padding:clamp(1rem,2.5vw,2rem);margin:var(--space-6) 0;box-shadow:var(--shadow-md);border:1px solid rgba(247,166,0,.2);transition:var(--transition)}.content-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px);border-color:#f7a60066}.pillar-card{background:var(--color-bg-card);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:clamp(.875rem,2vw,1.25rem);text-decoration:none;color:inherit;display:flex;flex-direction:column;min-width:0;overflow:hidden;transition:box-shadow var(--dur-mid) var(--ease-spring),transform var(--dur-fast) var(--ease-spring),border-color var(--dur-mid) var(--ease-spring)}.pillar-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px);border-color:var(--color-primary-dark);color:inherit}.pillar-card-title{display:flex;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-3);font-size:var(--text-base);font-weight:700;color:#1a2744;line-height:1.3;word-break:break-word;overflow-wrap:break-word}.pillar-card-icon{font-size:var(--text-lg);flex-shrink:0;margin-top:2px}.pillar-card-title-text{color:#1a2744;min-width:0;word-break:break-word}.pillar-card-title-text u{text-decoration-color:var(--color-primary-dark);text-underline-offset:3px;text-decoration-thickness:2px}.pillar-card-list{list-style:disc;padding-left:1.1rem;margin:0;font-size:var(--text-xs);line-height:1.6;color:#333;word-break:break-word;overflow-wrap:break-word}.pillar-card-list li{margin-bottom:var(--space-1)}.pillar-card-list li:last-child{margin-bottom:0}.pillars-row{display:flex;flex-wrap:wrap;gap:clamp(.5rem,1.5vw,.875rem);margin:var(--space-3) 0}.pillars-row>.pillar-card{flex:1 1 calc(33.33% - 1rem);min-width:min(260px,100%)}.table-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:var(--color-bg-card);scrollbar-width:thin;scrollbar-color:rgba(247,166,0,.4) var(--color-bg-2)}.table-wrapper::-webkit-scrollbar{height:6px}.table-wrapper::-webkit-scrollbar-thumb{background:#f7a60066;border-radius:var(--radius-full)}.table-wrapper::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}.data-table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--text-sm);isolation:isolate}.data-table thead{position:sticky;top:0;z-index:20}.data-table thead tr{background:var(--color-indigo)}.data-table th{padding:clamp(.5rem,1.5vw,.75rem) clamp(.5rem,2vw,1rem);text-align:left;font-weight:600;font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:#fff;white-space:nowrap}.data-table th:first-child{border-radius:var(--radius-md) 0 0 0}.data-table th:last-child{border-radius:0 var(--radius-md) 0 0}.data-table tbody tr{transition:background-color var(--dur-fast) var(--ease-std);border-bottom:1px solid var(--color-border)}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:nth-child(2n){background:#f7a6000a}.data-table tbody tr:hover{background:#fffbeb}.data-table td{padding:clamp(.4rem,1.2vw,.65rem) clamp(.5rem,2vw,1rem);vertical-align:middle;overflow-wrap:break-word;word-break:break-word}.data-table td.num,.data-table th.num{text-align:right;font-variant-numeric:tabular-nums}.table-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.dist-card-list{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.dist-card{display:flex;justify-content:space-between;align-items:center;background:var(--color-bg-card);border-radius:var(--radius-md);padding:clamp(.6rem,2vw,.875rem);border:1px solid var(--color-border);box-shadow:var(--shadow-xs)}.dist-card-name{display:flex;align-items:center;gap:var(--space-2);font-weight:600;font-size:var(--text-sm);color:var(--color-text)}.dist-card-stats{text-align:right}.dist-card-count{font-weight:700;font-size:var(--text-base);color:var(--color-indigo)}.dist-card-pct{font-size:var(--text-xs);color:var(--color-text-muted)}.input-field,.select-field{width:100%;background:var(--color-bg-card);color:var(--color-text);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:clamp(.55rem,1.5vw,.75rem) clamp(.75rem,2vw,1rem);font-size:var(--text-sm);font-weight:500;font-family:inherit;line-height:1.5;box-sizing:border-box;transition:border-color var(--dur-mid) var(--ease-spring),box-shadow var(--dur-mid) var(--ease-spring),background-color var(--dur-mid) var(--ease-spring)}.input-field::placeholder{color:var(--color-text-light)}.input-field:hover,.select-field:hover{border-color:var(--color-primary);background:var(--color-bg-hover)}.input-field:focus,.select-field:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-light);background:var(--color-bg-card)}.select-field{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23f7a600' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:calc(100% - 14px) center;background-size:16px;padding-right:2.75rem}.select-field:active{transform:scale(.99)}.select-field option{background:var(--color-bg-card);color:var(--color-text);font-weight:500}.field-label{font-size:var(--text-xs);font-weight:600;color:var(--color-text);letter-spacing:.02em;margin-bottom:var(--space-1);display:block}.filter-panel{background:var(--color-bg-card);border-radius:var(--radius-lg);padding:clamp(.875rem,2.5vw,1.5rem);margin-bottom:var(--space-6);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);width:100%}.filter-panel-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-3);padding-bottom:var(--space-4);margin-bottom:var(--space-4);border-bottom:2px solid var(--color-border)}.filter-panel-header h3{font-size:var(--text-base);font-weight:700;color:var(--color-text);margin:0}.view-selector{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.view-selector-label{font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted);white-space:nowrap}.chart-type-select{background:var(--color-bg-card);color:var(--color-text);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:clamp(.5rem,1.5vw,.75rem) clamp(.75rem,2vw,1.2rem);padding-right:3.25rem;font-size:var(--text-sm);font-weight:600;cursor:pointer;appearance:none;min-width:min(260px,100%);width:100%;font-family:inherit;box-shadow:var(--shadow-sm);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23f7a600' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:calc(100% - 14px) center;background-size:18px;transition:var(--transition)}.chart-type-select:hover{border-color:var(--color-primary);background-color:var(--color-bg-hover);box-shadow:var(--shadow-primary);transform:translateY(-1px)}.chart-type-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-light)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:clamp(.5rem,1.5vw,.7rem) clamp(.875rem,2.5vw,1.4rem);border-radius:var(--radius-md);border:2px solid transparent;font-size:var(--text-sm);font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap;min-height:var(--min-touch);text-decoration:none;transition:background-color var(--dur-mid) var(--ease-spring),border-color var(--dur-mid) var(--ease-spring),color var(--dur-mid) var(--ease-spring),transform var(--dur-fast) var(--ease-spring),box-shadow var(--dur-mid) var(--ease-spring);will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.btn:active{transform:scale(.97)}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:var(--shadow-primary)}.btn-primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:0 6px 20px #f7a60073;transform:translateY(-2px);color:#fff}.btn-secondary{background:var(--color-bg-card);color:var(--color-text);border-color:var(--color-border);box-shadow:var(--shadow-xs)}.btn-secondary:hover{border-color:var(--color-primary);background:var(--color-bg-hover);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-ghost{background:transparent;color:var(--color-text-muted);border-color:transparent}.btn-ghost:hover{background:var(--color-bg-2);color:var(--color-text)}.btn-danger{background:var(--color-error);color:#fff;border-color:var(--color-error)}.btn-danger:hover{background:var(--color-error-dark);transform:translateY(-2px);box-shadow:0 6px 18px #ef444459}.btn-success{background:var(--color-success);color:#fff;border-color:var(--color-success)}.btn-success:hover{background:var(--color-success-dark);transform:translateY(-2px)}.btn-sm{padding:.4rem .875rem;font-size:var(--text-xs);min-height:34px;border-radius:var(--radius-sm)}.btn-icon{padding:var(--space-2);width:var(--min-touch);height:var(--min-touch);border-radius:var(--radius-md)}.btn:focus-visible{outline:3px solid var(--color-primary-glow);outline-offset:2px}.tab-btn{border:2px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text);padding:clamp(.45rem,1.2vw,.65rem) clamp(.75rem,2vw,1.4rem);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;cursor:pointer;font-family:inherit;transition:var(--transition);white-space:nowrap}.tab-btn:hover{background:var(--color-bg-hover);border-color:var(--color-primary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.tab-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:var(--shadow-primary);transform:translateY(-1px)}.tab-group{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-6)}.toggle-group{display:flex;gap:3px;background:#e9ecef;padding:3px;border-radius:var(--radius-sm);flex-wrap:wrap}.toggle-btn{flex:1;min-width:52px;padding:5px 10px;border:none;border-radius:5px;cursor:pointer;font-size:var(--text-xs);font-weight:600;font-family:inherit;color:#555;background:transparent;transition:var(--transition);white-space:nowrap;text-align:center}.toggle-btn.active{background:var(--color-bg-card);color:var(--color-indigo);box-shadow:0 2px 6px #0000001a}.pill-btn{border:1px solid var(--color-border);background:var(--color-bg-subtle);color:var(--color-text);padding:.3rem .875rem;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;cursor:pointer;font-family:inherit;transition:var(--transition)}.pill-btn:hover{background:var(--color-bg-card);border-color:var(--color-primary);box-shadow:var(--shadow-xs)}.pill-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 4px 12px var(--color-primary-glow)}.page-action-btn{background:#fff8eca6;color:var(--color-text);border:1.5px solid rgba(244,247,251,.8);border-radius:var(--radius-sm);padding:clamp(.35rem,1vw,.5rem) clamp(.625rem,2vw,.9rem);font-size:var(--text-xs);font-weight:600;display:inline-flex;align-items:center;gap:var(--space-1);cursor:pointer;white-space:nowrap;backdrop-filter:blur(10px) saturate(1.6);-webkit-backdrop-filter:blur(10px) saturate(1.6);font-family:inherit;transition:var(--transition);min-height:36px}.page-action-btn:hover{background:#fff8eccc;transform:translateY(-1px);color:var(--color-text)}.chart-section{background:var(--color-bg-card);border-radius:var(--radius-lg);padding:clamp(1rem,2.5vw,1.5rem);border:1px solid var(--color-border);box-shadow:var(--shadow-md);position:relative;overflow:visible}.chart-section+.chart-section{margin-top:var(--space-6)}.chart-header{margin-bottom:var(--space-5)}.chart-header h2,.chart-header h3,.chart-heading{font-size:var(--text-xl);font-weight:700;color:var(--color-text);margin-bottom:var(--space-1);letter-spacing:-.01em}.chart-description{font-size:var(--text-sm);color:var(--color-text-muted)}.chart-container{position:relative;background:var(--color-bg-card);border-radius:var(--radius-md);padding:clamp(.875rem,2vw,1.5rem);margin-top:var(--space-3);border:1px solid var(--color-border);min-height:300px;overflow:visible}.chart-container.clickable{cursor:zoom-in;transition:transform var(--dur-mid) var(--ease-spring),box-shadow var(--dur-mid) var(--ease-spring)}.chart-container.clickable:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.chart-container.clickable:after{content:"⤢ Click to Expand";position:absolute;top:10px;right:10px;background:#0000008c;color:#fff;padding:3px 8px;border-radius:4px;font-size:var(--text-xs);opacity:0;transition:opacity var(--dur-fast) var(--ease-std);pointer-events:none;z-index:10}.chart-container.clickable:hover:after{opacity:1}.chart-view{opacity:0;visibility:hidden;position:absolute;inset:0;padding:clamp(1rem,2.5vw,1.5rem);transform:translateY(12px) scale(.99);pointer-events:none;transition:opacity var(--dur-slow) var(--ease-spring),transform var(--dur-slow) var(--ease-spring),visibility 0s linear var(--dur-slow)}.chart-view.active{opacity:1;visibility:visible;position:relative;transform:translateY(0) scale(1);pointer-events:auto;transition:opacity var(--dur-slow) var(--ease-spring),transform var(--dur-slow) var(--ease-spring),visibility 0s linear 0s}.chart-wrapper{position:absolute;inset:0;width:100%;min-height:300px;opacity:0;visibility:hidden;transform:scale(.97) translateY(8px);pointer-events:none;transition:opacity var(--dur-slow) var(--ease-spring),transform var(--dur-slow) var(--ease-spring),visibility 0ms linear var(--dur-slow);will-change:transform,opacity;-webkit-backface-visibility:hidden}.chart-wrapper.active{position:relative;opacity:1;visibility:visible;transform:scale(1) translateY(0);pointer-events:auto;transition:opacity var(--dur-slow) var(--ease-spring),transform var(--dur-slow) var(--ease-spring),visibility 0ms linear 0ms}.chart-wrapper.inactive{position:absolute}.recharts-responsive-container{max-width:100%!important;overflow:visible!important}.recharts-surface text,.recharts-layer text{word-break:normal!important;overflow-wrap:normal!important;white-space:nowrap!important}.chart-legend{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center;margin-top:var(--space-5)}.legend-item{display:flex;align-items:center;gap:var(--space-2);padding:.45rem .875rem;background:var(--color-bg-2);border-radius:var(--radius-sm);border:1px solid var(--color-border);font-size:var(--text-xs);font-weight:600;transition:var(--transition);will-change:transform}.legend-item:hover{background:var(--color-bg-card);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.chart-tooltip{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.65rem 1rem;box-shadow:var(--shadow-lg);font-size:var(--text-xs)}.chart-total{text-align:center;font-size:var(--text-base);font-weight:600;color:var(--color-text);margin-top:var(--space-4)}.chart-blurred .recharts-wrapper{filter:blur(2px);opacity:.45;transition:filter .4s var(--ease-std),opacity .4s var(--ease-std)}.chart-wrapper,.chart-view,.select-field,.chart-type-select,.tab-btn,.toggle-btn,.legend-item{-webkit-font-smoothing:antialiased}.modal-overlay{position:fixed;inset:0;background:#0000008c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:ds-fade-in .2s var(--ease-std) both}.modal{background:var(--color-bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-width:640px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:ds-scale-in .22s var(--ease-spring) both}.modal-lg{max-width:900px}.modal-full{max-width:98vw;max-height:96vh}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border);flex-shrink:0}.modal-header h2,.modal-title{font-size:var(--text-xl);font-weight:700;margin:0;color:var(--color-text)}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-muted);padding:var(--space-1);border-radius:var(--radius-sm);display:flex;align-items:center;transition:color var(--dur-fast),background var(--dur-fast);min-height:auto}.modal-close:hover{color:var(--color-error);background:var(--color-error-light)}.modal-body{padding:var(--space-6);overflow-y:auto;flex:1}.modal-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border);display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);flex-shrink:0}.app-header-container{width:100%;position:fixed;top:0;left:0;z-index:var(--z-header);background:transparent;box-shadow:none;pointer-events:none}.main-header{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:clamp(.5rem,1.5vw,.75rem) clamp(.75rem,2.5vw,1.25rem);background:var(--color-bg);border-bottom:1px solid var(--color-border);position:relative;z-index:20;pointer-events:auto;box-shadow:var(--shadow-xs)}.header-left,.header-right{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.header-center{flex:1;min-width:0}.logo-link{display:flex;align-items:center;gap:var(--space-2);text-decoration:none;color:inherit;min-width:0;overflow:hidden}.logo-image{height:clamp(24px,5vw,36px);width:auto;object-fit:contain;flex-shrink:0}.logo-text{display:flex;flex-direction:column;min-width:0}.logo-title{font-size:var(--text-sm);font-weight:700;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logo-tagline{font-size:var(--text-xs);color:var(--color-text-muted);white-space:nowrap}.main-navbar{width:100%;display:flex;justify-content:space-around;flex-wrap:nowrap;overflow-x:auto;background:var(--color-bg-2);border-bottom:1px solid var(--color-border);position:relative;z-index:10;pointer-events:auto;transition:transform var(--dur-mid) var(--ease-std);box-shadow:var(--shadow-xs);scrollbar-width:none}.main-navbar::-webkit-scrollbar{display:none}.main-navbar.navbar-hidden{transform:translateY(-100%)}.nav-link{display:flex;align-items:center;gap:var(--space-1);padding:.6rem .875rem;font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);white-space:nowrap;text-decoration:none;border-bottom:2px solid transparent;transition:color var(--dur-fast) var(--ease-std),border-color var(--dur-fast) var(--ease-std);cursor:pointer}.nav-link:hover,.nav-link.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-1);font-size:var(--text-xs);color:var(--color-text-muted);padding:var(--space-2) 0}.breadcrumb a{color:var(--color-text-muted);font-weight:500;text-decoration:none}.breadcrumb a:hover{color:var(--color-primary)}.breadcrumb-sep{color:var(--color-text-light)}.breadcrumb-current{color:var(--color-text);font-weight:600}.hamburger-btn{background:none;border:none;cursor:pointer;padding:var(--space-2);display:flex;flex-direction:column;gap:4px;border-radius:var(--radius-sm);min-height:auto;transition:background var(--dur-fast)}.hamburger-btn:hover{background:var(--color-bg-2)}.hamburger-line{width:22px;height:2px;background:var(--color-text);border-radius:2px;transition:var(--transition)}.drawer-overlay{position:fixed;inset:0;background:#0006;z-index:calc(var(--z-header) - 1);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.drawer{position:fixed;top:0;left:0;width:min(80vw,280px);height:100vh;height:100dvh;background:var(--color-bg);box-shadow:var(--shadow-xl);z-index:var(--z-header);overflow-y:auto;display:flex;flex-direction:column;transition:transform var(--dur-mid) var(--ease-spring)}.user-avatar{width:clamp(32px,5vw,40px);height:clamp(32px,5vw,40px);border-radius:50%;border:2px solid var(--color-primary);object-fit:cover;cursor:pointer;flex-shrink:0}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:clamp(2rem,5vw,4rem) clamp(1rem,3vw,2rem);color:var(--color-text-muted)}.empty-state-icon{font-size:clamp(2rem,5vw,3rem);margin-bottom:var(--space-4);opacity:.6}.empty-state-title{font-size:var(--text-lg);font-weight:600;color:var(--color-text);margin-bottom:var(--space-2)}.empty-state-text{font-size:var(--text-sm);max-width:340px}.chart-empty-overlay{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;font-size:var(--text-base);font-weight:500;color:#6c757d;background:#ffffffeb;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:var(--radius-md);opacity:1;transform:translateY(0) scale(1);visibility:visible;transition:opacity .4s var(--ease-std),transform .4s var(--ease-std),visibility 0s linear 0s}.chart-empty-overlay.hidden{opacity:0;transform:translateY(8px) scale(.98);visibility:hidden;pointer-events:none;transition:opacity .5s var(--ease-std) .1s,transform .5s var(--ease-std) .1s,visibility 0s linear .6s}.chart-empty-overlay p{margin:0;padding:.875rem 1.75rem;background:var(--color-bg-card);border-radius:var(--radius-sm);border:1px solid var(--color-border);box-shadow:var(--shadow-md)}.no-data{padding:var(--space-10);text-align:center;color:var(--color-text-muted);font-size:var(--text-base)}.loader-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(2rem,5vw,3.5rem);min-height:240px;gap:var(--space-4)}.spinner{width:clamp(36px,7vw,52px);height:clamp(36px,7vw,52px);border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:ds-spin .9s linear infinite}.spinner-sm{width:22px;height:22px;border:3px solid rgba(99,102,241,.2);border-top-color:var(--color-indigo);border-radius:50%;animation:ds-spin 1s var(--ease-std) infinite}.data-overlay{position:relative;transition:opacity .3s var(--ease-std);min-height:120px}.data-overlay.is-loading{opacity:.55;pointer-events:none}.data-overlay-spinner{position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;background:#fffc;border-radius:var(--radius-lg);backdrop-filter:blur(4px)}.skeleton{background:linear-gradient(90deg,#f0efed 25%,#e8e6e3,#f0efed 75%);background-size:200% 100%;animation:ds-shimmer 1.5s infinite;border-radius:var(--radius-sm)}.skeleton-text{height:1em;margin-bottom:var(--space-2)}.skeleton-title{height:1.5em;width:60%;margin-bottom:var(--space-3)}.skeleton-card{height:clamp(80px,15vw,120px);border-radius:var(--radius-lg)}.error-banner{background:var(--color-error-light);color:#9b1c1c;padding:var(--space-4);border-radius:var(--radius-sm);margin-bottom:var(--space-5);border-left:4px solid var(--color-error);font-size:var(--text-sm);font-weight:500}.pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--space-1);padding:var(--space-4) 0}.pagination-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text);font-size:var(--text-sm);font-weight:500;cursor:pointer;font-family:inherit;transition:var(--transition);text-decoration:none}.pagination-btn:hover{border-color:var(--color-primary);background:var(--color-bg-hover);color:var(--color-primary)}.pagination-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:var(--shadow-primary)}.pagination-btn:disabled,.pagination-btn[disabled]{opacity:.4;cursor:not-allowed}.hidden{display:none!important}.invisible{visibility:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.min-w-0{min-width:0}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--color-text-muted)}.text-primary{color:var(--color-primary)}.text-sm{font-size:var(--text-sm)}.text-xs{font-size:var(--text-xs)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.break-word{word-break:break-word;overflow-wrap:break-word}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.divider{border:0;border-top:1px solid var(--color-border);margin:var(--space-6) 0}.divider-accent{border-top-color:var(--color-primary);border-top-width:2px}.hover-lift{transition:transform var(--dur-mid) var(--ease-spring),box-shadow var(--dur-mid) var(--ease-spring)}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.contain-layout{contain:layout style}.contain-paint{contain:paint}.accelerated{transform:translateZ(0);will-change:transform;-webkit-overflow-scrolling:touch}.fade-in-up{animation:ds-fade-in-up .7s var(--ease-spring) both}.stagger-1{animation-delay:.08s}.stagger-2{animation-delay:.16s}.stagger-3{animation-delay:.24s}.stagger-4{animation-delay:.32s}.badge{display:inline-flex;align-items:center;padding:.2em .6em;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;line-height:1}.badge-primary{background:var(--color-primary-light);color:var(--color-primary-dark)}.badge-success{background:var(--color-success-light);color:var(--color-success-dark)}.badge-warning{background:var(--color-warning-light);color:var(--color-warning-dark)}.badge-error{background:var(--color-error-light);color:var(--color-error-dark)}.badge-info{background:var(--color-info-light);color:var(--color-info-dark)}.badge-indigo{background:var(--color-indigo-light);color:var(--color-indigo-dark)}@keyframes ds-page-slide-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes ds-fade-in-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes ds-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ds-scale-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes ds-spin{to{transform:rotate(360deg)}}@keyframes ds-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes ds-slide-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1024px){body{padding-top:110px}.page-section{padding:clamp(1.25rem,3vw,2rem) clamp(1rem,3vw,2rem)}.cards-row.cols-4>*{flex:1 1 calc(50% - var(--space-4))}.cards-row.cols-5>*{flex:1 1 calc(33.33% - var(--space-4))}.cards-row.cols-3>*{flex:1 1 calc(50% - var(--space-4))}.pillars-row>.pillar-card{flex:1 1 calc(50% - .75rem)}.chart-section{padding:clamp(.875rem,2vw,1.25rem)}}@media(max-width:768px){body{padding-top:108px}.page-section{padding:clamp(1rem,2.5vw,1.5rem) clamp(.75rem,2.5vw,1rem);border-radius:var(--radius-md)}.action-bar{flex-direction:column;align-items:flex-start}.filter-panel-header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.view-selector{flex-direction:column;align-items:flex-start}.chart-type-select{width:100%;min-width:auto}.modal{border-radius:var(--radius-lg)}.modal-body{padding:var(--space-4)}.recharts-legend-wrapper ul,.recharts-legend-wrapper li{font-size:10px!important;flex-wrap:nowrap!important}.recharts-label-list text{font-size:8px!important}}@media(max-width:640px){body{padding-top:56px}.page-section{padding:clamp(.875rem,2vw,1.1rem) clamp(.625rem,2vw,.875rem)}.cards-row.cols-2>*,.cards-row.cols-3>*,.cards-row.cols-4>*,.cards-row.cols-5>*{flex:1 1 calc(50% - var(--space-3));min-width:min(140px,100%)}.pillars-row>.pillar-card{flex:1 1 calc(50% - .5rem);min-width:min(240px,100%)}.tab-btn{font-size:var(--text-xs);padding:.4rem .75rem}.tab-group{gap:var(--space-1)}.chart-section{padding:clamp(.75rem,2vw,1rem)}.chart-container{padding:clamp(.625rem,2vw,.875rem);min-height:220px}.chart-container.clickable:after{display:none}.btn-primary,.btn-secondary{width:100%;justify-content:center}.filter-group>.filter-item{flex:1 1 calc(50% - var(--space-2));min-width:min(140px,100%)}.recharts-legend-wrapper ul,.recharts-legend-wrapper li{font-size:9px!important;gap:6px!important;white-space:nowrap!important}}@media(max-width:480px){.page-section{border-radius:var(--radius-sm)}.cards-row.cols-4>*,.cards-row.cols-5>*{flex:1 1 calc(50% - var(--space-2));min-width:min(130px,100%)}.filter-group>.filter-item{flex:1 1 100%}.toggle-btn{font-size:10px;padding:4px 6px}.recharts-yAxis{width:36px!important}.recharts-cartesian-axis-tick text{font-size:9px!important}.recharts-legend-wrapper{font-size:10px!important}.recharts-label-list{display:none!important}}@media(max-width:360px){.page-section{padding:.75rem .5rem}.cards-row.cols-2>*,.cards-row.cols-3>*,.cards-row.cols-4>*,.cards-row.cols-5>*{flex:1 1 100%}.pillars-row>.pillar-card{flex:1 1 100%}p,h1,h2,h3,h4,h5,h6,td,th,li{overflow-wrap:break-word}}@media(pointer:coarse){body{-webkit-overflow-scrolling:touch}.nav-link{padding:.75rem .875rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media(prefers-color-scheme:dark){:root{color-scheme:light;color:var(--color-text);background-color:var(--color-bg)}}.csv-preview{border:1px solid var(--border-light);border-radius:8px;padding:1rem;background:#fff;overflow-x:auto}.csv-preview table{border-collapse:collapse;width:100%;font-size:.9em;text-align:left;color:var(--text-main)}.csv-preview th,.csv-preview td{border:1px solid var(--border-light);padding:.5rem .75rem;white-space:nowrap}.csv-preview th{background-color:var(--off-white-2);font-weight:600;color:var(--text-main)}.csv-preview tbody tr:hover{background-color:#f7a60014}:root{--off-white: #faf9f7;--off-white-2: #f2f1ee;--text-main: #2b2b2b;--text-muted: #6b7280;--accent: #f7a600;--accent-dark: #d88f00;--border-light: #e3e1dc}body{margin:0;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;background:linear-gradient(135deg,#f7a60026,#fff);color:var(--text-main)}.login-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:4.5rem;padding-left:1rem;padding-right:1rem}.login-page-title{font-size:1.6rem;font-weight:700;color:var(--accent);text-align:center;margin-bottom:2rem}.card{width:100%;max-width:420px;padding:2.5rem 2.75rem;background:#fff;border-radius:16px;border:1px solid rgba(247,166,0,.35);box-shadow:0 12px 30px #0000001f,0 0 0 1px #f7a6001f;animation:fadeInUp .4s ease}.login-logo{display:flex;justify-content:center;margin-bottom:1.5rem}.login-logo img{height:64px;width:auto;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.15))}.card h1{text-align:center;font-size:1.4rem;font-weight:700;color:#111;margin-bottom:1.5rem}.card input{width:100%;padding:.75rem .9rem;font-size:.95rem;background:#fff;border:1px solid var(--border-light);border-radius:8px;transition:border-color .2s ease,box-shadow .2s ease}.card input::placeholder{color:#9ca3af}.card input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #f7a60040}.card button[type=submit]{margin-top:.75rem;background:linear-gradient(135deg,#f7a600,#f8b225);color:#fff;border:none;border-radius:10px;padding:.85rem;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease;box-shadow:0 6px 16px #f7a60073}.card button[type=submit]:hover{transform:translateY(-2px);box-shadow:0 10px 24px #f7a60099}.card button[type=submit]:active{transform:translateY(0)}.card button[type=submit]:disabled{opacity:.65;cursor:not-allowed}.login-error{margin-top:.75rem;font-size:.9rem;text-align:center;color:#b91c1c;background:#b91c1c14;padding:.5rem;border-radius:6px}.login-toggle{margin-top:1.25rem;background:none;border:none;width:100%;color:var(--accent-dark);font-size:.9rem;font-weight:500;text-align:center;cursor:pointer;transition:color .2s ease}.login-toggle:hover{color:#92400e;text-decoration:underline}.login-form{display:flex;flex-direction:column;gap:1rem}.login-divider{text-align:center;margin:.75rem 0 .25rem;color:#888;font-size:.85rem}.login-google-wrap{display:flex;justify-content:center}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.login-page{padding-top:3rem}.login-page-title{font-size:1.25rem;margin-bottom:1.5rem}.card{padding:1.75rem 1.5rem}.login-logo img{height:52px}}@media(max-width:360px){.login-page{padding-top:2rem}.login-page-title{font-size:1.1rem}.card{padding:1.5rem 1.25rem}.login-logo img{height:44px}}@keyframes cberr-spin{to{transform:rotate(360deg)}}.cberr-full-center{display:flex;align-items:center;justify-content:center;height:100vh;background:#f8f9fa}.cberr-spinner{width:40px;height:40px;border-radius:50%;border:4px solid #e9ecef;border-top-color:#667eea;animation:cberr-spin .75s linear infinite}.cberr-error-box{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:#f8f9fa;font-family:system-ui,sans-serif;padding:24px;text-align:center}.cberr-h2{margin-bottom:12px;color:#333}.cberr-p{margin-bottom:24px;color:#666;max-width:480px}.cberr-reload-btn{padding:10px 24px;font-size:16px;border-radius:6px;border:none;background:#667eea;color:#fff;cursor:pointer}.nav-loader-overlay{position:fixed;inset:0;z-index:9998;background:#ffffff80;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;animation:nav-loader-fadein .1s ease}@keyframes nav-loader-fadein{0%{opacity:0}to{opacity:1}}.nav-loader-box{background:#fff;border-radius:16px;padding:24px;box-shadow:0 8px 32px #0000001f;display:flex;align-items:center;justify-content:center}.nav-loader-spinner{width:40px;height:40px;border-radius:50%;border:4px solid #e9ecef;border-top-color:#667eea;animation:nav-loader-spin .7s linear infinite}@keyframes nav-loader-spin{to{transform:rotate(360deg)}}@media(max-width:480px){.nav-loader-box{padding:18px}.nav-loader-spinner{width:32px;height:32px}}.access-denied-container{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:2rem}.access-denied-card{background:#fff;border:1px solid #e3e1dc;border-radius:16px;padding:2.5rem 2rem;max-width:520px;width:100%;text-align:center;box-shadow:0 4px 24px #00000012}.access-denied-icon{font-size:3rem;line-height:1;margin-bottom:1rem}.access-denied-title{font-size:1.4rem;font-weight:700;color:#1a1a1a;margin:0 0 .6rem}.access-denied-msg{color:#666;font-size:.95rem;margin:0 0 1.25rem;line-height:1.5}.access-denied-sections{background:#fffbf0;border:1px solid rgba(247,166,0,.3);border-radius:10px;padding:1rem 1.25rem;text-align:left}.access-denied-hint{font-size:.85rem;font-weight:600;color:#78350f;margin:0 0 .6rem;text-transform:uppercase;letter-spacing:.04em}.access-denied-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.access-denied-link{font-size:.9rem;color:#f7a600;text-decoration:none;font-weight:500;display:inline-flex;align-items:center;gap:.3rem;transition:color .2s}.access-denied-link:before{content:"→";font-size:.85rem}.access-denied-link:hover{color:#e89500;text-decoration:underline}@media(max-width:480px){.access-denied-card{padding:2rem 1.25rem}.access-denied-title{font-size:1.2rem}}
