.header{position:sticky;top:0;z-index:100;background:#ffffffbf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(226,232,240,.6);box-shadow:0 1px 3px #0000000a}.header-container{display:flex;align-items:center;justify-content:space-between;height:60px}.header-logo{display:flex;align-items:center;gap:var(--space-3);color:var(--text-primary);text-decoration:none;transition:opacity var(--transition-fast)}.header-logo:hover{opacity:.85}.logo-icon{font-size:1.75rem;line-height:1}.logo-text{display:flex;flex-direction:column;gap:2px}.logo-title{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary);line-height:1.2;letter-spacing:-.01em}.logo-subtitle{font-size:11px;font-weight:500;color:var(--text-tertiary);letter-spacing:.02em}.header-nav{display:flex;align-items:center;gap:var(--space-1)}.nav-pill{display:inline-flex;align-items:center;gap:var(--space-1);padding:6px 14px;font-size:14px;font-weight:500;color:var(--color-gray-600);text-decoration:none;border-radius:9999px;transition:all var(--transition-fast)}.nav-pill:hover{color:var(--text-primary);background:#0000000d}.nav-pill.active{color:var(--color-primary);background:#2563eb1a;box-shadow:inset 0 0 0 1px #2563eb33}.nav-pill:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.nav-icon{font-size:14px}.mobile-menu-btn{display:none;align-items:center;justify-content:center;width:40px;height:40px;background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.mobile-menu-btn:hover{background:var(--bg-tertiary)}.hamburger{display:flex;flex-direction:column;gap:4px;width:18px}.hamburger span{display:block;height:2px;background:var(--text-primary);border-radius:1px;transition:all var(--transition-fast)}.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(4px,4px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(4px,-4px)}.mobile-nav{display:none;flex-direction:column;padding:var(--space-2) var(--space-4) var(--space-4);background:#fffffff2;border-bottom:1px solid var(--color-gray-200)}.mobile-nav-link{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-size:var(--font-size-base);font-weight:500;color:var(--text-secondary);text-decoration:none;border-radius:var(--radius-lg);transition:all var(--transition-fast)}.mobile-nav-link:hover,.mobile-nav-link.active{color:var(--color-primary);background:var(--color-primary-subtle)}@media(max-width:768px){.desktop-nav{display:none}.mobile-menu-btn,.mobile-nav{display:flex}.logo-title{font-size:var(--font-size-sm)}.logo-subtitle{font-size:10px}}@media(max-width:480px){.header-container{height:56px}.logo-icon{font-size:1.5rem}.logo-subtitle{display:none}}.site-footer{background:linear-gradient(180deg,#1e293b,#0f172a);color:var(--color-gray-300)}.footer-upper{padding:var(--space-10) 0;border-bottom:1px solid rgba(255,255,255,.08)}.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-8)}.footer-column{display:flex;flex-direction:column;gap:var(--space-3)}.footer-brand{gap:var(--space-4)}.footer-logo{display:flex;align-items:center;gap:var(--space-2)}.footer-logo-icon{font-size:1.5rem}.footer-logo-text{font-size:var(--font-size-lg);font-weight:600;color:#fff}.footer-tagline{font-size:var(--font-size-sm);color:var(--color-gray-400);line-height:var(--line-height-relaxed);max-width:240px}.footer-heading{font-size:var(--font-size-sm);font-weight:600;color:#fff;margin-bottom:var(--space-1)}.footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.footer-links a{font-size:var(--font-size-sm);color:var(--color-gray-400);text-decoration:none;transition:color var(--transition-fast)}.footer-links a:hover{color:#fff}.footer-text{font-size:var(--font-size-xs);color:var(--color-gray-400);line-height:var(--line-height-relaxed)}.footer-disclaimer{color:var(--color-gray-500);font-size:11px}.footer-lower{padding:var(--space-4) 0}.footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4)}.footer-copyright,.footer-legal{font-size:var(--font-size-xs);color:var(--color-gray-500)}@media(max-width:1024px){.footer-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-8) var(--space-6)}}@media(max-width:640px){.footer-upper{padding:var(--space-8) 0}.footer-grid{grid-template-columns:1fr;gap:var(--space-6)}.footer-brand{text-align:center;align-items:center}.footer-tagline{max-width:none;text-align:center}.footer-column{text-align:center;align-items:center}.footer-links{align-items:center}.footer-bottom{flex-direction:column;text-align:center}}.state-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12);text-align:center;background:var(--bg-primary);border-radius:var(--radius-xl)}.state-icon{font-size:4rem;margin-bottom:var(--space-4);line-height:1}.state-title{font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-2)}.state-message{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-5);max-width:400px}.loading-state{min-height:200px}.loading-state.small{min-height:100px;padding:var(--space-6)}.loading-spinner{margin-bottom:var(--space-4)}.spinner{width:40px;height:40px;border:3px solid var(--color-gray-200);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}.loading-state.small .spinner{width:24px;height:24px;border-width:2px}.error-state{background:var(--bg-primary);border:1px solid var(--color-error)}.error-state .state-icon{color:var(--color-error)}.empty-state{background:var(--bg-secondary)}.result-stats{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.stats-count{font-size:var(--font-size-sm);color:var(--text-secondary)}.stats-count strong{font-size:var(--font-size-2xl);color:var(--color-primary);font-weight:700}.stats-breakdown{display:flex;flex-wrap:wrap;gap:var(--space-2)}.breakdown-chip{padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs);background:var(--bg-primary);border:1px solid var(--color-gray-200);border-radius:var(--radius-full);color:var(--text-secondary)}.copy-link-btn{display:inline-flex;align-items:center;gap:var(--space-2)}.ts-badge{display:inline-flex;align-items:center;gap:var(--space-1);border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:default}.ts-badge-sm{padding:3px 6px}.ts-badge-md{padding:5px 10px}.ts-badge-lg{padding:8px 14px}.ts-badge-soft{background:color-mix(in srgb,var(--ts-color) 15%,transparent);color:var(--ts-color)}.ts-badge-solid{background:var(--ts-color);color:#fff}.ts-badge-outline{background:transparent;border:1.5px solid var(--ts-color);color:var(--ts-color)}.ts-badge:hover{transform:scale(1.05)}.ts-badge-soft:hover{background:color-mix(in srgb,var(--ts-color) 25%,transparent)}.ts-badge-outline:hover{background:color-mix(in srgb,var(--ts-color) 10%,transparent)}.ts-badge-icon{flex-shrink:0}.ts-badge-label{font-size:var(--font-size-xs);font-weight:500;white-space:nowrap}.ts-badge-sm .ts-badge-label{font-size:10px}.ts-badge-md .ts-badge-label{font-size:var(--font-size-xs)}.ts-badge-lg .ts-badge-label{font-size:var(--font-size-sm)}.ts-badge-text{font-size:var(--font-size-xs);font-weight:600;font-family:monospace}.ts-badge-group{display:inline-flex;align-items:center;gap:var(--space-1);flex-wrap:wrap}.ts-badge-more{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;font-size:10px;font-weight:500;background:var(--bg-tertiary);color:var(--text-tertiary);border-radius:var(--radius-sm)}@media(max-width:768px){.ts-badge-md{padding:4px 8px}.ts-badge-md .ts-badge-icon{width:20px;height:20px}}.hero-background{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.hero-noise{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");pointer-events:none}.hero-background:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.04;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:40px 40px;pointer-events:none}.hero-shape-container{position:absolute;top:0;right:0;width:60%;height:100%;overflow:hidden}.hero-blob{position:absolute;top:-30%;right:-15%;width:140%;height:160%}.hero-icon-overlay{position:absolute;top:50%;right:12%;transform:translateY(-50%);width:200px;height:200px;opacity:.05;stroke-width:1}@media(max-width:1024px){.hero-icon-overlay{width:160px;height:160px;right:8%}}@media(max-width:768px){.hero-shape-container{opacity:.6}.hero-icon-overlay{width:120px;height:120px;right:5%;opacity:.04}}@media(max-width:480px){.hero-shape-container{opacity:.4}.hero-icon-overlay{display:none}}.home-hero-banner{position:relative;min-height:420px;background:linear-gradient(135deg,#0f172a,#1e293b);overflow:hidden;display:flex;align-items:center}.home-hero-banner .hero-content{position:relative;z-index:10;max-width:680px;padding:var(--space-12) 0;text-align:left}.hero-version-tag{display:inline-block;padding:var(--space-1) var(--space-3);background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;color:#ffffffb3;margin-bottom:var(--space-4)}.hero-headline{font-size:clamp(2.5rem,5vw,3.75rem);font-weight:800;color:#fff;margin-bottom:var(--space-5);line-height:1.1;letter-spacing:-.02em}.hero-headline .accent{color:var(--theme-color, #0891b2)}.hero-body{font-size:var(--font-size-lg);color:#ffffffbf;line-height:var(--line-height-relaxed);margin-bottom:var(--space-3);max-width:560px}.hero-hint{font-size:var(--font-size-sm);color:#ffffff80;margin-bottom:var(--space-6)}.hero-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.hero-btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-5);font-size:var(--font-size-base);font-weight:600;border-radius:var(--radius-lg);text-decoration:none;cursor:pointer;transition:all var(--transition-fast);min-height:44px}.hero-btn-primary{background:var(--theme-color, #0891b2);color:#fff;border:none;box-shadow:0 4px 14px #0891b24d}.hero-btn-primary:hover{background:color-mix(in srgb,var(--theme-color, #0891b2) 85%,white);transform:translateY(-1px);box-shadow:0 6px 20px #0891b266}.hero-btn-primary:focus-visible{outline:2px solid white;outline-offset:2px}.hero-btn-secondary{background:#ffffff14;color:#ffffffe6;border:1px solid rgba(255,255,255,.2)}.hero-btn-secondary:hover{background:#ffffff26;border-color:#ffffff4d}.hero-btn-secondary:focus-visible{outline:2px solid var(--theme-color, #0891b2);outline-offset:2px}@media(max-width:1024px){.hero-headline{font-size:var(--font-size-4xl)}}@media(max-width:768px){.home-hero-banner{min-height:360px}.home-hero-banner .hero-content{padding:var(--space-8) 0}.hero-headline{font-size:var(--font-size-3xl)}.hero-body{font-size:var(--font-size-base)}.hero-actions{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.hero-btn{width:100%;max-width:280px}}@media(max-width:480px){.hero-headline{font-size:var(--font-size-2xl)}.hero-version-tag{font-size:var(--font-size-xs)}}.hero{position:relative;background:linear-gradient(135deg,var(--color-gray-900) 0%,var(--color-gray-800) 100%);padding:var(--space-16) 0;overflow:hidden}.hero-content{position:relative;z-index:1;max-width:700px}.hero-title{font-size:var(--font-size-5xl);font-weight:700;margin-bottom:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.hero-title .text-gradient{background:linear-gradient(135deg,#60a5fa,#a78bfa,#f472b6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-year{font-size:var(--font-size-2xl);font-weight:500;color:var(--color-gray-400)}.hero-subtitle{font-size:var(--font-size-lg);color:var(--color-gray-300);line-height:var(--line-height-relaxed);margin-bottom:var(--space-8)}.hero-decoration{position:absolute;top:0;right:0;width:50%;height:100%;pointer-events:none}.decoration-circle{position:absolute;border-radius:50%;opacity:.1}.circle-1{width:400px;height:400px;background:var(--color-primary);top:-100px;right:-100px}.circle-2{width:300px;height:300px;background:var(--color-secondary);bottom:-50px;right:150px}.circle-3{width:200px;height:200px;background:var(--color-accent);top:50%;right:50%}.filter-section,.subjects-section,.skills-section,.howto-section{padding:var(--space-16) 0}.filter-section{background:var(--bg-primary)}.subjects-section{background:var(--bg-secondary)}.skills-section{background:var(--bg-primary)}.howto-section{background:linear-gradient(180deg,var(--bg-secondary) 0%,var(--bg-primary) 100%)}.section-header{text-align:center;margin-bottom:var(--space-10)}.section-header h2{font-size:var(--font-size-3xl);margin-bottom:var(--space-2)}.section-header p{font-size:var(--font-size-base);color:var(--text-secondary)}.filter-card{max-width:900px;margin:0 auto}.filter-group{margin-bottom:var(--space-6)}.checkbox-item-lg{padding:var(--space-3) var(--space-5);font-size:var(--font-size-lg);font-weight:500;border-radius:var(--radius-lg);border:2px solid var(--color-gray-200);background:var(--bg-primary);transition:all var(--transition-fast)}.checkbox-item-lg:hover{border-color:var(--subject-color, var(--color-primary));background:var(--color-gray-50)}.checkbox-item-lg.active{background:var(--subject-color, var(--color-primary));border-color:var(--subject-color, var(--color-primary));color:#fff}.checkbox-item-md{padding:var(--space-2) var(--space-4);font-size:var(--font-size-base);font-weight:500;border-radius:var(--radius-md);border:1px solid var(--color-gray-300);background:var(--bg-primary);transition:all var(--transition-fast)}.checkbox-item-md .filter-badge{font-size:var(--font-size-xs);color:inherit;opacity:.7;margin-left:var(--space-1)}.filter-options-tertiary{padding:var(--space-4);background:var(--bg-primary);gap:var(--space-2)}.checkbox-item-sm{padding:var(--space-1) var(--space-3);font-size:var(--font-size-sm);border-radius:var(--radius-md);border:1px solid var(--color-gray-200);background:var(--bg-primary);transition:all var(--transition-fast)}.filter-actions{display:flex;align-items:center;gap:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-gray-200)}.subjects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-4)}.subject-card{display:flex;flex-direction:column;background:var(--bg-primary);border-radius:var(--radius-xl);overflow:hidden;text-decoration:none;box-shadow:var(--shadow-sm);border:1px solid var(--color-gray-200);transition:all var(--transition-normal);position:relative}.subject-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--subject-color, var(--color-primary))}.subject-card-accent{height:4px;background:var(--subject-color, var(--color-primary))}.subject-card-content{padding:var(--space-4);flex:1;display:flex;align-items:center}.subject-name{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary)}.subject-arrow{position:absolute;bottom:var(--space-4);right:var(--space-4);font-size:var(--font-size-lg);color:var(--subject-color, var(--color-primary));opacity:0;transform:translate(-10px);transition:all var(--transition-fast)}.subject-card:hover .subject-arrow{opacity:1;transform:translate(0)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-5)}.skill-preview-card{display:flex;flex-direction:column;padding:var(--space-5);background:var(--bg-primary);border-radius:var(--radius-xl);text-decoration:none;border:1px solid var(--color-gray-200);transition:all var(--transition-normal);position:relative;overflow:hidden}.skill-preview-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--skill-color, var(--color-primary))}.skill-preview-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.skill-card-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.skill-preview-card .skill-code{font-family:monospace;font-weight:700;font-size:var(--font-size-sm);color:var(--skill-color, var(--color-primary))}.skill-preview-card .skill-name{font-size:var(--font-size-lg);color:var(--text-primary);margin-bottom:var(--space-2)}.skill-preview-card .skill-tagline{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-relaxed);flex:1}.skills-cta{text-align:center;margin-top:var(--space-8)}.howto-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-6)}.howto-card{text-align:center;padding:var(--space-6)}.howto-icon{width:48px;height:48px;margin:0 auto var(--space-4);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);font-weight:700;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:#fff;border-radius:var(--radius-full)}.howto-card h4{font-size:var(--font-size-lg);margin-bottom:var(--space-2)}.howto-card p{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-relaxed)}@media(max-width:768px){.hero{padding:var(--space-10) 0}.hero-title{font-size:var(--font-size-3xl)}.hero-year{font-size:var(--font-size-lg)}.filter-section,.subjects-section,.skills-section,.howto-section{padding:var(--space-10) 0}.filter-actions,.action-group{flex-direction:column;align-items:stretch}.checkbox-item-lg{padding:var(--space-2) var(--space-4);font-size:var(--font-size-base)}}.grade-band-tabs{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-2);background:var(--bg-tertiary);border-radius:var(--radius-lg)}.grade-band-tab{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-3) var(--space-5);font-size:var(--font-size-sm);background:transparent;border:2px solid transparent;border-radius:var(--radius-md);transition:all var(--transition-fast);color:var(--text-secondary)}.grade-band-tab:hover{background:var(--bg-primary);color:var(--text-primary)}.grade-band-tab.active{background:var(--bg-primary);border-color:var(--color-primary);color:var(--color-primary);box-shadow:var(--shadow-sm)}.grade-band-tab.all{flex-direction:row}.grade-band-label{font-weight:600}.grade-band-range{font-size:var(--font-size-xs);color:var(--text-tertiary)}.grade-band-tab.active .grade-band-range{color:var(--color-primary-light)}@media(max-width:640px){.grade-band-tabs{flex-wrap:nowrap;overflow-x:auto}.grade-band-tab{flex-shrink:0;padding:var(--space-2) var(--space-4)}}.favorite-button-wrapper{display:inline-flex;align-items:center;position:relative}.favorite-button{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:transparent;border:1px solid var(--color-gray-300);border-radius:var(--radius-md) 0 0 var(--radius-md);cursor:pointer;transition:all var(--transition-fast);font-size:var(--font-size-sm);color:var(--text-secondary)}.favorite-button:hover{border-color:var(--color-warning);color:var(--color-warning)}.favorite-button.favorited{background:var(--color-warning);border-color:var(--color-warning);color:#fff}.favorite-button.favorited:hover{background:var(--color-warning-dark, #d97706)}.star-icon{font-size:1.1em}.collection-menu-btn{padding:var(--space-1) var(--space-2);background:var(--bg-secondary);border:1px solid var(--color-gray-300);border-left:none;border-radius:0 var(--radius-md) var(--radius-md) 0;cursor:pointer;font-size:10px;color:var(--text-tertiary);transition:all var(--transition-fast)}.collection-menu-btn:hover{background:var(--color-gray-200);color:var(--text-primary)}.favorite-button-wrapper.small .favorite-button,.favorite-button-wrapper.small .collection-menu-btn{padding:2px 6px;font-size:var(--font-size-xs)}.favorite-button-wrapper.large .favorite-button,.favorite-button-wrapper.large .collection-menu-btn{padding:var(--space-2) var(--space-3);font-size:var(--font-size-base)}.menu-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:90}.collection-menu{position:absolute;top:100%;right:0;z-index:100;min-width:200px;background:var(--bg-primary);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-2);margin-top:var(--space-1)}.menu-header{font-size:var(--font-size-xs);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-100);margin-bottom:var(--space-1)}.menu-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.menu-item:hover{background:var(--bg-secondary)}.menu-item input[type=checkbox]{flex-shrink:0}.menu-item .col-name{flex:1;font-size:var(--font-size-sm);color:var(--text-primary)}.menu-item .col-count{font-size:var(--font-size-xs);color:var(--text-tertiary)}.standard-card{position:relative;background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--color-gray-200);overflow:hidden;transition:all var(--transition-fast);--card-accent: var(--color-primary)}.standard-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--card-accent);border-radius:var(--radius-lg) 0 0 var(--radius-lg)}.standard-card:hover{border-color:var(--color-gray-300);box-shadow:var(--shadow-sm)}.standard-card.expanded{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.copy-toast{position:absolute;top:var(--space-3);right:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-gray-800);color:#fff;font-size:var(--font-size-xs);border-radius:var(--radius-md);z-index:10;animation:toastIn .2s ease-out}@keyframes toastIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.standard-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);padding-left:calc(var(--space-4) + 4px);border-bottom:1px solid var(--color-gray-100)}.standard-card-labels{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;flex:1;min-width:0}.subdomain-label{font-size:var(--font-size-xs);font-weight:600;padding:var(--space-1) var(--space-2);background:var(--color-gray-100);color:var(--text-primary);border-radius:var(--radius-full);white-space:nowrap}.domain-label{font-size:var(--font-size-xs);color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.standard-card-actions{display:flex;align-items:center;gap:var(--space-1);flex-shrink:0}.action-primary{display:contents}.action-secondary{opacity:0;pointer-events:none;transition:opacity .15s ease}.standard-card:hover .action-secondary,.standard-card:focus-within .action-secondary{opacity:1;pointer-events:auto}.action-secondary:focus-visible{opacity:1;pointer-events:auto}.grade-band-chip{font-size:var(--font-size-xs);font-weight:600;padding:var(--space-1) var(--space-2);background:var(--band-bg, var(--color-primary-light, rgba(59, 130, 246, .1)));color:var(--band-color, var(--color-primary));border-radius:var(--radius-md);white-space:nowrap}.action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--text-tertiary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.action-btn:hover{background:var(--color-gray-100);color:var(--text-primary)}.action-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;opacity:1}.menu-container{position:relative}.menu-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--text-tertiary);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-lg);transition:all var(--transition-fast)}.menu-btn:hover{background:var(--color-gray-100);color:var(--text-primary)}.menu-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.menu-dropdown{position:absolute;top:100%;right:0;margin-top:var(--space-1);min-width:140px;background:var(--bg-primary);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:50;overflow:hidden;animation:dropdownIn .15s ease-out}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.menu-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border:none;background:transparent;text-decoration:none;font-size:var(--font-size-sm);color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast);text-align:left}.menu-item:hover{background:var(--color-gray-100)}.menu-icon{font-size:var(--font-size-sm)}.expand-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-full);background:var(--color-gray-100);border:none;color:var(--text-tertiary);transition:all var(--transition-fast);flex-shrink:0;cursor:pointer}.expand-btn:hover{background:var(--color-gray-200);color:var(--text-primary)}.expand-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.expand-icon{font-size:10px;transition:transform var(--transition-fast)}.expand-icon.up{transform:rotate(180deg)}.standard-card-body{padding:var(--space-3) var(--space-4);padding-left:calc(var(--space-4) + 4px)}.standard-text-link{text-decoration:none;display:block}.standard-text{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--text-primary);margin:0}.standard-text-link:hover .standard-text{color:var(--color-primary)}.keyword-highlight{background:var(--color-warning);color:var(--color-gray-900);padding:0 var(--space-1);border-radius:var(--radius-sm)}.standard-ts-row{display:flex;flex-wrap:wrap;gap:var(--space-1);padding:0 var(--space-4) var(--space-3);padding-left:calc(var(--space-4) + 4px)}.ts-badge-link{text-decoration:none}.ts-badge-link:hover .ts-badge{transform:scale(1.1)}.standard-card-footer-meta{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-4);padding-left:calc(var(--space-4) + 4px);border-top:1px solid var(--color-gray-100);background:var(--bg-secondary);opacity:0;max-height:0;padding-top:0;padding-bottom:0;overflow:hidden;transition:all var(--transition-fast)}.standard-card:hover .standard-card-footer-meta,.standard-card:focus-within .standard-card-footer-meta{opacity:1;max-height:40px;padding-top:var(--space-2);padding-bottom:var(--space-2)}.standard-id{font-size:var(--font-size-xs);font-family:monospace;color:var(--text-tertiary)}.copy-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--text-tertiary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.copy-btn:hover{background:var(--bg-primary);color:var(--color-primary)}.copy-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.standard-card-details{padding:0 var(--space-4) var(--space-4);padding-left:calc(var(--space-4) + 4px);border-top:1px solid var(--color-gray-100);background:var(--bg-secondary)}.detail-section,.detail-section:first-child{padding-top:var(--space-4)}.detail-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-2)}.detail-text{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--text-secondary)}.detail-actions{padding-top:var(--space-4);display:flex;gap:var(--space-3)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--font-size-xs)}@media(max-width:768px){.standard-card-header,.standard-card-body{padding:var(--space-2) var(--space-3);padding-left:calc(var(--space-3) + 4px)}.standard-ts-row{padding:0 var(--space-3) var(--space-2);padding-left:calc(var(--space-3) + 4px)}.action-secondary:not(.mobile-show){display:none}.menu-container{opacity:1!important;pointer-events:auto!important}.standard-card-footer-meta{display:none!important}.domain-label{display:none}.standard-text{font-size:var(--font-size-sm)}.action-btn,.menu-btn,.expand-btn{width:28px;height:28px}}.subject-column{display:flex;flex-direction:column;background:var(--bg-primary);border-radius:var(--radius-xl);border:1px solid var(--color-gray-200);border-top:4px solid var(--column-color, var(--color-primary));overflow:hidden;height:calc(100vh - 200px);min-height:400px}.column-header{position:sticky;top:0;z-index:10;background:var(--bg-primary);padding:var(--space-4);border-bottom:1px solid var(--color-gray-200)}.column-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.column-title{font-size:var(--font-size-lg);font-weight:700;color:var(--column-color, var(--color-primary));margin:0}.column-badge{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2);background:var(--bg-secondary);border-radius:var(--radius-md);color:var(--text-secondary)}.column-search{position:relative}.column-search-input{width:100%;padding:var(--space-2) var(--space-3);padding-right:var(--space-8);font-size:var(--font-size-sm);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--bg-secondary);transition:all var(--transition-fast)}.column-search-input:focus{outline:none;border-color:var(--column-color, var(--color-primary));background:var(--bg-primary)}.column-search-clear{position:absolute;right:var(--space-2);top:50%;transform:translateY(-50%);width:20px;height:20px;border:none;background:var(--color-gray-300);color:var(--text-inverse);border-radius:var(--radius-full);font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center}.column-search-clear:hover{background:var(--color-gray-500)}.column-search-status{margin-top:var(--space-2);font-size:var(--font-size-xs);color:var(--text-tertiary)}.column-content{flex:1;overflow-y:auto;padding:var(--space-3)}.domain-group{margin-bottom:var(--space-3)}.domain-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:var(--space-3);background:var(--bg-secondary);border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.domain-header:hover{background:var(--color-gray-200)}.domain-header.expanded{background:var(--column-color, var(--color-primary));color:#fff;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.domain-name{font-size:var(--font-size-sm);font-weight:600;text-align:left}.domain-meta{display:flex;align-items:center;gap:var(--space-2)}.domain-count{font-size:var(--font-size-xs);padding:2px var(--space-2);background:#0000001a;border-radius:var(--radius-sm)}.domain-header.expanded .domain-count{background:#fff3}.domain-toggle{font-size:10px;opacity:.7;transition:transform var(--transition-fast)}.domain-content{background:var(--bg-tertiary);border-radius:0 0 var(--radius-lg) var(--radius-lg);padding:var(--space-3);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.subdomain-group{margin-bottom:var(--space-3)}.subdomain-group:last-child{margin-bottom:0}.subdomain-title{font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-2);padding-left:var(--space-2);border-left:2px solid var(--column-color, var(--color-primary))}.standards-list{display:flex;flex-direction:column;gap:var(--space-2)}.column-empty{display:flex;align-items:center;justify-content:center;height:150px;background:var(--bg-secondary);border-radius:var(--radius-lg);border:2px dashed var(--color-gray-200)}.search-highlight{background:var(--color-warning);color:var(--color-gray-900);padding:0 2px;border-radius:2px}@media(max-width:1024px){.subject-column{height:auto;min-height:300px;max-height:500px}}@media(max-width:768px){.subject-column{height:auto;max-height:none}.column-content{max-height:400px}}.compare-view{display:flex;flex-direction:column}.compare-condition-bar{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.condition-info{display:flex;align-items:center;gap:var(--space-2)}.condition-label{font-size:var(--font-size-sm);color:var(--text-tertiary)}.condition-value{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary)}.btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm)}.compare-view-subjects .compare-columns{display:grid;gap:var(--space-4)}.compare-columns.columns-1{grid-template-columns:1fr}.compare-columns.columns-2{grid-template-columns:repeat(2,1fr)}.compare-columns.columns-3{grid-template-columns:repeat(3,1fr)}.compare-view-bands .compare-header{display:grid;gap:var(--space-4);position:sticky;top:64px;z-index:40;background:var(--bg-primary);padding:var(--space-4) 0;border-bottom:2px solid var(--color-gray-200);margin-bottom:var(--space-4)}.compare-header.columns-1{grid-template-columns:1fr}.compare-header.columns-2{grid-template-columns:repeat(2,1fr)}.compare-header.columns-3{grid-template-columns:repeat(3,1fr)}.compare-column-header{background:var(--band-bg, var(--bg-secondary));padding:var(--space-4);border-radius:var(--radius-lg);text-align:center;border-left:4px solid var(--band-color, var(--color-primary))}.compare-column-header .column-title{font-size:var(--font-size-lg);font-weight:700;color:var(--band-color, var(--color-primary));margin-bottom:var(--space-1)}.compare-column-header .column-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary);display:block}.compare-domain-group{margin-bottom:var(--space-4)}.compare-domain-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:var(--space-4);background:var(--color-gray-100);border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.compare-domain-header:hover{background:var(--color-gray-200)}.compare-domain-header .domain-name{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary)}.compare-domain-header .domain-toggle{font-size:10px;color:var(--text-tertiary);transition:transform var(--transition-fast)}.compare-domain-header .domain-toggle.up{transform:rotate(180deg)}.compare-domain-content{display:grid;gap:var(--space-4);padding:var(--space-4) 0;animation:fadeIn .2s ease-out}.compare-domain-content.columns-1{grid-template-columns:1fr}.compare-domain-content.columns-2{grid-template-columns:repeat(2,1fr)}.compare-domain-content.columns-3{grid-template-columns:repeat(3,1fr)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.compare-column{min-height:100px}.standards-column-list{display:flex;flex-direction:column;gap:var(--space-3)}.column-empty{display:flex;align-items:center;justify-content:center;height:100px;background:var(--bg-secondary);border-radius:var(--radius-lg);border:2px dashed var(--color-gray-200)}.column-empty span{font-size:var(--font-size-sm);color:var(--text-tertiary)}.compare-empty{text-align:center;padding:var(--space-12);background:var(--bg-secondary);border-radius:var(--radius-xl)}.compare-empty p{color:var(--text-secondary)}@media(max-width:1200px){.compare-columns.columns-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:1024px){.compare-header.columns-3,.compare-domain-content.columns-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.compare-columns,.compare-header,.compare-domain-content{grid-template-columns:1fr!important}.compare-header{position:relative;top:0}.compare-condition-bar{flex-direction:column;gap:var(--space-3);text-align:center}}.subject-hero-banner{position:relative;min-height:300px;background:linear-gradient(135deg,#0f172a,#1e293b);overflow:hidden;display:flex;align-items:center}.subject-hero-banner .hero-content{position:relative;z-index:10;max-width:680px;padding:var(--space-10) 0;text-align:left}.subject-hero-banner .hero-back-link{display:inline-flex;align-items:center;gap:var(--space-2);color:#ffffff80;font-size:var(--font-size-sm);text-decoration:none;margin-bottom:var(--space-4);transition:color var(--transition-fast)}.subject-hero-banner .hero-back-link:hover{color:#ffffffe6}.subject-hero-banner .hero-title{font-size:var(--font-size-5xl);font-weight:800;color:#fff;margin-bottom:var(--space-4);line-height:1.1;letter-spacing:-.02em}.subject-hero-banner .hero-subtitle{font-size:var(--font-size-lg);color:#ffffffb3;line-height:var(--line-height-relaxed);margin-bottom:var(--space-6);max-width:560px}.subject-hero-banner .hero-stats{display:flex;align-items:center;gap:var(--space-4)}.stat-glass-card{display:flex;align-items:baseline;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.stat-glass-card .stat-value{font-size:var(--font-size-2xl);font-weight:700;color:var(--theme-color, #3b82f6)}.stat-glass-card .stat-label{font-size:var(--font-size-sm);color:#fff9}@media(max-width:1024px){.subject-hero-banner .hero-title{font-size:var(--font-size-4xl)}}@media(max-width:768px){.subject-hero-banner{min-height:260px}.subject-hero-banner .hero-content{padding:var(--space-8) 0}.subject-hero-banner .hero-title{font-size:var(--font-size-3xl)}.subject-hero-banner .hero-subtitle{font-size:var(--font-size-base)}.subject-hero-banner .hero-stats{flex-wrap:wrap;gap:var(--space-3)}.stat-glass-card{padding:var(--space-2) var(--space-3)}.stat-glass-card .stat-value{font-size:var(--font-size-xl)}}@media(max-width:480px){.subject-hero-banner .hero-title{font-size:var(--font-size-2xl)}.subject-hero-banner .hero-stats{flex-direction:column;align-items:flex-start;gap:var(--space-2)}}.subject-hero{background:linear-gradient(135deg,var(--color-gray-900) 0%,var(--color-gray-800) 100%);padding:var(--space-10) 0;position:relative;overflow:hidden}.subject-hero:before{content:"";position:absolute;top:-50%;right:-20%;width:60%;height:200%;background:var(--subject-color, var(--color-primary));opacity:.1;transform:rotate(-15deg);border-radius:40%}.back-link{display:inline-block;color:var(--color-gray-400);font-size:var(--font-size-sm);margin-bottom:var(--space-4);transition:color var(--transition-fast)}.back-link:hover{color:var(--text-inverse)}.subject-hero-content{position:relative;z-index:1}.subject-title{font-size:var(--font-size-4xl);color:var(--text-inverse);margin-bottom:var(--space-4)}.subject-short-desc{font-size:var(--font-size-lg);color:var(--color-gray-300);max-width:600px;line-height:var(--line-height-relaxed);margin-bottom:var(--space-6)}.subject-meta-stats{display:flex;gap:var(--space-6)}.meta-stat{font-size:var(--font-size-sm);color:var(--color-gray-400)}.meta-stat strong{font-size:var(--font-size-2xl);font-weight:700;color:var(--subject-color, var(--color-primary));display:block;margin-bottom:var(--space-1)}.subject-description{background:var(--bg-primary);padding:var(--space-10) 0}.description-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6)}.description-card{padding:var(--space-6);background:var(--bg-secondary);border-radius:var(--radius-xl)}.description-card h3{font-size:var(--font-size-lg);margin-bottom:var(--space-3)}.description-card p{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-relaxed)}.grade-band-section{background:var(--bg-primary);padding:var(--space-8) 0;border-bottom:1px solid var(--color-gray-200)}.grade-band-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-4)}.grade-band-header h3{font-size:var(--font-size-lg);margin-bottom:var(--space-1)}.grade-band-header p{font-size:var(--font-size-sm);color:var(--text-tertiary)}.view-toggle{display:flex;gap:var(--space-2)}.view-toggle-btn{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);background:var(--bg-secondary);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.view-toggle-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.view-toggle-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.standards-section{background:var(--bg-secondary);padding:var(--space-10) 0}.standards-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6)}.standards-header h2{font-size:var(--font-size-2xl)}.standards-actions{display:flex;gap:var(--space-2)}.domains-list{display:flex;flex-direction:column;gap:var(--space-6)}.domain-group{background:var(--bg-primary);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm)}.domain-header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:var(--space-5) var(--space-6);background:var(--bg-primary);border:none;border-left:4px solid var(--subject-color, var(--color-primary));text-align:left;font-size:var(--font-size-base);transition:all var(--transition-fast)}.domain-header:hover{background:var(--bg-tertiary)}.domain-header.expanded{border-bottom:1px solid var(--color-gray-100)}.domain-info{display:flex;align-items:center;gap:var(--space-4)}.domain-name{font-weight:600;color:var(--text-primary)}.domain-count{font-size:var(--font-size-sm);color:var(--text-tertiary)}.domain-toggle{font-size:12px;color:var(--text-tertiary);transition:transform var(--transition-fast)}.domain-toggle.up{transform:rotate(180deg)}.standards-list{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.empty-state{text-align:center;padding:var(--space-12);background:var(--bg-primary);border-radius:var(--radius-xl)}.not-found{text-align:center;padding:var(--space-16)}.not-found h2{margin-bottom:var(--space-4)}.not-found p{color:var(--text-secondary);margin-bottom:var(--space-6)}@media(max-width:768px){.subject-hero{padding:var(--space-8) 0}.subject-title{font-size:var(--font-size-3xl)}.standards-header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}}.skill-card{background:var(--bg-primary);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--color-gray-200);transition:all var(--transition-normal);position:relative}.skill-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.skill-card-accent{height:2px;background:var(--skill-color, var(--color-primary))}.skill-card-content{padding:var(--space-6)}.skill-card-header{margin-bottom:var(--space-4)}.skill-code{display:inline-block;font-size:var(--font-size-xs);font-weight:700;padding:var(--space-1) var(--space-3);background:var(--skill-color, var(--color-primary));color:#fff;border-radius:var(--radius-full);margin-bottom:var(--space-2);font-family:monospace}.skill-name{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--space-1)}.skill-name-en{font-size:var(--font-size-sm);color:var(--text-tertiary);display:block}.skill-tagline{font-size:var(--font-size-base);font-weight:500;color:var(--skill-color, var(--color-primary));margin-bottom:var(--space-4);padding-left:var(--space-3);border-left:3px solid var(--skill-color, var(--color-primary))}.skill-definition{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--text-secondary);margin-bottom:var(--space-5)}.skill-subskills{margin-bottom:var(--space-5)}.subskills-title{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-3)}.subskills-list{display:flex;flex-direction:column;gap:var(--space-2)}.subskill-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--bg-secondary);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.subskill-code{font-family:monospace;font-weight:600;color:var(--skill-color, var(--color-primary))}.subskill-name{color:var(--text-secondary)}.skill-link{display:inline-flex;align-items:center;gap:var(--space-2)}.skill-card.compact{display:block;text-decoration:none;padding:var(--space-5);cursor:pointer;border-left:4px solid var(--skill-color, var(--color-primary))}.skill-card.compact .skill-card-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}.skill-card.compact .skill-code{margin-bottom:0}.skill-card.compact .skill-name{font-size:var(--font-size-base);margin-bottom:0}.skill-card.compact .skill-tagline{font-size:var(--font-size-sm);margin-bottom:0;padding-left:0;border-left:none;color:var(--text-secondary);font-weight:400}.skills-hero{background:linear-gradient(135deg,#1e1b4b,#312e81);padding:var(--space-10) 0;position:relative;overflow:hidden}.skills-hero:before{content:"";position:absolute;top:-30%;right:-10%;width:50%;height:160%;background:linear-gradient(135deg,var(--skill-ts1),var(--skill-ts7));opacity:.15;transform:rotate(-15deg);border-radius:40%}.skills-hero-content{position:relative;z-index:1;max-width:700px}.skills-title{font-size:var(--font-size-4xl);color:var(--text-inverse);margin-bottom:var(--space-4)}.skills-subtitle{font-size:var(--font-size-lg);color:#ffffffb3;line-height:var(--line-height-relaxed)}.skills-intro{background:var(--bg-primary);padding:var(--space-10) 0}.intro-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-5)}.intro-card{padding:var(--space-6);background:var(--bg-secondary);border-radius:var(--radius-xl)}.intro-card h3{font-size:var(--font-size-lg);margin-bottom:var(--space-3)}.intro-card p{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-relaxed)}.taxonomy-section{background:var(--bg-secondary);padding:var(--space-12) 0}.section-header{text-align:center;margin-bottom:var(--space-8)}.section-header h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-2)}.section-header p{font-size:var(--font-size-sm);color:var(--text-secondary);max-width:600px;margin:0 auto}.skills-visual{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-4)}.skill-visual-item{display:flex;flex-direction:column;align-items:center;padding:var(--space-5) var(--space-6);background:var(--bg-primary);border-radius:var(--radius-xl);text-decoration:none;border:2px solid var(--color-gray-200);transition:all var(--transition-normal);animation:fadeIn var(--transition-normal) ease-out;animation-delay:var(--delay, 0ms);animation-fill-mode:backwards;min-width:140px}.skill-visual-item:hover{transform:translateY(-4px);border-color:var(--skill-color, var(--color-primary));box-shadow:0 8px 30px -10px var(--skill-color, var(--color-primary))}.skill-visual-code{font-family:monospace;font-weight:700;font-size:var(--font-size-2xl);color:var(--skill-color, var(--color-primary));margin-bottom:var(--space-2)}.skill-visual-name{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);text-align:center;margin-bottom:var(--space-1)}.skill-visual-subcount{font-size:var(--font-size-xs);color:var(--text-tertiary)}.skills-list-section{background:var(--bg-primary);padding:var(--space-12) 0}.skills-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:var(--space-6)}@media(max-width:768px){.skills-hero{padding:var(--space-8) 0}.skills-title{font-size:var(--font-size-3xl)}.skills-list{grid-template-columns:1fr}.skill-visual-item{min-width:120px;padding:var(--space-4)}}.ts-hero-banner{position:relative;min-height:300px;background:linear-gradient(135deg,var(--color-gray-900) 0%,var(--color-gray-800) 100%);overflow:hidden;display:flex;align-items:center}.ts-hero-banner .hero-noise{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");pointer-events:none}.ts-shape{position:absolute;top:0;right:0;width:55%;height:100%;pointer-events:none;overflow:hidden}.ts-blob{position:absolute;top:-30%;right:-15%;width:130%;height:160%}.ts-icon{position:absolute;top:50%;right:12%;transform:translateY(-50%);width:200px;height:200px;opacity:.05;stroke-width:1}.ts-hero-banner .hero-content{position:relative;z-index:10;max-width:680px;padding:var(--space-8) 0}.ts-hero-banner .hero-back-link{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-gray-400);font-size:var(--font-size-sm);text-decoration:none;margin-bottom:var(--space-4);transition:color var(--transition-fast)}.ts-hero-banner .hero-back-link:hover{color:var(--text-inverse)}.ts-badge{display:inline-flex;align-items:center;padding:var(--space-2) var(--space-3);background:var(--theme-color, var(--color-primary));color:#fff;font-size:var(--font-size-sm);font-weight:700;border-radius:var(--radius-md);margin-bottom:var(--space-4)}.ts-title-cn{font-size:var(--font-size-4xl);font-weight:800;color:var(--text-inverse);margin-bottom:var(--space-2);line-height:1.2}.hero-title-en{font-size:var(--font-size-lg);font-weight:500;color:var(--color-gray-400);margin-bottom:var(--space-6);font-style:italic}.ts-definition{display:flex;align-items:flex-start;gap:var(--space-4);max-width:560px}.definition-accent{width:3px;min-height:40px;background:var(--theme-color, var(--color-primary));border-radius:var(--radius-full);flex-shrink:0}.definition-text{font-size:var(--font-size-base);color:var(--color-gray-300);line-height:var(--line-height-relaxed)}@media(max-width:1024px){.ts-icon{width:160px;height:160px;right:8%}}@media(max-width:768px){.ts-hero-banner{min-height:260px}.ts-shape{opacity:.5}.ts-icon{width:120px;height:120px;right:5%;opacity:.04}.ts-hero-banner .hero-content{padding:var(--space-6) 0}.ts-title-cn{font-size:var(--font-size-3xl)}.hero-title-en{font-size:var(--font-size-base);margin-bottom:var(--space-4)}.definition-text{font-size:var(--font-size-sm)}}@media(max-width:480px){.ts-shape{display:none}.ts-title-cn{font-size:var(--font-size-2xl)}.ts-badge{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs)}.ts-definition{gap:var(--space-3)}}.skill-hero{background:linear-gradient(135deg,#1e1b4b,#312e81);padding:var(--space-10) 0;position:relative;overflow:hidden}.skill-hero:before{content:"";position:absolute;top:-30%;right:-10%;width:40%;height:180%;background:var(--skill-color, var(--color-primary));opacity:.2;transform:rotate(-10deg);border-radius:40%}.skill-hero-content{position:relative;z-index:1;max-width:700px}.skill-code-badge{display:inline-block;font-family:monospace;font-weight:700;font-size:var(--font-size-xl);padding:var(--space-2) var(--space-4);background:var(--skill-color, var(--color-primary));color:#fff;border-radius:var(--radius-md);margin-bottom:var(--space-4)}.skill-title{font-size:var(--font-size-4xl);color:var(--text-inverse);margin-bottom:var(--space-2)}.skill-name-en{font-size:var(--font-size-lg);color:#fff9;margin-bottom:var(--space-4)}.skill-tagline{font-size:var(--font-size-lg);color:#fffc;padding-left:var(--space-4);border-left:3px solid var(--skill-color, var(--color-primary))}.skill-definition-section{background:var(--bg-primary);padding:var(--space-10) 0}.definition-content{max-width:800px;margin-bottom:var(--space-8)}.definition-content h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-4)}.definition-text{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--text-secondary)}.look-fors,.teacher-moves,.progression-notes{max-width:800px;padding:var(--space-6);background:var(--bg-secondary);border-radius:var(--radius-xl);margin-bottom:var(--space-5)}.look-fors h3,.teacher-moves h3,.progression-notes h3{font-size:var(--font-size-lg);margin-bottom:var(--space-4)}.look-fors-list,.teacher-moves-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-3)}.look-fors-list li,.teacher-moves-list li{position:relative;padding-left:var(--space-5);font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-relaxed)}.look-fors-list li:before{content:"✓";position:absolute;left:0;color:var(--color-success);font-weight:700}.teacher-moves-list li:before{content:"→";position:absolute;left:0;color:var(--color-primary)}.progression-notes p{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-relaxed)}.subskills-section{background:var(--bg-secondary);padding:var(--space-10) 0}.subskills-section h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-6)}.subskills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-5)}.subskill-card{background:var(--bg-primary);border-radius:var(--radius-xl);padding:var(--space-6);border-top:4px solid var(--skill-color, var(--color-primary))}.subskill-header{margin-bottom:var(--space-3)}.subskill-code{font-family:monospace;font-weight:700;font-size:var(--font-size-sm);color:var(--skill-color, var(--color-primary))}.subskill-name{font-size:var(--font-size-lg);margin:var(--space-1) 0}.subskill-name-en{font-size:var(--font-size-sm);color:var(--text-tertiary)}.subskill-tagline{font-size:var(--font-size-sm);font-weight:500;color:var(--skill-color, var(--color-primary));margin-bottom:var(--space-3)}.subskill-definition{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-4)}.subskill-lookfors{font-size:var(--font-size-xs);color:var(--text-tertiary);padding-top:var(--space-3);border-top:1px solid var(--color-gray-200)}.subskill-lookfors ul{list-style:disc;padding-left:var(--space-5);margin-top:var(--space-2)}.subskill-lookfors li{margin-bottom:var(--space-1)}.related-standards-section{background:var(--bg-primary);padding:var(--space-10) 0}.related-standards-section h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-2)}.section-desc{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-6)}.section-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-4)}.standards-filters{display:flex;flex-direction:column;gap:var(--space-5);margin-bottom:var(--space-6);padding:var(--space-5);background:var(--bg-secondary);border-radius:var(--radius-xl)}.filter-group h4{font-size:var(--font-size-sm);margin-bottom:var(--space-3)}.subject-filters{display:flex;flex-wrap:wrap;gap:var(--space-2)}.subject-filter-btn{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);background:var(--bg-primary);border:1px solid var(--color-gray-300);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast)}.subject-filter-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.subject-filter-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.standards-count{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-4)}.standards-list{display:flex;flex-direction:column;gap:var(--space-3)}.load-more-hint{text-align:center;padding:var(--space-4);font-size:var(--font-size-sm);color:var(--text-tertiary)}.empty-state,.not-found{text-align:center;padding:var(--space-12);background:var(--bg-secondary);border-radius:var(--radius-xl)}.empty-state p,.not-found p{color:var(--text-secondary);margin-bottom:var(--space-4)}@media(max-width:768px){.skill-hero{padding:var(--space-8) 0}.skill-title{font-size:var(--font-size-3xl)}.subskills-grid{grid-template-columns:1fr}}.search-header{background:linear-gradient(135deg,var(--color-gray-900) 0%,var(--color-gray-800) 100%);padding:var(--space-8) 0}.search-header .container{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.search-header h1{font-size:var(--font-size-2xl);color:var(--text-inverse);flex:1;margin:0}.header-actions{display:flex;gap:var(--space-2)}.compare-toast{position:fixed;bottom:var(--space-6);left:50%;transform:translate(-50%);background:var(--color-gray-800);color:var(--text-inverse);padding:var(--space-3) var(--space-6);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:1000;animation:slideUpFade .3s ease-out}@keyframes slideUpFade{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.search-results-page .filter-section{background:var(--bg-primary);padding:var(--space-6) 0;border-bottom:1px solid var(--color-gray-200);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.search-results-page .filter-card{max-width:100%}.draft-indicator{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:#fff3cd;border:1px solid #ffc107;border-radius:var(--radius-md);margin-bottom:var(--space-4);font-size:var(--font-size-sm);color:var(--color-gray-800)}.filter-group{margin-bottom:var(--space-5)}.filter-label{font-weight:600;margin-bottom:var(--space-2)}.filter-label-lg{font-size:var(--font-size-xl);color:var(--text-primary)}.filter-label-md{font-size:var(--font-size-lg);color:var(--text-primary)}.filter-hint{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-bottom:var(--space-3)}.filter-options{display:flex;flex-wrap:wrap;gap:var(--space-2)}.filter-group-primary{padding:var(--space-5);background:var(--bg-secondary);border-radius:var(--radius-xl);margin-bottom:var(--space-5)}.filter-options-primary{gap:var(--space-3)}.checkbox-item-lg{padding:var(--space-3) var(--space-5);font-size:var(--font-size-lg);font-weight:500;border-radius:var(--radius-lg);border:2px solid var(--color-gray-200);background:var(--bg-primary);cursor:pointer;transition:all var(--transition-fast)}.checkbox-item-lg:hover{border-color:var(--color-primary);background:var(--color-gray-50)}.checkbox-item-lg.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.filter-group-secondary{padding:var(--space-4);background:var(--bg-tertiary);border-radius:var(--radius-lg);margin-bottom:var(--space-5)}.filter-options-secondary{gap:var(--space-2)}.checkbox-item-md{padding:var(--space-2) var(--space-4);font-size:var(--font-size-base);font-weight:500;border-radius:var(--radius-md);border:1px solid var(--color-gray-300);background:var(--bg-primary);cursor:pointer;transition:all var(--transition-fast)}.checkbox-item-md:hover{border-color:var(--color-primary)}.checkbox-item-md.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.filter-badge{font-size:var(--font-size-xs);color:inherit;opacity:.7;margin-left:var(--space-1)}.filter-group-tertiary{border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);overflow:hidden}.skills-accordion-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);background:var(--bg-tertiary);border:none;cursor:pointer;transition:background var(--transition-fast)}.skills-accordion-header:hover{background:var(--color-gray-200)}.accordion-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary)}.accordion-icon{font-size:var(--font-size-xs);color:var(--text-tertiary)}.optional-badge{font-size:var(--font-size-xs);padding:2px var(--space-2);background:var(--color-gray-300);border-radius:var(--radius-sm);color:var(--text-tertiary)}.selected-count{font-size:var(--font-size-xs);color:var(--color-primary);font-weight:500}.filter-options-tertiary{padding:var(--space-4);background:var(--bg-primary)}.checkbox-item-sm{padding:var(--space-1) var(--space-3);font-size:var(--font-size-sm);border-radius:var(--radius-md);border:1px solid var(--color-gray-200);background:var(--bg-primary);cursor:pointer;transition:all var(--transition-fast)}.checkbox-item-sm:hover{border-color:var(--color-gray-400)}.checkbox-item-sm.active{background:var(--color-gray-700);border-color:var(--color-gray-700);color:#fff}.skill-code-badge{font-family:monospace;font-weight:600;font-size:var(--font-size-xs);margin-right:var(--space-1)}.skill-option{gap:var(--space-2)}.filter-actions{display:flex;gap:var(--space-4);align-items:center;padding-top:var(--space-4);border-top:1px solid var(--color-gray-200)}.action-group{display:flex;align-items:center;gap:var(--space-3)}.validation-hint{font-size:var(--font-size-sm);color:var(--color-warning)}.btn.disabled{opacity:.5;cursor:not-allowed}.results-section{background:var(--bg-secondary);padding:var(--space-8) 0;min-height:50vh}@media(max-width:768px){.search-header{padding:var(--space-6) 0}.search-header .container{flex-direction:column;align-items:flex-start}.search-header h1{font-size:var(--font-size-xl)}.header-actions{width:100%;justify-content:space-between}.checkbox-item-lg{padding:var(--space-2) var(--space-4);font-size:var(--font-size-base)}.filter-actions,.action-group{flex-direction:column;align-items:stretch}}.glossary-hero{background:linear-gradient(135deg,#134e4a,#115e59);padding:var(--space-10) 0}.glossary-hero h1{font-size:var(--font-size-4xl);color:var(--text-inverse);margin-bottom:var(--space-2)}.glossary-hero p{color:#ffffffb3;font-size:var(--font-size-lg)}.glossary-filters{background:var(--bg-primary);padding:var(--space-6) 0;border-bottom:1px solid var(--color-gray-200);position:sticky;top:64px;z-index:50}.filter-row{display:flex;flex-direction:column;gap:var(--space-4)}.search-input{max-width:400px}.category-tabs{display:flex;flex-wrap:wrap;gap:var(--space-2)}.category-tab{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);background:var(--bg-tertiary);border:none;border-radius:var(--radius-full);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.category-tab:hover{background:var(--color-gray-200);color:var(--text-primary)}.category-tab.active{background:var(--color-primary);color:#fff}.glossary-content{background:var(--bg-secondary);padding:var(--space-8) 0;min-height:60vh}.terms-count{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-bottom:var(--space-4)}.terms-list{display:flex;flex-direction:column;gap:var(--space-4)}.term-card{background:var(--bg-primary);border-radius:var(--radius-xl);padding:var(--space-6);border:1px solid var(--color-gray-200)}.term-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-3)}.term-name{font-size:var(--font-size-lg);color:var(--text-primary);margin:0}.term-category{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-3);background:var(--color-primary-subtle);color:var(--color-primary);border-radius:var(--radius-full);white-space:nowrap}.term-definition{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-4)}.term-examples{font-size:var(--font-size-sm);color:var(--text-secondary);padding:var(--space-3);background:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--space-3)}.term-examples strong{color:var(--text-primary)}.term-examples ul{list-style:disc;padding-left:var(--space-5);margin-top:var(--space-2)}.term-examples li{margin-bottom:var(--space-1)}.term-related{font-size:var(--font-size-sm);display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.term-related strong{color:var(--text-primary)}.related-tag{font-family:monospace;font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2);background:var(--color-gray-100);border-radius:var(--radius-sm);color:var(--text-tertiary)}.glossary-page .empty-state{text-align:center;padding:var(--space-10);background:var(--bg-primary);border-radius:var(--radius-xl)}@media(max-width:768px){.glossary-hero{padding:var(--space-8) 0}.glossary-hero h1{font-size:var(--font-size-3xl)}.search-input{max-width:100%}.term-header{flex-direction:column;gap:var(--space-2)}}.breadcrumb-bar{background:var(--bg-secondary);padding:var(--space-3) 0;border-bottom:1px solid var(--color-gray-200)}.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);font-size:var(--font-size-sm)}.breadcrumb a{color:var(--text-secondary);text-decoration:none}.breadcrumb a:hover{color:var(--color-primary)}.breadcrumb .separator{color:var(--text-tertiary)}.breadcrumb .current{color:var(--text-primary);font-weight:500}.standard-header{background:linear-gradient(135deg,var(--color-gray-900) 0%,var(--color-gray-800) 100%);padding:var(--space-10) 0;position:relative;overflow:hidden}.standard-header:before{content:"";position:absolute;top:-50%;right:-10%;width:40%;height:200%;background:var(--subject-color, var(--color-primary));opacity:.15;transform:rotate(-10deg);border-radius:40%}.header-content{position:relative;z-index:1}.header-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.standard-code{font-family:monospace;font-weight:700;font-size:var(--font-size-lg);padding:var(--space-2) var(--space-4);background:var(--subject-color, var(--color-primary));color:#fff;border-radius:var(--radius-md)}.subject-badge{font-size:var(--font-size-sm);font-weight:500;padding:var(--space-1) var(--space-3);background:#ffffff1a;color:var(--text-inverse);border-radius:var(--radius-full);text-decoration:none;transition:background var(--transition-fast)}.subject-badge:hover{background:#fff3}.grade-band-badge{font-size:var(--font-size-sm);color:#fff9}.standard-title{font-size:var(--font-size-2xl);color:var(--text-inverse);line-height:var(--line-height-relaxed);max-width:800px;margin-bottom:var(--space-5)}.header-actions{display:flex;gap:var(--space-3)}.classification-section{background:var(--bg-primary);padding:var(--space-6) 0;border-bottom:1px solid var(--color-gray-200)}.classification-grid{display:flex;flex-wrap:wrap;gap:var(--space-6)}.classification-item{display:flex;flex-direction:column;gap:var(--space-1)}.classification-item .label{font-size:var(--font-size-xs);color:var(--text-tertiary);text-transform:uppercase}.classification-item .value{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary)}.classification-item .value.link{color:var(--color-primary);text-decoration:none}.classification-item .value.link:hover{text-decoration:underline}.skills-section{background:var(--bg-secondary);padding:var(--space-8) 0}.skills-section h2{font-size:var(--font-size-xl);margin-bottom:var(--space-5)}.skills-container{display:flex;flex-direction:column;gap:var(--space-5)}.skill-group h3{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-3)}.skill-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.skill-tag{font-size:var(--font-size-sm);font-weight:600;font-family:monospace;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);text-decoration:none;transition:all var(--transition-fast)}.skill-tag.primary{background:var(--skill-color, var(--color-primary));color:#fff}.skill-tag.primary:hover{opacity:.9;transform:translateY(-1px)}.skill-tag.secondary{background:transparent;border:2px solid var(--skill-color, var(--color-primary));color:var(--skill-color, var(--color-primary))}.skill-tag.secondary:hover{background:var(--skill-color, var(--color-primary));color:#fff}.no-skills{color:var(--text-tertiary);font-style:italic}.skill-rationale{padding:var(--space-4);background:var(--bg-primary);border-radius:var(--radius-lg);font-size:var(--font-size-sm)}.skill-rationale strong{color:var(--text-primary)}.skill-rationale p{color:var(--text-secondary);margin-top:var(--space-2);line-height:var(--line-height-relaxed)}.content-section{background:var(--bg-primary);padding:var(--space-10) 0}.content-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--space-5)}.content-card{padding:var(--space-6);background:var(--bg-secondary);border-radius:var(--radius-xl)}.content-card h3{font-size:var(--font-size-lg);margin-bottom:var(--space-4)}.content-card p{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-relaxed);white-space:pre-wrap}.resources-section{background:var(--bg-primary);padding:var(--space-6) 0;border-top:1px solid var(--color-gray-200)}.resources-header-btn{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--bg-secondary);border:1px dashed var(--color-gray-300);border-radius:var(--radius-lg);cursor:pointer;font-size:var(--font-size-base);font-weight:500;color:var(--text-secondary);transition:all var(--transition-fast)}.resources-header-btn:hover{border-color:var(--color-primary);color:var(--text-primary)}.resources-header-btn.expanded{border-style:solid;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.coming-soon-badge{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2);background:var(--color-primary);color:#fff;border-radius:var(--radius-full)}.resources-header-btn .toggle-icon{margin-left:auto;font-size:10px;transition:transform var(--transition-fast)}.resources-header-btn .toggle-icon.up{transform:rotate(180deg)}.resources-placeholder{background:var(--bg-secondary);border:1px dashed var(--color-gray-300);border-top:none;border-radius:0 0 var(--radius-lg) var(--radius-lg);padding:var(--space-8)}.placeholder-content{text-align:center;max-width:400px;margin:0 auto}.placeholder-icon{font-size:3rem;display:block;margin-bottom:var(--space-4)}.placeholder-content h4{font-size:var(--font-size-lg);margin-bottom:var(--space-2);color:var(--text-primary)}.placeholder-content p{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-4)}.placeholder-content ul{text-align:left;display:inline-block;font-size:var(--font-size-sm);color:var(--text-tertiary)}.placeholder-content li{padding:var(--space-1) 0}.navigation-section{background:var(--bg-secondary);padding:var(--space-8) 0;border-top:1px solid var(--color-gray-200)}.nav-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:var(--space-6);align-items:start}.nav-group{display:flex;flex-direction:column;gap:var(--space-2)}.nav-group.center{justify-self:center;align-items:center}.nav-group.right{text-align:right;align-items:flex-end}.nav-group h4{font-size:var(--font-size-xs);color:var(--text-tertiary);text-transform:uppercase}.nav-links{display:flex;flex-direction:column;gap:var(--space-1)}.nav-link{font-size:var(--font-size-sm);font-family:monospace;color:var(--color-primary);text-decoration:none;padding:var(--space-2) var(--space-3);background:var(--bg-primary);border-radius:var(--radius-md);transition:all var(--transition-fast)}.nav-link:hover{background:var(--color-primary);color:#fff}.nav-empty{font-size:var(--font-size-sm);color:var(--text-tertiary)}@media(max-width:768px){.standard-header{padding:var(--space-8) 0}.standard-title{font-size:var(--font-size-xl)}.content-grid{grid-template-columns:1fr}.nav-grid{grid-template-columns:1fr;gap:var(--space-4)}.nav-group.center{order:-1}.nav-group.right{text-align:left;align-items:flex-start}}.collections-hero{background:linear-gradient(135deg,var(--color-gray-900) 0%,var(--color-gray-800) 100%);padding:var(--space-10) 0}.collections-hero h1{font-size:var(--font-size-3xl);color:var(--text-inverse);margin-bottom:var(--space-2)}.collections-hero p{font-size:var(--font-size-lg);color:var(--color-gray-400)}.collections-actions{background:var(--bg-primary);padding:var(--space-6) 0;border-bottom:1px solid var(--color-gray-200)}.actions-row{display:flex;gap:var(--space-3)}.import-btn{cursor:pointer}.collections-grid-section{background:var(--bg-secondary);padding:var(--space-10) 0;min-height:50vh}.collections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-5)}.collection-card{background:var(--bg-primary);border-radius:var(--radius-xl);border:1px solid var(--color-gray-200);overflow:hidden;position:relative;transition:all var(--transition-fast)}.collection-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.collection-card-link{display:block;padding:var(--space-6);text-decoration:none;color:inherit}.collection-icon{font-size:var(--font-size-2xl);margin-bottom:var(--space-3)}.collection-card h3{font-size:var(--font-size-lg);color:var(--text-primary);margin-bottom:var(--space-2)}.collection-card .col-desc{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-4);line-height:var(--line-height-relaxed)}.col-meta{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--font-size-xs);color:var(--text-tertiary)}.col-count{font-weight:600;color:var(--color-primary)}.delete-btn{position:absolute;top:var(--space-3);right:var(--space-3);padding:var(--space-2);background:transparent;border:none;cursor:pointer;opacity:0;transition:opacity var(--transition-fast)}.collection-card:hover .delete-btn{opacity:1}.delete-btn:hover{transform:scale(1.1)}.collections-grid-section .empty-state{text-align:center;padding:var(--space-12);background:var(--bg-primary);border-radius:var(--radius-xl)}.empty-state p{color:var(--text-secondary);margin-bottom:var(--space-4)}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.modal{background:var(--bg-primary);border-radius:var(--radius-xl);padding:var(--space-8);width:100%;max-width:480px;box-shadow:var(--shadow-xl)}.modal h2{font-size:var(--font-size-xl);margin-bottom:var(--space-6)}.form-group label{display:block;font-size:var(--font-size-sm);font-weight:500;margin-bottom:var(--space-2);color:var(--text-secondary)}.form-group input,.form-group textarea{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:border-color var(--transition-fast)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6)}.collection-detail-hero{background:linear-gradient(135deg,var(--color-gray-900) 0%,var(--color-gray-800) 100%);padding:var(--space-10) 0}.collection-detail-hero .back-link{display:inline-block;color:var(--color-gray-400);font-size:var(--font-size-sm);margin-bottom:var(--space-4);transition:color var(--transition-fast)}.collection-detail-hero .back-link:hover{color:var(--text-inverse)}.hero-content{margin-bottom:var(--space-6)}.hero-title-row{display:flex;align-items:center;gap:var(--space-3)}.hero-title-row h1{font-size:var(--font-size-3xl);color:var(--text-inverse)}.edit-btn{padding:var(--space-2);background:transparent;border:none;cursor:pointer;font-size:1.2em;opacity:.6;transition:opacity var(--transition-fast)}.edit-btn:hover{opacity:1}.hero-desc{font-size:var(--font-size-lg);color:var(--color-gray-300);margin-top:var(--space-3)}.hero-meta{display:flex;gap:var(--space-6);margin-top:var(--space-4);font-size:var(--font-size-sm);color:var(--color-gray-400)}.edit-form{margin-bottom:var(--space-6)}.edit-name-input{width:100%;padding:var(--space-3);font-size:var(--font-size-2xl);font-weight:700;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-md);color:var(--text-inverse);margin-bottom:var(--space-3)}.edit-desc-input{width:100%;padding:var(--space-3);font-size:var(--font-size-base);background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-md);color:var(--text-inverse);resize:vertical}.edit-actions{display:flex;gap:var(--space-3);margin-top:var(--space-4)}.collection-actions{display:flex;gap:var(--space-3)}.collection-stats{background:var(--bg-primary);padding:var(--space-8) 0;border-bottom:1px solid var(--color-gray-200)}.collection-stats h3{font-size:var(--font-size-lg);margin-bottom:var(--space-5)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-5)}.stat-card{background:var(--bg-secondary);padding:var(--space-5);border-radius:var(--radius-xl)}.stat-card h4{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-4)}.stat-bars{display:flex;flex-direction:column;gap:var(--space-3)}.stat-bar-item{display:grid;grid-template-columns:80px 1fr 40px;align-items:center;gap:var(--space-3)}.bar-label{font-size:var(--font-size-xs);color:var(--text-secondary);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.bar-wrapper{height:8px;background:var(--color-gray-200);border-radius:var(--radius-full);overflow:hidden}.bar{height:100%;background:var(--color-primary);border-radius:var(--radius-full);transition:width var(--transition-normal)}.bar.grade-bar{background:var(--color-success)}.bar-count{font-size:var(--font-size-xs);font-weight:600;color:var(--text-primary);text-align:right}.skill-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.skill-chip{display:inline-flex;padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);font-weight:600;font-family:monospace;background:var(--skill-color, var(--color-gray-500));color:#fff;border-radius:var(--radius-md);text-decoration:none;transition:opacity var(--transition-fast)}.skill-chip:hover{opacity:.9}.collection-standards{background:var(--bg-secondary);padding:var(--space-10) 0}.collection-standards h3{font-size:var(--font-size-xl);margin-bottom:var(--space-6)}.standards-list{display:flex;flex-direction:column;gap:var(--space-4)}.standard-item{position:relative}.remove-btn{position:absolute;top:var(--space-3);right:var(--space-3);width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--color-error);color:#fff;border:none;border-radius:var(--radius-full);cursor:pointer;opacity:0;transition:opacity var(--transition-fast);font-size:var(--font-size-xs)}.standard-item:hover .remove-btn{opacity:1}.remove-btn:hover{transform:scale(1.1)}.collection-standards .empty-state{text-align:center;padding:var(--space-12);background:var(--bg-primary);border-radius:var(--radius-xl)}.empty-state p{color:var(--text-secondary);margin-bottom:var(--space-2)}.empty-state .hint{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-bottom:var(--space-6)}.print-page{min-height:100vh;background:var(--bg-secondary)}.print-controls{position:sticky;top:0;background:var(--bg-primary);padding:var(--space-6);border-bottom:1px solid var(--color-gray-200);z-index:100}.controls-header{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4)}.controls-header .back-link{color:var(--text-secondary);font-size:var(--font-size-sm)}.controls-header h2{font-size:var(--font-size-lg);margin:0}.options-grid{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-4)}.option{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);cursor:pointer}.print-btn{padding:var(--space-3) var(--space-6)}.print-content{max-width:800px;margin:0 auto;padding:var(--space-8);background:#fff;min-height:100vh}.print-header{text-align:center;margin-bottom:var(--space-8);padding-bottom:var(--space-6);border-bottom:2px solid var(--color-gray-300)}.print-header h1{font-size:24pt;margin-bottom:var(--space-2)}.print-meta{font-size:10pt;color:var(--text-tertiary)}.print-standards{display:flex;flex-direction:column;gap:var(--space-6)}.print-standard{page-break-inside:avoid;padding:var(--space-4);border:1px solid var(--color-gray-200);border-radius:var(--radius-md)}.print-standard-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-gray-100)}.print-number{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;font-size:10pt;font-weight:700;border-radius:var(--radius-full)}.print-code{font-family:monospace;font-size:9pt;font-weight:600;color:var(--text-secondary)}.print-subject,.print-band{font-size:9pt;color:var(--text-tertiary)}.print-standard-meta{display:flex;gap:var(--space-4);font-size:9pt;color:var(--text-secondary);margin-bottom:var(--space-3)}.print-standard-text{font-size:11pt;line-height:1.6;color:var(--text-primary);margin-bottom:var(--space-3)}.print-skills{font-size:9pt;color:var(--color-primary);font-weight:500;margin-bottom:var(--space-3)}.print-detail{font-size:10pt;margin-bottom:var(--space-3);padding:var(--space-3);background:var(--bg-secondary);border-radius:var(--radius-sm)}.print-detail strong{display:block;margin-bottom:var(--space-1);color:var(--text-secondary)}.print-detail p{color:var(--text-primary);line-height:1.5;white-space:pre-wrap}.print-footer{margin-top:var(--space-8);padding-top:var(--space-6);border-top:2px solid var(--color-gray-300);text-align:center;font-size:9pt;color:var(--text-tertiary)}@media print{.no-print{display:none!important}.print-page{background:#fff}.print-content{padding:0;max-width:none}.print-header{margin-bottom:20pt}.print-header h1{font-size:18pt}.print-standard{border:1px solid #ddd;margin-bottom:10pt;padding:10pt}.print-detail{background:#f5f5f5}.print-footer{position:fixed;bottom:0;left:0;right:0;background:#fff;padding:10pt 0}}@media screen{.print-content{box-shadow:var(--shadow-lg);margin:var(--space-8) auto;border-radius:var(--radius-lg)}}.styleguide-page{min-height:100vh;background:var(--bg-primary);position:relative;overflow-x:hidden}.styleguide-content{position:relative;z-index:1}.styleguide-header{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);padding:var(--space-12) 0 var(--space-16);position:relative}.styleguide-header .header-content{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:var(--space-6)}.styleguide-header .header-text h1{font-family:var(--font-display);font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--text-inverse);margin-bottom:var(--space-2)}.styleguide-header .tagline{font-size:var(--font-size-lg);color:#fffc}.wave-divider{position:absolute;bottom:0;left:0;right:0;height:60px;overflow:hidden}.wave-divider svg{width:100%;height:100%;fill:var(--bg-primary)}.density-toggle{display:flex;align-items:center;gap:var(--space-2);background:#ffffff26;padding:var(--space-1);border-radius:var(--radius-lg)}.density-toggle .toggle-label{color:#fffc;font-size:var(--font-size-sm);padding:0 var(--space-2)}.density-toggle .toggle-btn{padding:var(--space-2) var(--space-4);border:none;background:transparent;color:#fffc;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);transition:all var(--transition-fast)}.density-toggle .toggle-btn:hover{background:#ffffff1a}.density-toggle .toggle-btn.active{background:var(--bg-surface);color:var(--color-primary);font-weight:var(--font-weight-semibold)}.bubble-pattern{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:0;overflow:hidden}.bubble-pattern .bubble{position:absolute;border-radius:var(--radius-full);background:var(--color-primary);opacity:var(--bubble-opacity)}.bubble-pattern .b1{width:300px;height:300px;top:10%;left:5%}.bubble-pattern .b2{width:200px;height:200px;top:50%;right:10%}.bubble-pattern .b3{width:150px;height:150px;bottom:20%;left:15%}.bubble-pattern .b4{width:100px;height:100px;top:30%;right:30%}.bubble-pattern .b5{width:250px;height:250px;bottom:10%;right:5%}.guide-section{padding:var(--section-gap) 0}.guide-section:nth-child(2n){background:var(--bg-secondary)}.section-title{font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--space-8);display:flex;align-items:center;gap:var(--space-3)}.subsection{margin-bottom:var(--space-10)}.subsection h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-6);padding-bottom:var(--space-2);border-bottom:2px solid var(--border-default)}.subsection h4{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.color-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.color-swatch{display:flex;flex-direction:column;gap:var(--space-2)}.color-swatch .swatch{width:100%;height:64px;border-radius:var(--radius-lg);background:var(--swatch)}.color-swatch .swatch.bordered{border:1px solid var(--border-default)}.color-swatch .name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary)}.color-swatch code{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--text-tertiary)}.typography-samples{display:flex;flex-direction:column;gap:var(--space-6)}.type-sample{padding:var(--card-padding);background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-default)}.type-label{display:block;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);margin-bottom:var(--space-2)}.demo-h1{font-family:var(--font-display);font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--text-primary);line-height:var(--line-height-tight)}.demo-h2{font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);line-height:var(--line-height-tight)}.demo-h3{font-family:var(--font-body);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.demo-body{font-family:var(--font-body);font-size:var(--font-size-base);color:var(--text-secondary);line-height:var(--line-height-relaxed);max-width:65ch}.demo-caption{font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--text-tertiary)}.token-demos{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-6)}.token-demo-group{padding:var(--card-padding);background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-default)}.token-demo-group h4{margin-bottom:var(--space-4)}.spacing-samples{display:flex;flex-direction:column;gap:var(--space-2)}.spacing-item{display:flex;align-items:center;gap:var(--space-3)}.spacing-bar{height:16px;background:var(--color-primary);border-radius:var(--radius-sm);min-width:4px}.spacing-item code{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--text-tertiary)}.radius-samples{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.radius-item{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.radius-box{width:48px;height:48px;background:var(--color-primary)}.radius-item code{font-family:var(--font-mono);font-size:10px;color:var(--text-tertiary)}.shadow-samples{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.shadow-item{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.shadow-box{width:64px;height:64px;background:var(--bg-surface);border-radius:var(--radius-lg)}.shadow-item code{font-family:var(--font-mono);font-size:10px;color:var(--text-tertiary)}.component-row{display:flex;flex-wrap:wrap;gap:var(--space-6)}.component-group{flex:1;min-width:200px;padding:var(--card-padding);background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-default)}.component-group.full-width{flex-basis:100%}.button-states{display:flex;flex-wrap:wrap;gap:var(--space-2)}.styleguide-page .btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--button-padding-y) var(--button-padding-x);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--radius-lg);border:none;cursor:pointer;transition:all var(--transition-fast)}.styleguide-page .btn:disabled{opacity:.5;cursor:not-allowed}.styleguide-page .btn-primary{background:var(--color-primary);color:var(--text-inverse)}.styleguide-page .btn-primary:hover:not(:disabled),.styleguide-page .btn-primary.hover{background:var(--color-primary-hover);box-shadow:var(--shadow-primary)}.styleguide-page .btn-primary:active:not(:disabled),.styleguide-page .btn-primary.active{background:var(--color-primary-active);transform:translateY(1px)}.styleguide-page .btn-secondary{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-default)}.styleguide-page .btn-secondary:hover:not(:disabled),.styleguide-page .btn-secondary.hover{border-color:var(--color-primary);color:var(--color-primary)}.styleguide-page .btn-secondary:active:not(:disabled),.styleguide-page .btn-secondary.active{background:var(--bg-secondary)}.styleguide-page .btn-ghost{background:transparent;color:var(--color-primary)}.styleguide-page .btn-ghost:hover:not(:disabled),.styleguide-page .btn-ghost.hover{background:#0891b21a}.styleguide-page .btn-ghost:active:not(:disabled),.styleguide-page .btn-ghost.active{background:#0891b233}.styleguide-page .btn-icon{width:40px;height:40px;padding:0;background:var(--bg-surface);border:1px solid var(--border-default);font-size:var(--font-size-lg);color:var(--text-secondary)}.styleguide-page .btn-icon:hover:not(:disabled),.styleguide-page .btn-icon.hover{color:var(--color-accent);border-color:var(--color-accent)}.styleguide-page .btn-icon:active:not(:disabled),.styleguide-page .btn-icon.active{background:var(--color-accent);color:var(--text-inverse)}.chip-demo{display:flex;flex-wrap:wrap;gap:var(--space-2)}.styleguide-page .chip{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--radius-full);background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-default);cursor:pointer;transition:all var(--transition-fast)}.styleguide-page .chip:hover{border-color:var(--color-primary);color:var(--color-primary)}.styleguide-page .chip.selected{background:var(--color-primary);color:var(--text-inverse);border-color:var(--color-primary)}.styleguide-page .chip.subject{background:var(--chip-color);color:#fff;border-color:transparent}.styleguide-page .chip.skill{background:var(--chip-color);color:#fff;border-color:transparent;font-family:var(--font-mono);font-size:var(--font-size-xs)}.tabs-demo{display:flex;gap:var(--space-1);padding:var(--space-1);background:var(--bg-secondary);border-radius:var(--radius-lg)}.tab-btn{flex:1;padding:var(--space-3) var(--space-4);background:transparent;border:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{background:var(--bg-surface);color:var(--color-primary);box-shadow:var(--shadow-sm)}.card-demo{width:100%;max-width:400px}.demo-card{padding:var(--card-padding);background:var(--bg-surface);border-radius:var(--radius-xl);border:1px solid var(--border-default);box-shadow:var(--shadow-sm)}.demo-card .card-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.demo-card .card-code{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-primary)}.demo-card .card-band{font-size:var(--font-size-xs);color:var(--text-tertiary);padding:var(--space-1) var(--space-2);background:var(--bg-secondary);border-radius:var(--radius-sm)}.demo-card .card-favorite{margin-left:auto;background:none;border:none;font-size:var(--font-size-lg);color:var(--text-tertiary);cursor:pointer}.demo-card .card-favorite:hover{color:var(--color-accent)}.demo-card .card-text{font-size:var(--font-size-base);color:var(--text-primary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-4)}.demo-card .card-tags{display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}.demo-card .skill-tag{padding:var(--space-1) var(--space-2);font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);background:var(--skill-color);color:#fff;border-radius:var(--radius-md)}.demo-card .expand-btn{width:100%;padding:var(--space-2);background:var(--bg-secondary);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.demo-card .expand-btn:hover{background:var(--border-default)}.accordion-demo{width:100%;max-width:400px}.accordion{border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden}.accordion-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:var(--space-4);background:var(--bg-surface);border:none;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast)}.accordion-header:hover{background:var(--bg-secondary)}.accordion-icon{font-size:var(--font-size-xs);color:var(--text-tertiary);transition:transform var(--transition-normal)}.accordion.open .accordion-icon{transform:rotate(180deg)}.accordion-content{max-height:0;overflow:hidden;transition:max-height var(--transition-slow)}.accordion.open .accordion-content{max-height:200px}.accordion-content p{padding:0 var(--space-4) var(--space-4);font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-relaxed)}.filter-bar-demo{width:100%}.filter-bar{display:flex;flex-wrap:wrap;gap:var(--space-4);padding:var(--space-4);background:var(--bg-surface);border-radius:var(--radius-xl);border:1px solid var(--border-default)}.filter-search{flex:1;min-width:200px}.filter-search input{width:100%;padding:var(--input-padding-y) var(--input-padding-x);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:var(--font-size-sm);transition:border-color var(--transition-fast)}.filter-search input:focus{outline:none;border-color:var(--color-primary)}.filter-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.states-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-4)}.state-demo{padding:var(--card-padding);background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-default)}.state-demo h4{margin-bottom:var(--space-4)}.state-box{min-height:120px;display:flex;align-items:center;justify-content:center}.brand-elements-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-6)}.brand-element{padding:var(--card-padding);background:var(--bg-surface);border-radius:var(--radius-xl);border:1px solid var(--border-default);text-align:center}.brand-element h4{margin-bottom:var(--space-4)}.brand-element code{display:block;margin-top:var(--space-4);font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--text-tertiary)}.element-demo{height:120px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border-radius:var(--radius-lg);overflow:hidden}.wave-demo{position:relative;background:var(--color-primary-dark)}.wave-divider-sample{position:absolute;bottom:0;left:0;right:0;height:50px}.wave-divider-sample svg{width:100%;height:100%;fill:var(--bg-secondary)}.bubble-demo{position:relative}.bubble-pattern-sample{width:100%;height:100%;position:relative}.bubble-pattern-sample .bubble{position:absolute;border-radius:var(--radius-full);background:var(--color-primary);opacity:.15}.bubble-pattern-sample .bubble:nth-child(1){width:60px;height:60px;top:20%;left:20%}.bubble-pattern-sample .bubble:nth-child(2){width:40px;height:40px;top:50%;right:25%}.bubble-pattern-sample .bubble:nth-child(3){width:30px;height:30px;bottom:15%;left:50%}.orca-fin{display:inline-block;width:24px;height:24px;background:var(--fin-color);clip-path:polygon(50% 0%,100% 100%,0% 100%);transform:rotate(15deg)}.orca-fin.large{width:48px;height:48px}.fin-demo{background:var(--bg-primary)}.styleguide-footer{padding:var(--space-8) 0;background:var(--bg-inverse);text-align:center}.styleguide-footer p{font-size:var(--font-size-sm);color:var(--text-inverse);opacity:.6}@media(max-width:768px){.styleguide-header .header-content{flex-direction:column;align-items:flex-start}.component-row{flex-direction:column}.component-group{width:100%}.color-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.feedback-page{min-height:100vh;background:linear-gradient(135deg,#0f172a,#1e293b);padding:var(--space-8) 0 var(--space-16)}.feedback-container{max-width:640px}.feedback-header{text-align:left;margin-bottom:var(--space-6)}.feedback-header h1{font-size:var(--font-size-3xl);font-weight:700;color:#fff;margin-bottom:var(--space-2)}.feedback-header p{font-size:var(--font-size-base);color:#fff9}.feedback-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-xl);padding:var(--space-8);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.form-group{margin-bottom:var(--space-5)}.form-label{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-sm);font-weight:500;color:#fffc;margin-bottom:var(--space-2)}.char-count,.form-hint{font-size:var(--font-size-xs);color:#fff6;font-weight:400}.form-input{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--font-size-base);color:#fff;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.form-input::placeholder{color:#ffffff4d}.form-input:hover{border-color:#ffffff40}.form-input:focus{outline:none;border-color:#0891b2;box-shadow:0 0 0 3px #0891b233}.form-textarea{resize:vertical;min-height:120px}.type-selector{display:flex;gap:var(--space-2);flex-wrap:wrap}.type-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);font-weight:500;color:#ffffffb3;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.type-btn:hover{background:#ffffff1a;border-color:#fff3}.type-btn.active{color:#fff;background:#0891b233;border-color:#0891b2;box-shadow:inset 0 0 0 1px #0891b24d}.type-icon{font-size:var(--font-size-base)}.form-error{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-lg);color:#fca5a5;font-size:var(--font-size-sm);margin-bottom:var(--space-4)}.error-icon{font-size:var(--font-size-base)}.form-actions{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-6)}.form-actions .btn{width:100%;justify-content:center}.form-actions .btn-lg{padding:var(--space-4) var(--space-6);font-size:var(--font-size-base)}.form-actions .btn-primary{background:#0891b2;color:#fff;border:none}.form-actions .btn-primary:hover:not(:disabled){background:#0e7490}.form-actions .btn-primary:disabled{opacity:.6;cursor:not-allowed}.form-actions .btn-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.form-actions .btn-secondary:hover{background:#ffffff26}.spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:var(--space-2)}@keyframes spin{to{transform:rotate(360deg)}}.success-card{text-align:center;padding:var(--space-12)}.success-icon{font-size:64px;margin-bottom:var(--space-4)}.success-card h2{font-size:var(--font-size-2xl);font-weight:700;color:#fff;margin-bottom:var(--space-2)}.success-card p{font-size:var(--font-size-base);color:#fff9;margin-bottom:var(--space-8)}.success-actions{display:flex;justify-content:center;gap:var(--space-3);flex-wrap:wrap}.success-actions .btn{min-width:140px}@media(max-width:640px){.feedback-card{padding:var(--space-5)}.type-selector{flex-direction:column}.type-btn{justify-content:center}.form-label{flex-direction:column;align-items:flex-start;gap:var(--space-1)}}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1}.footer{background:var(--color-gray-800);color:var(--color-gray-300);padding:var(--space-6) 0;text-align:center;font-size:var(--font-size-sm);margin-top:auto}.footer-content{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4)}.footer-links{display:flex;gap:var(--space-4)}.footer-link{color:var(--color-gray-400);text-decoration:none;transition:color var(--transition-fast)}.footer-link:hover{color:#fff}@media(max-width:640px){.footer-content{flex-direction:column;text-align:center}}:root{--color-primary: #0891B2;--color-primary-light: #22D3EE;--color-primary-dark: #0E7490;--color-primary-hover: #0E7490;--color-primary-active: #155E75;--color-secondary: #06B6D4;--color-secondary-light: #67E8F9;--color-secondary-dark: #0891B2;--color-accent: #F97316;--color-accent-light: #FDBA74;--color-accent-dark: #EA580C;--color-success: #10B981;--color-success-light: #D1FAE5;--color-success-dark: #059669;--color-warning: #F59E0B;--color-warning-light: #FEF3C7;--color-warning-dark: #D97706;--color-error: #EF4444;--color-error-light: #FEE2E2;--color-error-dark: #DC2626;--color-info: #3B82F6;--color-info-light: #DBEAFE;--color-info-dark: #2563EB;--bg-primary: #F8FAFC;--bg-secondary: #F1F5F9;--bg-surface: #FFFFFF;--bg-elevated: #FFFFFF;--bg-inverse: #0F172A;--text-primary: #0F172A;--text-secondary: #475569;--text-tertiary: #94A3B8;--text-disabled: #CBD5E1;--text-inverse: #F8FAFC;--text-link: var(--color-primary);--text-link-hover: var(--color-primary-dark);--border-default: #E2E8F0;--border-strong: #CBD5E1;--border-focus: var(--color-primary);--font-display: "Outfit", system-ui, sans-serif;--font-body: "Noto Sans SC", "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--space-0: 0;--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;--space-20: 5rem;--space-24: 6rem;--radius-none: 0;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-none: none;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-primary: 0 4px 14px -3px rgba(8, 145, 178, .3);--shadow-accent: 0 4px 14px -3px rgba(249, 115, 22, .3);--duration-instant: 0ms;--duration-fast: .15s;--duration-normal: .2s;--duration-slow: .3s;--duration-slower: .5s;--easing-default: cubic-bezier(.4, 0, .2, 1);--easing-in: cubic-bezier(.4, 0, 1, 1);--easing-out: cubic-bezier(0, 0, .2, 1);--easing-bounce: cubic-bezier(.68, -.55, .265, 1.55);--transition-fast: var(--duration-fast) var(--easing-default);--transition-normal: var(--duration-normal) var(--easing-default);--transition-slow: var(--duration-slow) var(--easing-default);--z-below: -1;--z-default: 0;--z-dropdown: 100;--z-sticky: 200;--z-modal: 300;--z-toast: 400;--z-tooltip: 500;--card-padding: var(--space-4);--card-gap: var(--space-3);--button-padding-x: var(--space-4);--button-padding-y: var(--space-2);--input-padding-x: var(--space-3);--input-padding-y: var(--space-2);--list-gap: var(--space-3);--section-gap: var(--space-8);--bubble-opacity: .04;--wave-color-1: var(--color-primary);--wave-color-2: var(--color-secondary);--fin-color: var(--color-primary-dark)}[data-density=comfortable]{--card-padding: var(--space-6);--card-gap: var(--space-4);--button-padding-x: var(--space-5);--button-padding-y: var(--space-3);--input-padding-x: var(--space-4);--input-padding-y: var(--space-3);--list-gap: var(--space-4);--section-gap: var(--space-10);--font-size-base: 1.0625rem;--font-size-lg: 1.1875rem}@media(prefers-reduced-motion:reduce){:root{--duration-fast: 0ms;--duration-normal: 0ms;--duration-slow: 0ms;--duration-slower: 0ms}}:root{--color-primary: #2563eb;--color-primary-dark: #1d4ed8;--color-primary-light: #3b82f6;--color-primary-subtle: #eff6ff;--color-secondary: #7c3aed;--color-secondary-dark: #6d28d9;--color-secondary-light: #8b5cf6;--color-secondary-subtle: #f5f3ff;--color-accent: #06b6d4;--color-accent-dark: #0891b2;--color-accent-subtle: #ecfeff;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-gray-50: #f8fafc;--color-gray-100: #f1f5f9;--color-gray-200: #e2e8f0;--color-gray-300: #cbd5e1;--color-gray-400: #94a3b8;--color-gray-500: #64748b;--color-gray-600: #475569;--color-gray-700: #334155;--color-gray-800: #1e293b;--color-gray-900: #0f172a;--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #f1f5f9;--text-primary: #0f172a;--text-secondary: #475569;--text-tertiary: #64748b;--text-inverse: #ffffff;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--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;--space-20: 5rem;--font-family: "Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--container-max: 1280px;--container-padding: var(--space-6);--subject-chinese: #dc2626;--subject-math: #2563eb;--subject-english: #7c3aed;--subject-science: #059669;--subject-it: #0891b2;--subject-morality: #ea580c;--subject-arts: #db2777;--subject-labor: #65a30d;--subject-pe: #f59e0b;--skill-ts1: #ef4444;--skill-ts2: #f97316;--skill-ts3: #eab308;--skill-ts4: #22c55e;--skill-ts5: #06b6d4;--skill-ts6: #3b82f6;--skill-ts7: #8b5cf6;--band-h1: #0284c7;--band-h1-bg: #e0f2fe;--band-h2: #0891b2;--band-h2-bg: #cffafe;--band-h3: #0d9488;--band-h3-bg: #ccfbf1}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--text-primary);background-color:var(--bg-secondary);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}button{font-family:inherit;cursor:pointer}img{max-width:100%;height:auto}.container{width:100%;max-width:var(--container-max);margin-left:auto;margin-right:auto;padding-left:var(--container-padding);padding-right:var(--container-padding)}.page-content{padding-top:var(--space-8);padding-bottom:var(--space-16)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:var(--line-height-tight);color:var(--text-primary)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}.text-gradient{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);font-size:var(--font-size-sm);font-weight:500;border-radius:var(--radius-md);border:none;transition:all var(--transition-fast)}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:var(--text-inverse);box-shadow:var(--shadow-md)}.btn-primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--color-gray-300)}.btn-secondary:hover{background:var(--bg-tertiary);border-color:var(--color-gray-400)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg-tertiary);color:var(--text-primary)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--font-size-base)}.card{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-gray-200);transition:all var(--transition-normal)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-gray-100)}.card-body{padding:var(--space-5) var(--space-6)}.card-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-gray-100);background:var(--bg-secondary);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.tag{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs);font-weight:500;border-radius:var(--radius-full);background:var(--color-gray-100);color:var(--text-secondary)}.tag-primary{background:var(--color-primary-subtle);color:var(--color-primary)}.tag-secondary{background:var(--color-secondary-subtle);color:var(--color-secondary)}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 var(--space-2);font-size:var(--font-size-xs);font-weight:600;border-radius:var(--radius-full);background:var(--color-primary);color:var(--text-inverse)}.input{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);background:var(--bg-primary);transition:all var(--transition-fast)}.input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.checkbox-group{display:flex;flex-wrap:wrap;gap:var(--space-3)}.checkbox-item{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);background:var(--bg-primary);border:1px solid var(--color-gray-200);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none}.checkbox-item:hover{border-color:var(--color-primary);background:var(--color-primary-subtle)}.checkbox-item.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--text-inverse)}.checkbox-item input{display:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade-in{animation:fadeIn var(--transition-normal) ease-out}.animate-slide-up{animation:slideUp var(--transition-normal) ease-out}@media(max-width:768px){:root{--container-padding: var(--space-4)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-tertiary)}::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}
