@import"https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400..800;1,400..800&display=swap";:root{--hue: 220;--sat: 90%;color-scheme:dark;--font-scale: 1;--app-bg: radial-gradient(circle at 18% 16%, rgba(127, 172, 255, .3), transparent 46%), radial-gradient(circle at 85% 14%, rgba(148, 126, 255, .24), transparent 45%), linear-gradient(160deg, #0b1230 0%, #101b40 38%, #1a2754 100%);--app-bg-wave-a: radial-gradient(58% 52% at 16% 76%, rgba(99, 139, 255, .3) 0%, rgba(99, 139, 255, .08) 42%, transparent 74%);--app-bg-wave-b: radial-gradient(62% 50% at 86% 20%, rgba(124, 119, 255, .28) 0%, rgba(124, 119, 255, .08) 40%, transparent 72%);--bg-dark: #0b1220;--bg-card: rgba(18, 28, 46, .78);--bg-card-strong: rgba(12, 20, 34, .92);--bg-hover: rgba(60, 86, 125, .3);--bg-muted: rgba(20, 30, 48, .65);--primary: hsl(210, 90%, 60%);--primary-glow: hsla(210, 90%, 60%, .28);--text-main: #f3f6ff;--text-muted: #b7c1d4;--border: rgba(120, 145, 180, .35);--border-light: rgba(160, 185, 215, .55);--glass: rgba(18, 28, 46, .68);--glass-border: rgba(255, 255, 255, .16);--shadow-soft: 0 18px 40px rgba(7, 12, 20, .35);--shadow-strong: 0 28px 60px rgba(5, 10, 20, .45);--shadow-inset: inset 0 1px 0 rgba(255, 255, 255, .08);--input-bg: rgba(15, 25, 42, .75);--input-border: rgba(120, 145, 180, .4);--input-placeholder: rgba(183, 193, 212, .7);--overlay-bg: rgba(6, 10, 18, .68);--overlay-strong: rgba(6, 10, 18, .82);--landing-text: #f8fafc;--landing-muted: rgba(248, 250, 252, .7);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--transition: all .2s cubic-bezier(.4, 0, .2, 1);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .2s cubic-bezier(.4, 0, .2, 1);--header-pill-height: 56px;--sidebar-toggle-width: 360px;--header-row-offset: 12px;--app-edge-padding: 24px;--app-header-top: 12px;--sidebar-float-gap: 12px}:root[data-theme=light]{color-scheme:light;--app-bg: radial-gradient(circle at 16% 16%, rgba(142, 190, 255, .46), transparent 48%), radial-gradient(circle at 86% 15%, rgba(199, 182, 255, .34), transparent 46%), linear-gradient(160deg, #edf4ff 0%, #e7eefb 44%, #dde8f8 100%);--app-bg-wave-a: radial-gradient(60% 52% at 14% 78%, rgba(121, 167, 255, .34) 0%, rgba(121, 167, 255, .08) 42%, transparent 74%);--app-bg-wave-b: radial-gradient(62% 50% at 85% 18%, rgba(159, 145, 255, .3) 0%, rgba(159, 145, 255, .08) 40%, transparent 72%);--bg-dark: #eef2f8;--bg-card: rgba(255, 255, 255, .88);--bg-card-strong: rgba(255, 255, 255, .95);--bg-hover: rgba(226, 236, 248, .85);--bg-muted: rgba(236, 242, 252, .92);--primary: hsl(212, 80%, 48%);--primary-glow: hsla(212, 80%, 48%, .24);--text-main: #1b2433;--text-muted: #5a677b;--border: rgba(171, 187, 209, .65);--border-light: rgba(190, 204, 224, .8);--glass: rgba(255, 255, 255, .82);--glass-border: rgba(123, 144, 170, .2);--shadow-soft: 0 18px 40px rgba(15, 23, 42, .12);--shadow-strong: 0 28px 60px rgba(15, 23, 42, .16);--shadow-inset: inset 0 1px 0 rgba(255, 255, 255, .7);--input-bg: rgba(255, 255, 255, .9);--input-border: rgba(150, 170, 198, .7);--input-placeholder: rgba(90, 103, 123, .65);--overlay-bg: rgba(240, 245, 255, .72);--overlay-strong: rgba(232, 238, 250, .88);--landing-text: #ffffff;--landing-muted: rgba(255, 255, 255, .8)}:root[data-theme=dark][data-bg-palette=aurora]{--app-bg: radial-gradient(circle at 16% 16%, rgba(53, 224, 184, .24), transparent 46%), radial-gradient(circle at 86% 14%, rgba(57, 189, 248, .24), transparent 44%), linear-gradient(160deg, #041a2a 0%, #082338 40%, #0f3550 100%);--app-bg-wave-a: radial-gradient(58% 52% at 14% 76%, rgba(20, 184, 166, .3) 0%, rgba(20, 184, 166, .08) 42%, transparent 74%);--app-bg-wave-b: radial-gradient(62% 50% at 84% 20%, rgba(14, 165, 233, .28) 0%, rgba(14, 165, 233, .08) 40%, transparent 72%)}:root[data-theme=dark][data-bg-palette=sunset]{--app-bg: radial-gradient(circle at 16% 15%, rgba(251, 146, 60, .22), transparent 46%), radial-gradient(circle at 87% 16%, rgba(244, 114, 182, .2), transparent 44%), linear-gradient(160deg, #2a0f14 0%, #321827 40%, #3c2141 100%);--app-bg-wave-a: radial-gradient(60% 52% at 15% 76%, rgba(251, 113, 133, .26) 0%, rgba(251, 113, 133, .08) 42%, transparent 74%);--app-bg-wave-b: radial-gradient(62% 50% at 86% 20%, rgba(245, 158, 11, .24) 0%, rgba(245, 158, 11, .08) 40%, transparent 72%)}:root[data-theme=dark][data-bg-palette=lavender]{--app-bg: radial-gradient(circle at 17% 16%, rgba(129, 140, 248, .26), transparent 46%), radial-gradient(circle at 86% 15%, rgba(168, 85, 247, .24), transparent 44%), linear-gradient(160deg, #1a1438 0%, #241b4a 40%, #332361 100%);--app-bg-wave-a: radial-gradient(60% 52% at 14% 76%, rgba(99, 102, 241, .3) 0%, rgba(99, 102, 241, .08) 42%, transparent 74%);--app-bg-wave-b: radial-gradient(62% 50% at 86% 20%, rgba(139, 92, 246, .28) 0%, rgba(139, 92, 246, .08) 40%, transparent 72%)}:root[data-theme=dark][data-bg-palette=rose]{--app-bg: radial-gradient(circle at 17% 15%, rgba(251, 113, 133, .24), transparent 46%), radial-gradient(circle at 86% 15%, rgba(168, 85, 247, .22), transparent 44%), linear-gradient(160deg, #2b1124 0%, #341735 40%, #43204b 100%);--app-bg-wave-a: radial-gradient(60% 52% at 14% 76%, rgba(244, 63, 94, .3) 0%, rgba(244, 63, 94, .08) 42%, transparent 74%);--app-bg-wave-b: radial-gradient(62% 50% at 86% 20%, rgba(236, 72, 153, .28) 0%, rgba(236, 72, 153, .08) 40%, transparent 72%)}:root[data-theme=dark][data-bg-palette=slate]{--app-bg: radial-gradient(circle at 17% 15%, rgba(148, 163, 184, .2), transparent 46%), radial-gradient(circle at 86% 15%, rgba(100, 116, 139, .18), transparent 44%), linear-gradient(160deg, #0d1522 0%, #142032 40%, #1a273d 100%);--app-bg-wave-a: radial-gradient(60% 52% at 14% 76%, rgba(100, 116, 139, .28) 0%, rgba(100, 116, 139, .08) 42%, transparent 74%);--app-bg-wave-b: radial-gradient(62% 50% at 86% 20%, rgba(71, 85, 105, .26) 0%, rgba(71, 85, 105, .08) 40%, transparent 72%)}:root[data-theme=light][data-bg-palette=aurora]{--app-bg: radial-gradient(circle at 16% 16%, rgba(94, 234, 212, .38), transparent 48%), radial-gradient(circle at 86% 15%, rgba(125, 211, 252, .34), transparent 46%), linear-gradient(160deg, #e6f8f6 0%, #e4f3fb 44%, #dbe8f6 100%);--app-bg-wave-a: radial-gradient(60% 52% at 14% 78%, rgba(45, 212, 191, .28) 0%, rgba(45, 212, 191, .08) 42%, transparent 74%);--app-bg-wave-b: radial-gradient(62% 50% at 84% 18%, rgba(56, 189, 248, .24) 0%, rgba(56, 189, 248, .08) 40%, transparent 72%)}:root[data-theme=light][data-bg-palette=sunset]{--app-bg: radial-gradient(circle at 16% 16%, rgba(251, 191, 36, .32), transparent 48%), radial-gradient(circle at 86% 15%, rgba(251, 113, 133, .28), transparent 46%), linear-gradient(160deg, #fff2e8 0%, #fbecef 44%, #f6e6f5 100%);--app-bg-wave-a: radial-gradient(60% 52% at 14% 78%, rgba(251, 146, 60, .28) 0%, rgba(251, 146, 60, .08) 42%, transparent 74%);--app-bg-wave-b: radial-gradient(62% 50% at 85% 18%, rgba(244, 114, 182, .24) 0%, rgba(244, 114, 182, .08) 40%, transparent 72%)}:root[data-theme=light][data-bg-palette=lavender]{--app-bg: radial-gradient(circle at 16% 16%, rgba(165, 180, 252, .38), transparent 48%), radial-gradient(circle at 86% 15%, rgba(216, 180, 254, .32), transparent 46%), linear-gradient(160deg, #f2f0ff 0%, #ede9ff 44%, #e8e7ff 100%);--app-bg-wave-a: radial-gradient(60% 52% at 14% 78%, rgba(129, 140, 248, .3) 0%, rgba(129, 140, 248, .08) 42%, transparent 74%);--app-bg-wave-b: radial-gradient(62% 50% at 86% 18%, rgba(168, 85, 247, .24) 0%, rgba(168, 85, 247, .08) 40%, transparent 72%)}:root[data-theme=light][data-bg-palette=rose]{--app-bg: radial-gradient(circle at 16% 16%, rgba(251, 113, 133, .32), transparent 48%), radial-gradient(circle at 86% 15%, rgba(244, 114, 182, .28), transparent 46%), linear-gradient(160deg, #ffeaf1 0%, #fbe9f5 44%, #f2e8fb 100%);--app-bg-wave-a: radial-gradient(60% 52% at 14% 78%, rgba(244, 63, 94, .28) 0%, rgba(244, 63, 94, .08) 42%, transparent 74%);--app-bg-wave-b: radial-gradient(62% 50% at 86% 18%, rgba(236, 72, 153, .24) 0%, rgba(236, 72, 153, .08) 40%, transparent 72%)}:root[data-theme=light][data-bg-palette=slate]{--app-bg: radial-gradient(circle at 16% 16%, rgba(148, 163, 184, .32), transparent 48%), radial-gradient(circle at 86% 15%, rgba(148, 163, 184, .22), transparent 46%), linear-gradient(160deg, #edf2f7 0%, #e5ebf3 44%, #dde4ee 100%);--app-bg-wave-a: radial-gradient(60% 52% at 14% 78%, rgba(148, 163, 184, .26) 0%, rgba(148, 163, 184, .08) 42%, transparent 74%);--app-bg-wave-b: radial-gradient(62% 50% at 86% 18%, rgba(100, 116, 139, .22) 0%, rgba(100, 116, 139, .08) 40%, transparent 72%)}:root[data-theme=sepia-light]{color-scheme:light;--app-bg: #fdf6e8;--bg-dark: #fdf6e8;--bg-card: #fbf0dc;--bg-card-strong: #f8e8ce;--bg-hover: #f5e0c0;--bg-muted: #f8e8ce;--primary: #9d2f2f;--primary-glow: rgba(157, 47, 47, .2);--text-main: #1a1a1a;--text-muted: #5c5c5c;--border: rgba(26, 26, 26, .15);--border-light: rgba(26, 26, 26, .25);--glass: rgba(253, 246, 232, .8);--glass-border: rgba(26, 26, 26, .1);--shadow-soft: none;--shadow-strong: none;--shadow-inset: none;--input-bg: #fbf0dc;--input-border: rgba(26, 26, 26, .2);--input-placeholder: rgba(92, 92, 92, .65);--overlay-bg: rgba(253, 246, 232, .9);--overlay-strong: rgba(251, 240, 220, .95);--landing-text: #1a1a1a;--landing-muted: rgba(26, 26, 26, .7);font-family:EB Garamond,serif}:root[data-theme=sepia-dark]{color-scheme:dark;--app-bg: #2a201d;--bg-dark: #2a201d;--bg-card: #3e2e28;--bg-card-strong: #4a3832;--bg-hover: #5a4842;--bg-muted: #4a3832;--primary: #e57373;--primary-glow: rgba(229, 115, 115, .2);--text-main: #e0d5d1;--text-muted: #b0a19a;--border: rgba(224, 213, 209, .15);--border-light: rgba(224, 213, 209, .25);--glass: rgba(42, 32, 29, .8);--glass-border: rgba(224, 213, 209, .1);--shadow-soft: none;--shadow-strong: none;--shadow-inset: none;--input-bg: #3e2e28;--input-border: rgba(224, 213, 209, .2);--input-placeholder: rgba(176, 161, 154, .65);--overlay-bg: rgba(20, 15, 13, .9);--overlay-strong: rgba(17, 12, 10, .95);--landing-text: #e0d5d1;--landing-muted: rgba(224, 213, 209, .7);font-family:EB Garamond,serif}html{font-size:calc(16px * var(--font-scale))}:is([data-theme=sepia-light],[data-theme=sepia-dark]) body{font-family:EB Garamond,serif;font-size:calc(19px * var(--font-scale));line-height:1.7}:is([data-theme=sepia-light],[data-theme=sepia-dark]) h1,:is([data-theme=sepia-light],[data-theme=sepia-dark]) h2,:is([data-theme=sepia-light],[data-theme=sepia-dark]) h3,:is([data-theme=sepia-light],[data-theme=sepia-dark]) h4,:is([data-theme=sepia-light],[data-theme=sepia-dark]) h5,:is([data-theme=sepia-light],[data-theme=sepia-dark]) h6{font-family:EB Garamond,serif;font-weight:600}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .prose-layout{max-width:720px;margin:0 auto;padding:2rem 1rem}:is([data-theme=sepia-light],[data-theme=sepia-dark]) img{border-radius:0!important;box-shadow:none!important;max-width:100%;height:auto}:is([data-theme=sepia-light]) img{filter:sepia(30%) contrast(95%)}:is([data-theme=sepia-dark]) img{filter:sepia(40%) contrast(90%) brightness(90%)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) hr{border:none;border-top:1px solid var(--border);margin:2rem 0}:is([data-theme=sepia-light],[data-theme=sepia-dark]) a{color:var(--primary);text-decoration:none;border-bottom:1px solid transparent;transition:border-bottom-color .2s ease}:is([data-theme=sepia-light],[data-theme=sepia-dark]) a:hover{border-bottom-color:var(--primary)}.nav-icon-themeable{filter:invert(1)}:root[data-theme=light] .nav-icon-themeable{filter:none}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--bg-dark);background-image:var(--app-bg);background-attachment:fixed;background-size:cover;color:var(--text-main);height:100vh;overflow:hidden;line-height:1.5;-webkit-font-smoothing:antialiased;position:relative;isolation:isolate}body:before,body:after{content:"";position:fixed;top:-20%;right:-20%;bottom:-20%;left:-20%;pointer-events:none;z-index:-1;background-repeat:no-repeat;transform:translateZ(0);will-change:transform}body:before{background-image:var(--app-bg-wave-a);opacity:.85;animation:appWaveDriftA 44s ease-in-out infinite alternate}body:after{background-image:var(--app-bg-wave-b);opacity:.72;animation:appWaveDriftB 36s ease-in-out infinite alternate}:is([data-theme=sepia-light],[data-theme=sepia-dark]) body:before,:is([data-theme=sepia-light],[data-theme=sepia-dark]) body:after{display:none}@keyframes appWaveDriftA{0%{transform:translate3d(-7%,-3%,0) scale(1.02)}50%{transform:translate3d(4%,5%,0) scale(1.06)}to{transform:translate3d(8%,-2%,0) scale(1.03)}}@keyframes appWaveDriftB{0%{transform:translate3d(6%,4%,0) scale(1.03)}50%{transform:translate3d(-3%,-6%,0) scale(1.07)}to{transform:translate3d(-8%,3%,0) scale(1.04)}}.app-container{display:flex;flex-direction:column;height:100vh}.main-content{flex:1;position:relative;overflow-y:auto;overflow-x:hidden;padding:0 24px;background:transparent;min-height:0}.workspace{flex:1;display:flex;flex-direction:column;height:100vh;min-width:0;background:transparent}.hidden{display:none!important}img,svg,canvas{max-width:100%;height:auto}body,.app-container{max-width:100vw;overflow-x:hidden}*{overflow-wrap:break-word}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}body:before,body:after{animation:none!important;transform:none!important}}.app-header{padding:calc(var(--app-header-top) + 16px) var(--app-edge-padding) 0;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;border-bottom:none;background:transparent;min-height:calc(var(--header-pill-height) + var(--app-header-top) + 16px)}.app-sidebar.collapsed~.workspace .app-header{padding-left:calc(var(--app-edge-padding) + 190px)}.header-left{display:flex;align-items:center;gap:12px;min-width:0;margin-top:0;height:var(--header-pill-height)}.header-title{display:inline-flex;align-items:center;font-size:1.05rem;line-height:1;font-weight:600;color:var(--text-main);letter-spacing:-.01em;white-space:nowrap;gap:6px;padding:0 20px;height:var(--header-pill-height);border-radius:999px;border:1px solid var(--glass-border);background:var(--glass);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);max-width:100%;margin-top:0}.header-title:empty{display:none}.header-title.is-empty{display:none}.app-header .header-page-title{display:inline}.app-header.has-breadcrumbs .header-page-title{display:none}.header-brand{display:inline-flex;align-items:center;font-size:1.05rem;line-height:1}.header-title .brand-handwritten{font-family:Bradley Hand,Segoe Print,Comic Sans MS,Apple Chancery,cursive;font-size:1.05rem;font-weight:600;color:var(--primary);line-height:1}.header-title .brand-typewriter,.header-title .brand-ai{font-family:American Typewriter,Courier New,Courier,Lucida Console,monospace;font-size:1.05rem;font-weight:600;color:var(--primary);line-height:1}.header-title-separator{color:var(--text-muted);font-weight:500}.header-page-title{font-weight:600}.logo{display:flex;align-items:center;font-weight:700;font-size:1.1rem;color:var(--primary);letter-spacing:-.02em}.header-actions{display:flex;flex-direction:row;align-items:center;gap:12px;margin-left:auto;position:relative;height:var(--header-pill-height)}.header-queue-wrapper{position:relative;display:flex;align-items:center}.header-queue-pill{padding:8px 14px;height:auto;display:inline-flex;align-items:center;border-radius:10px;background:linear-gradient(145deg,#fff2d4,#ffe4b0 55%,#ffd394);border:1px solid #f1c785;color:#a66b12;font-size:.85rem;font-weight:600;box-shadow:0 2px 6px #c48c2826;white-space:nowrap}.header-queue-list{position:absolute;top:calc(100% + 8px);left:0;display:flex;flex-direction:column;gap:4px;padding:8px;border-radius:10px;background:linear-gradient(145deg,#fffffffa,#f0f5fcf2);border:1px solid rgba(200,215,235,.6);box-shadow:0 8px 24px #0f172a1f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:0;visibility:hidden;transform:translateY(-4px);pointer-events:none;min-width:220px;max-width:320px;z-index:12}:root[data-theme=dark] .header-queue-list{background:#1e293bfa;border-color:var(--border);box-shadow:0 8px 24px #0006}.header-queue-wrapper:hover .header-queue-list,.header-queue-list:hover{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.header-queue-item{display:inline-flex;align-items:center;padding:8px 12px;border-radius:8px;background:transparent;border:1px solid transparent;color:var(--text-main);font-size:.85rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:all .15s ease}.header-queue-item:hover{background:#c8d7eb66}.header-queue-item.is-active{background:linear-gradient(145deg,#fff2d4,#ffe4b0);border-color:#f1c78599;color:#a66b12}.header-datetime-wrapper{position:relative;display:inline-flex;align-items:center;gap:8px;margin-left:8px;padding-right:4px}.header-datetime{position:relative;padding:8px 14px;height:auto;display:flex;align-items:center;border-radius:10px;background:linear-gradient(145deg,#fffffffa,#f5f8fcf2);border:1px solid rgba(200,215,235,.6);box-shadow:0 2px 6px #0f172a14;overflow:hidden;cursor:pointer;font-size:.9rem;color:var(--text-muted);font-weight:500;letter-spacing:.01em;white-space:nowrap;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;line-height:1;font-family:inherit}.header-appearance-trigger{position:relative;width:38px;height:38px;border-radius:10px;border:1px solid rgba(200,215,235,.65);background:linear-gradient(145deg,#fffffffa,#f5f8fcf2);box-shadow:0 2px 6px #0f172a14;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;font:inherit;color:var(--text-main);-webkit-appearance:none;-moz-appearance:none;appearance:none}.header-appearance-trigger:before{content:"";width:18px;height:18px;display:inline-block;mask:url("data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20id='Layer_1'%20data-name='Layer%201'%20viewBox='0%200%2024%2024'%3e%3cpath%20d='M0,9.5c0-.276,.224-.5,.5-.5H3.025c.104-1.338,.635-2.633,1.558-3.71l-1.937-1.937c-.195-.195-.195-.512,0-.707s.512-.195,.707,0l1.937,1.937c1.076-.923,2.372-1.454,3.71-1.558V.5c0-.276,.224-.5,.5-.5s.5,.224,.5,.5V3.033c1.273,.098,2.527,.552,3.589,1.414,.08,.063,.211,.046,.295-.038l1.763-1.763c.195-.195,.512-.195,.707,0s.195,.512,0,.707l-1.763,1.763c-.452,.45-1.152,.497-1.632,.107-2.192-1.777-5.351-1.61-7.348,.388-1.998,1.998-2.164,5.157-.388,7.349,.39,.479,.344,1.181-.107,1.631l-1.763,1.763c-.098,.098-.226,.146-.354,.146s-.256-.049-.354-.146c-.195-.195-.195-.512,0-.707l1.763-1.763c.084-.084,.101-.216,.038-.294-.861-1.062-1.315-2.317-1.413-3.59H.5c-.276,0-.5-.224-.5-.5ZM23.954,.046c-.195-.195-.512-.195-.707,0L.046,23.246c-.195,.195-.195,.512,0,.707,.098,.098,.226,.146,.354,.146s.256-.049,.354-.146L23.954,.753c.195-.195,.195-.512,0-.707Zm-.56,21.108c-1.863-.942-3.021-2.821-3.021-4.904s1.157-3.962,3.02-4.904c.373-.188,.604-.57,.606-.995,.001-.423-.227-.805-.597-.995-1.541-.794-3.273-1.044-5.012-.716-.271,.051-.45,.312-.399,.583,.051,.272,.314,.452,.583,.399,1.517-.284,3.027-.069,4.37,.623,.047,.025,.055,.075,.055,.103,0,.029-.008,.081-.058,.106-2.201,1.114-3.568,3.334-3.568,5.796s1.368,4.684,3.569,5.797c.05,.025,.058,.077,.058,.105,0,.028-.007,.078-.054,.103-.959,.494-1.993,.745-3.073,.745-3.724,0-6.807-2.92-6.873-6.509-.006-.335,.013-.675,.055-1.012,.035-.273-.159-.523-.433-.559-.269-.034-.524,.159-.559,.434-.048,.384-.07,.771-.063,1.154,.076,4.131,3.607,7.491,7.873,7.491,1.242,0,2.43-.288,3.532-.856,.369-.19,.597-.572,.595-.995-.002-.426-.234-.806-.606-.994Z'/%3e%3c/svg%3e") center / contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20id='Layer_1'%20data-name='Layer%201'%20viewBox='0%200%2024%2024'%3e%3cpath%20d='M0,9.5c0-.276,.224-.5,.5-.5H3.025c.104-1.338,.635-2.633,1.558-3.71l-1.937-1.937c-.195-.195-.195-.512,0-.707s.512-.195,.707,0l1.937,1.937c1.076-.923,2.372-1.454,3.71-1.558V.5c0-.276,.224-.5,.5-.5s.5,.224,.5,.5V3.033c1.273,.098,2.527,.552,3.589,1.414,.08,.063,.211,.046,.295-.038l1.763-1.763c.195-.195,.512-.195,.707,0s.195,.512,0,.707l-1.763,1.763c-.452,.45-1.152,.497-1.632,.107-2.192-1.777-5.351-1.61-7.348,.388-1.998,1.998-2.164,5.157-.388,7.349,.39,.479,.344,1.181-.107,1.631l-1.763,1.763c-.098,.098-.226,.146-.354,.146s-.256-.049-.354-.146c-.195-.195-.195-.512,0-.707l1.763-1.763c.084-.084,.101-.216,.038-.294-.861-1.062-1.315-2.317-1.413-3.59H.5c-.276,0-.5-.224-.5-.5ZM23.954,.046c-.195-.195-.512-.195-.707,0L.046,23.246c-.195,.195-.195,.512,0,.707,.098,.098,.226,.146,.354,.146s.256-.049,.354-.146L23.954,.753c.195-.195,.195-.512,0-.707Zm-.56,21.108c-1.863-.942-3.021-2.821-3.021-4.904s1.157-3.962,3.02-4.904c.373-.188,.604-.57,.606-.995,.001-.423-.227-.805-.597-.995-1.541-.794-3.273-1.044-5.012-.716-.271,.051-.45,.312-.399,.583,.051,.272,.314,.452,.583,.399,1.517-.284,3.027-.069,4.37,.623,.047,.025,.055,.075,.055,.103,0,.029-.008,.081-.058,.106-2.201,1.114-3.568,3.334-3.568,5.796s1.368,4.684,3.569,5.797c.05,.025,.058,.077,.058,.105,0,.028-.007,.078-.054,.103-.959,.494-1.993,.745-3.073,.745-3.724,0-6.807-2.92-6.873-6.509-.006-.335,.013-.675,.055-1.012,.035-.273-.159-.523-.433-.559-.269-.034-.524,.159-.559,.434-.048,.384-.07,.771-.063,1.154,.076,4.131,3.607,7.491,7.873,7.491,1.242,0,2.43-.288,3.532-.856,.369-.19,.597-.572,.595-.995-.002-.426-.234-.806-.606-.994Z'/%3e%3c/svg%3e") center / contain no-repeat;background:currentColor;opacity:.8}:root[data-theme=dark] .header-appearance-trigger,:root[data-theme=sepia-light] .header-appearance-trigger,:root[data-theme=sepia-dark] .header-appearance-trigger{background:var(--bg-card);border-color:var(--border)}.header-appearance-trigger:focus-visible,.header-appearance-trigger:hover{outline:none;border-color:var(--border-light);background:var(--bg-hover)}:root:not([data-theme=light]) .header-appearance-trigger,:is([data-theme=sepia-light],[data-theme=sepia-dark]) .header-appearance-trigger{filter:brightness(.96)}.header-datetime:focus-visible{outline:2px solid var(--primary);outline-offset:2px}:root[data-theme=dark] .header-datetime{background:var(--bg-card);border-color:var(--border)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .header-datetime{background:var(--bg-card);border-color:var(--border)}.header-hover-hint{display:none}.header-appearance-menu{position:absolute;top:calc(100% + 8px);right:0;left:auto;transform:translateY(-6px);display:flex;flex-direction:column;gap:8px;padding:8px;border-radius:12px;border:1px solid rgba(200,215,235,.6);background:linear-gradient(145deg,#fffffffa,#f5f8fcf2);box-shadow:0 8px 24px #0f172a1f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:10;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,transform .2s ease,visibility .2s ease}:root[data-theme=dark] .header-appearance-menu{background:var(--bg-card);border-color:var(--border)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .header-appearance-menu{background:var(--bg-card);border-color:var(--border)}.header-datetime-wrapper.is-open .header-appearance-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.header-theme-toggle{display:flex;align-items:center;gap:2px;padding:4px;height:auto;border-radius:10px;border:1px solid rgba(200,215,235,.6);background:linear-gradient(145deg,#fffffffa,#f5f8fcf2);box-shadow:0 2px 8px #0f172a14}:root[data-theme=dark] .header-theme-toggle{background:var(--bg-card);border-color:var(--border)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .header-theme-toggle{background:var(--bg-card);border-color:var(--border)}.header-theme-option{position:relative;display:inline-flex}.header-theme-option input{position:absolute;opacity:0}.header-theme-option span{width:32px;height:32px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;background:transparent;transition:var(--transition)}.header-theme-option img{width:18px;height:18px;opacity:.75}:root:not([data-theme=light]) .header-theme-option img{filter:brightness(0) invert(1);opacity:.9}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .header-theme-option img{filter:none;opacity:.75}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .header-theme-option:hover span{background:var(--bg-hover);border-color:var(--border-light)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .header-theme-option input:checked+span{background:var(--bg-hover);border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-glow)}.header-theme-option:hover span{background:var(--bg-hover);border-color:var(--border-light)}.header-theme-option input:checked+span{background:var(--bg-hover);border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-glow)}.header-theme-option input:focus-visible+span{outline:2px solid var(--primary);outline-offset:2px}.header-bg-palette{display:flex;align-items:center;gap:6px;padding:6px 4px 2px;border-top:1px solid rgba(200,215,235,.55)}:root[data-theme=dark] .header-bg-palette{border-top-color:var(--border)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .header-bg-palette{border-top-color:var(--border)}.header-bg-option{position:relative;display:inline-flex}.header-bg-option input{position:absolute;opacity:0}.header-bg-swatch{width:24px;height:24px;border-radius:999px;border:1px solid transparent;display:inline-flex;transition:var(--transition)}.header-bg-option:hover .header-bg-swatch{transform:translateY(-1px);border-color:var(--border-light)}.header-bg-option input:checked+.header-bg-swatch{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-glow)}.header-bg-option input:focus-visible+.header-bg-swatch{outline:2px solid var(--primary);outline-offset:2px}.header-bg-swatch--ocean{background:linear-gradient(145deg,#4f73ff,#4e93ff 55%,#6f64f6)}.header-bg-swatch--aurora{background:linear-gradient(145deg,#14b8a6,#0ea5e9 48%,#6366f1)}.header-bg-swatch--sunset{background:linear-gradient(145deg,#fb7185,#f59e0b 55%,#f97316)}.header-bg-swatch--lavender{background:linear-gradient(145deg,#6366f1,#8b5cf6 55%,#a855f7)}.header-bg-swatch--rose{background:linear-gradient(145deg,#f43f5e,#ec4899 55%,#8b5cf6)}.header-bg-swatch--slate{background:linear-gradient(145deg,#64748b,#475569 55%,#334155)}.header-datetime:after{content:"";position:absolute;top:0;left:-60%;width:50%;height:100%;background:linear-gradient(110deg,transparent,rgba(255,255,255,.55),transparent);transform:translate(-100%);opacity:0;pointer-events:none}.header-datetime:hover:after{animation:datetimeShine .7s ease forwards;opacity:1}@keyframes datetimeShine{0%{transform:translate(-140%)}to{transform:translate(320%)}}.app-sidebar{width:360px;background:transparent;border-right:none;display:flex;flex-direction:column;flex-shrink:0;will-change:width;transition:width .3s ease;overflow:hidden;padding:var(--app-header-top) 12px 12px var(--app-edge-padding);position:relative;z-index:300}.sidebar-header{height:var(--header-pill-height);width:100%;display:flex;align-items:center;justify-content:flex-start;padding:0;border:none;gap:12px;background:transparent;margin-top:28px;margin-bottom:24px;box-shadow:none;position:relative;z-index:400}.sidebar-title{font-weight:700;font-size:1.3rem;line-height:1.1;color:var(--primary);letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-title .brand-handwritten{font-family:Bradley Hand,Segoe Print,Comic Sans MS,Apple Chancery,cursive;font-weight:600}.sidebar-title .brand-typewriter,.sidebar-title .brand-ai{font-family:American Typewriter,Courier New,Courier,Lucida Console,monospace;font-weight:600}.app-sidebar.collapsed{width:72px;padding:12px 8px;overflow:visible}.app-sidebar.collapsed .sidebar-title{display:none}.app-sidebar.collapsed .sidebar-header{justify-content:center;padding:0;width:auto;height:var(--header-pill-height);margin:0;background:transparent;border:none}.app-sidebar.collapsed #sidebar-toggle{margin:0}#sidebar-toggle{width:auto;height:var(--header-pill-height);padding:0 20px;display:flex;align-items:center;justify-content:center;background:var(--glass);border:1px solid var(--glass-border);border-radius:10px;box-shadow:var(--shadow-soft);color:var(--text-main);font-size:1.05rem;font-weight:600;letter-spacing:-.01em;line-height:1;gap:2px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.sidebar-toggle-title{display:inline-flex;align-items:center;gap:2px;white-space:nowrap;font-size:1.05rem;line-height:1}.sidebar-toggle-title .brand-handwritten{font-family:Bradley Hand,Segoe Print,Comic Sans MS,Apple Chancery,cursive;font-size:1.05rem;font-weight:600;color:var(--primary);line-height:1}.sidebar-toggle-title .brand-typewriter,.sidebar-toggle-title .brand-ai{font-family:American Typewriter,Courier New,Courier,Lucida Console,monospace;font-size:1.05rem;font-weight:600;color:var(--primary);line-height:1}.app-sidebar.collapsed #sidebar-toggle:hover{background:transparent}.app-sidebar.collapsed .sidebar-nav,.app-sidebar.collapsed .sidebar-footer{display:flex;flex-direction:column;opacity:1;visibility:visible;pointer-events:auto;position:static;transform:none;transition:none}.app-sidebar.collapsed:not(.collapsed-open) .sidebar-nav,.app-sidebar.collapsed:not(.collapsed-open) .sidebar-footer{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-6px)}.app-sidebar.collapsed.collapsed-open .sidebar-nav .nav-item,.app-sidebar.collapsed.collapsed-open .sidebar-footer .nav-item{opacity:0;transform:translateY(-8px);animation:sidebarDrop .25s ease forwards}.app-sidebar.collapsed.collapsed-open .sidebar-nav .nav-item:nth-child(1){animation-delay:.02s}.app-sidebar.collapsed.collapsed-open .sidebar-nav .nav-item:nth-child(2){animation-delay:.06s}.app-sidebar.collapsed.collapsed-open .sidebar-nav .nav-item:nth-child(3){animation-delay:.1s}.app-sidebar.collapsed.collapsed-open .sidebar-nav .nav-item:nth-child(4){animation-delay:.14s}.app-sidebar.collapsed.collapsed-open .sidebar-nav .nav-item:nth-child(5){animation-delay:.18s}.app-sidebar.collapsed.collapsed-open .sidebar-nav .nav-item:nth-child(6){animation-delay:.22s}.app-sidebar.collapsed.collapsed-open .sidebar-nav .nav-item:nth-child(7){animation-delay:.26s}.app-sidebar.collapsed.collapsed-open .sidebar-footer .nav-item{animation-delay:.32s}@keyframes sidebarDrop{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.app-sidebar.collapsed .sidebar-nav{background:transparent;border:none;box-shadow:none;padding:8px;gap:10px}.app-sidebar.collapsed .sidebar-footer{background:transparent;border:none;box-shadow:none;padding:8px}@media(min-width:901px){.app-sidebar.collapsed{width:0;padding:0;overflow:visible}.app-sidebar.collapsed .sidebar-header{position:fixed;left:var(--app-edge-padding);top:calc(var(--app-header-top) + 16px);margin:0;z-index:400}.app-sidebar.collapsed.collapsed-open .sidebar-nav{position:fixed;left:calc(var(--app-edge-padding) - 12px);top:calc(var(--app-header-top) + 16px + var(--header-pill-height) + var(--sidebar-float-gap));z-index:19;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}.app-sidebar.collapsed.collapsed-open .sidebar-footer{position:fixed;left:calc(var(--app-edge-padding) - 12px);bottom:var(--app-edge-padding);z-index:19;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}}.sidebar-nav,.sidebar-footer{padding:12px;border:none;border-radius:0;background:transparent;box-shadow:none;margin-top:12px}.app-sidebar.collapsed .sidebar-footer{padding:12px 8px}.nav-item{display:flex;align-items:center;gap:14px;width:100%;padding:10px 16px;background:linear-gradient(145deg,#e8f4ff,#dceeff,#d0e8ff);border:1px solid #c5ddf5;color:#7aacda;font-size:1.05rem;font-family:inherit;font-weight:500;cursor:pointer;border-radius:10px;transition:var(--transition);text-align:left;text-decoration:none;box-shadow:0 4px 16px #6496c826,inset 0 1px 2px #fffc;position:relative;overflow:hidden;min-height:48px}.nav-item .nav-icon{width:36px;height:36px;display:grid;place-items:center;flex-shrink:0;border-radius:8px;background:linear-gradient(145deg,#fff,#f0f7ff);border:1px solid #c5ddf5;box-shadow:0 4px 12px #6496c833,inset 0 1px 2px #ffffffe6;color:#5a94cc;z-index:2}.nav-item .nav-icon svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav-item:hover{background:linear-gradient(145deg,#f0f8ff,#e4f1ff,#d8ebff);color:#6a9fd4;transform:translateY(-1px);border-color:#b8d4f0;box-shadow:0 8px 24px #6496c833,inset 0 1px 2px #ffffffe6}.nav-item:hover .nav-icon{background:linear-gradient(145deg,#fff,#e8f4ff);border-color:#a8cbeb;box-shadow:0 6px 16px #508cc840,inset 0 1px 2px #fff;color:#4a88c4}.nav-item.active{background:linear-gradient(145deg,#def,#cee6ff,#c0deff);color:#5a94cc;border-color:#a8cbeb;box-shadow:0 8px 24px #508cc838,inset 0 1px 2px #ffffffe6}.nav-item.active .nav-icon{background:linear-gradient(145deg,#38bdf8,#0ea5e9);border-color:#0284c7;box-shadow:0 6px 16px #38bdf859,inset 0 1px 2px #ffffff4d;color:#fff}.nav-item:after{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:inherit;background:linear-gradient(180deg,#fff9,#fff0 40%);opacity:.7;pointer-events:none}:root:not([data-theme=light]) .nav-item{background:linear-gradient(145deg,#1e3a5f,#162d4a,#112438);border-color:#2a4a6e;box-shadow:0 4px 16px #000a1e80,inset 0 1px #ffffff0d;color:#8ec0f0}:root:not([data-theme=light]) .nav-item:hover{background:linear-gradient(145deg,#264466,#1c3752,#152c42);border-color:#3a5a7e;box-shadow:0 8px 24px #000a1e99,inset 0 1px #ffffff14;color:#a0d0ff}:root:not([data-theme=light]) .nav-item.active{background:linear-gradient(145deg,#2e5070,#244060,#1c3450);border-color:#4a6a8e;box-shadow:0 8px 24px #000a1e99,inset 0 1px #ffffff1a;color:#b0dcff}:root:not([data-theme=light]) .nav-item .nav-icon{background:linear-gradient(145deg,#1e3a5f,#162d4a);border-color:#3a5a7e;box-shadow:0 4px 12px #000a1e66,inset 0 1px #ffffff14;color:#8ec0f0}:root:not([data-theme=light]) .nav-item:hover .nav-icon{background:linear-gradient(145deg,#264466,#1c3752);border-color:#4a6a8e;box-shadow:0 6px 16px #000a1e80,inset 0 1px #ffffff1a;color:#a0d0ff}:root:not([data-theme=light]) .nav-item.active .nav-icon{background:linear-gradient(145deg,#38bdf8,#0ea5e9);border-color:#0284c7;box-shadow:0 6px 16px #38bdf866,inset 0 1px #fff3;color:#fff}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .nav-item{background:var(--bg-card);border-color:var(--border);color:var(--text-muted)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .nav-item:hover{background:var(--bg-hover);border-color:var(--border-light);color:var(--text-main)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .nav-item.active{background:var(--primary-glow);border-color:var(--primary);color:var(--primary)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .nav-item .nav-icon{background:var(--bg-muted);border-color:var(--border-light);color:var(--text-main)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .nav-item:hover .nav-icon{background:var(--bg-hover);border-color:var(--primary);color:var(--primary)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .nav-item.active .nav-icon{background:var(--primary);border-color:var(--primary);color:var(--bg-card)}.app-sidebar.collapsed .nav-item span:not(.nav-icon){display:inline-block;max-width:320px;opacity:1;overflow:hidden;white-space:nowrap;transition:max-width .2s ease,opacity .2s ease}.app-sidebar.collapsed .nav-item{display:flex;justify-content:flex-start;align-items:center;text-align:left;padding:10px 16px;width:max-content;height:auto;min-height:48px;border-radius:10px;background:linear-gradient(145deg,#e8f4ff,#dceeff,#d0e8ff);border:1px solid #c5ddf5;box-shadow:0 4px 16px #6496c826,inset 0 1px 2px #fffc;transition:width .2s ease,box-shadow .2s ease,border-color .2s ease;overflow:hidden}:root:not([data-theme=light]) .app-sidebar.collapsed .nav-item{background:linear-gradient(145deg,#1e3a5f,#162d4a,#112438);border-color:#2a4a6e;box-shadow:0 4px 16px #000a1e80,inset 0 1px #ffffff0d}.app-sidebar.collapsed .nav-item:hover{box-shadow:0 8px 24px #6496c833;position:relative;z-index:6}.app-sidebar.collapsed .nav-item .nav-icon{width:36px;height:36px;margin:0;display:grid;place-items:center;align-self:center;border-radius:8px}.app-sidebar.collapsed .nav-item svg{width:22px;height:22px}#sidebar-toggle{transform-style:preserve-3d;transition:transform .12s ease;will-change:transform}#sidebar-toggle.is-tilting{transform:perspective(500px) rotateX(var(--tilt-y, 0deg)) rotateY(var(--tilt-x, 0deg))}.app-sidebar .nav-item span{transition:opacity .2s ease,transform .2s ease}.app-sidebar.collapsed .nav-item span{opacity:1;transform:translate(0)}.status-icon{margin-left:auto;font-size:1.2rem}.status-pending{color:#888}.status-transcribing{animation:spin 2s linear infinite}.status-completed{color:#4caf50}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.app-sidebar.collapsed .status-icon{margin-left:0;font-size:1.4rem}.app-sidebar.collapsed .history-item:hover:after{content:attr(data-filename);position:absolute;left:70px;background:#333;color:#fff;padding:5px 10px;border-radius:4px;white-space:nowrap;z-index:1000;pointer-events:none}.btn-primary{background:var(--primary);color:#fff;border:1px solid var(--primary);padding:10px 20px;border-radius:8px;font-weight:600;font-size:.875rem;text-transform:uppercase;cursor:pointer;min-height:34px;transition:all .2s ease}.btn-primary:hover{background:#0056b3;transform:translateY(-1px);box-shadow:0 4px 8px #007bff4d}.btn-primary:active{transform:translateY(0);filter:brightness(.95)}.btn-secondary{background:var(--bg-card);color:var(--text-main);border:1px solid var(--border);padding:6px 16px;border-radius:8px;font-size:.85rem;text-transform:uppercase;min-height:34px;cursor:pointer;transition:all .2s ease}.file-sort-toggle{padding:6px 12px;font-size:.8rem;border-radius:8px;white-space:nowrap}.btn-secondary-sm{padding:4px 10px;font-size:.75rem}.btn-secondary:hover{transform:translateY(-1px);background:var(--bg-hover);border-color:var(--border-light);box-shadow:0 4px 8px #0ea5e92e}.btn-icon{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:8px;border-radius:6px;transition:background-color var(--transition-fast),color var(--transition-fast);display:flex;align-items:center;justify-content:center}.btn-icon:hover{background:var(--bg-hover);color:var(--text-main)}.btn-disabled{opacity:.6;cursor:not-allowed}.btn-icon-sm{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center}.btn-icon-sm:hover{background:var(--bg-hover);color:var(--text-main)}.btn-secondary.btn-accent{border:1px solid transparent;color:#0b1625;font-weight:600}.btn-secondary.btn-icon-only{padding:6px 10px;display:inline-flex;align-items:center;justify-content:center}.btn-secondary.btn-icon-only svg{display:block}.btn-secondary.btn-accent:hover{filter:brightness(1.05)}.btn-secondary.btn-accent-class{background:#3d8af5}.btn-secondary.btn-accent-folder{background:#47d1a3}.btn-secondary.btn-accent-upload{background:#f5a83d}:root[data-theme=light] .btn-secondary.btn-accent{color:#fff}.btn-danger{background:#ef44441f;color:#ef4444;border:1px solid rgba(239,68,68,.3);padding:8px 16px;border-radius:8px;cursor:pointer;font-family:inherit;transition:background-color var(--transition-fast)}.btn-danger:hover{background:#ef444433}.btn-sidebar-action{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--bg-card);border:1px solid var(--border);color:var(--text-main);padding:6px 12px;border-radius:8px;cursor:pointer;font-size:.85rem;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.btn-sidebar-action:hover{background:var(--bg-hover);border-color:var(--border-light)}.toolbar-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer;font-family:Inter,sans-serif;font-size:1rem;font-weight:600}.toolbar-btn:hover{background-color:var(--bg-hover);border-color:var(--border-light);color:var(--text-main)}.split-view{display:flex;height:100%;width:100%;padding:0;gap:0;min-height:0;overflow:hidden}.split-view .panel{min-height:0;min-width:0}.split-view .file-list-panel{flex:0 0 300px;min-width:240px;max-width:380px}.split-view .left-panel.hidden,.split-view .right-panel.hidden,.split-view .questions-panel.hidden,.split-view .column-resizer.hidden{display:none!important}.column-resizer{flex:0 0 3px;margin:0;border-radius:0;cursor:col-resize;position:relative;background:linear-gradient(180deg,var(--border-light) 0%,var(--border) 50%,var(--border-light) 100%);touch-action:none;transition:background .12s ease,flex .12s ease}.column-resizer:hover{flex:0 0 5px;background:linear-gradient(180deg,var(--primary-glow) 0%,var(--primary) 50%,var(--primary-glow) 100%)}.column-resizer:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;transform:translate(-50%);background:var(--primary);opacity:0;border-radius:0;transition:opacity .12s ease}.column-resizer:focus-visible{background:var(--primary-glow);flex:0 0 4px}.column-resizer:hover:before,.column-resizer:focus-visible:before{opacity:1}body.is-resizing-columns .column-resizer:before{opacity:1}body.is-resizing-columns,body.is-resizing-columns *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.split-view.has-marks .left-panel{flex:1.1}.split-view.has-marks .right-panel{flex:1.2}.split-view.has-marks .mark-panel{flex:.7}.split-view .questions-panel{flex:0 0 auto}.split-view.folder-marks-view .column-resizer{display:none}.split-view.folder-marks-view .folder-marks-panel{flex:1;min-width:0}.split-view.folder-analysis-view .column-resizer{display:none}.split-view.folder-analysis-view .folder-analysis-panel{flex:1;min-width:0}.panel{flex:1;background:var(--glass);border:none;border-radius:0;display:flex;flex-direction:column;overflow:hidden;box-shadow:none;position:relative;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.panel-header{height:48px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--glass-border);background:var(--bg-card-strong);box-shadow:var(--shadow-inset);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.panel-title{font-weight:600;font-size:.95rem;color:var(--text-muted)}.panel-header-action{display:flex;flex-direction:column;align-items:center;gap:4px}.panel-header-action-label{font-size:.7rem;font-weight:600;color:var(--text-muted);letter-spacing:.01em}.panel-header-zoom{display:inline-flex;align-items:center;gap:8px}.panel-header-zoom-label{min-width:52px;text-align:center;font-size:.8rem;color:var(--text-muted);font-weight:600;letter-spacing:.01em}.responses-drawer{flex:0 0 260px;max-width:260px;transition:flex-basis .32s cubic-bezier(.2,.8,.2,1),max-width .32s cubic-bezier(.2,.8,.2,1);will-change:flex-basis,max-width}.responses-drawer.collapsed{flex-basis:56px;max-width:56px}.responses-drawer.collapsed .panel-header{justify-content:center;padding:0 8px}.responses-drawer.collapsed .panel-title{opacity:0;transform:translate(-8px);pointer-events:none}.responses-drawer .panel-title{transition:opacity .22s ease,transform .22s ease}.responses-drawer .panel-header{transition:padding .22s ease,justify-content .22s ease}.input-invalid,input.input-invalid,select.input-invalid,textarea.input-invalid{border-color:var(--danger, #dc3545)!important;background-color:#dc35450d!important}.input-invalid:focus,input.input-invalid:focus,select.input-invalid:focus,textarea.input-invalid:focus{box-shadow:0 0 0 3px #dc354533!important;border-color:var(--danger, #dc3545)!important}.api-key-container input{background:var(--input-bg);border:1px solid var(--input-border);padding:8px 16px;border-radius:var(--radius-sm);color:var(--text-main);font-family:inherit;font-size:.9rem;width:240px;transition:var(--transition)}.api-key-container input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.mark-scheme-select{height:36px;padding:0 12px;border-radius:10px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-main);width:100%}.mark-scheme-select:focus{outline:none;box-shadow:0 0 0 3px var(--primary-glow);border-color:var(--primary)}.mark-teacher-label{font-weight:600;font-size:.85rem;color:var(--text-muted)}.mark-teacher-feedback{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-main);font:inherit;resize:vertical;min-height:96px}.mark-teacher-feedback:focus{outline:none;box-shadow:0 0 0 3px var(--primary-glow);border-color:var(--primary)}.context-upload{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--border)}.context-title-field{display:flex;flex-direction:column;gap:6px;flex:1;min-width:220px}.context-title-label{font-size:.8rem;color:var(--text-muted)}.context-title-input{background:var(--input-bg);border:1px solid var(--input-border);padding:10px 12px;border-radius:var(--radius-sm);color:var(--text-main);font-family:inherit;font-size:.95rem;transition:var(--transition)}.context-title-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.context-toolbar-select{height:32px;padding:0 10px;border-radius:8px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-main);font-size:.85rem}.context-toolbar-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.mark-prompt-label{font-size:.8rem;color:var(--text-muted)}.mark-prompt-title{background:var(--input-bg);border:1px solid var(--input-border);padding:10px 12px;border-radius:var(--radius-sm);color:var(--text-main);font-family:inherit;font-size:.95rem;transition:var(--transition)}.mark-prompt-title:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.mark-prompt-editor{flex:1;width:100%;resize:none;padding:16px;margin-top:12px;border:0;border-top:1px solid var(--border);background:transparent;color:var(--text-main);line-height:1.6;min-height:0;outline:none;white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.9rem}.mark-field-input{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-main);font:inherit;resize:vertical}.mark-field-input:focus{outline:2px solid var(--primary);border-color:var(--primary)}.landing-label{display:block;font-size:.85rem;letter-spacing:.04em;text-transform:uppercase;color:var(--landing-muted);margin:10px 0 6px}.landing-input{width:100%;border-radius:12px;border:1px solid var(--glass-border);background:var(--glass);color:var(--landing-text);padding:12px 14px;font-size:1rem;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.landing-input:focus{outline:none;border-color:#fff9;box-shadow:0 0 0 3px #fff3}.landing-checkbox-row{display:flex;align-items:center;gap:10px;margin-top:8px;color:var(--landing-muted);font-size:.95rem}.landing-checkbox-row input[type=checkbox]{width:16px;height:16px;accent-color:rgba(255,255,255,.8)}.form-hint{margin-top:6px;font-size:.85rem;color:var(--text-muted)}.form-hint.is-valid{color:#34b268}.form-hint.is-invalid{color:#dd3c3c}.settings-input{padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-main);font-family:inherit;transition:var(--transition)}.settings-input:focus{outline:2px solid var(--primary);outline-offset:2px;border-color:var(--primary)}.theme-option{position:relative;flex:1 1 120px}.theme-option input{position:absolute;opacity:0}.theme-option span{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-dark);color:var(--text-main);font-weight:500;transition:var(--transition)}.theme-option:hover span{background:var(--bg-hover);border-color:var(--border-light)}.theme-option input:checked+span{border-color:var(--primary);background:#38bdf81a;color:var(--primary);box-shadow:0 0 0 1px var(--primary-glow)}.theme-option input:focus-visible+span{outline:2px solid var(--primary);outline-offset:2px}.loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100}.right-panel .loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:50;background:var(--overlay-strong);border-radius:var(--radius-md)}#matrix-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;opacity:.8}.loading-text{position:relative;z-index:2;background:var(--glass);padding:12px 24px;border-radius:var(--radius-sm);border:1px solid var(--glass-border);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;align-items:center;gap:4px}.loading-text p{margin:0;color:var(--primary);font-family:monospace;font-size:1.1rem;font-weight:600}.spinner{width:48px;height:48px;border:4px solid var(--bg-hover);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px;display:none}.blink{animation:blink 1s step-end infinite;color:var(--primary);font-weight:700}@keyframes blink{50%{opacity:0}}.landing-overlay{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--overlay-strong);z-index:999}.landing-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;filter:brightness(.45) saturate(1.15)}.landing-content{position:relative;z-index:1;text-align:center;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:clamp(28px,8vh,90px);padding:36px 16px 24px}.landing-auth-card{margin:0 auto;width:min(420px,92vw);background:var(--glass);border:1px solid var(--glass-border);border-radius:20px;padding:20px 22px;text-align:left;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow-strong)}.landing-signup-modal{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:clamp(20px,4vw,32px);background:var(--overlay-strong);z-index:1100}.landing-signup-card{position:relative;width:min(540px,92vw);background:var(--bg-card-strong);border:1px solid var(--glass-border);border-radius:22px;padding:clamp(24px,3vw,32px);box-shadow:var(--shadow-strong);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);text-align:left}.context-menu{position:fixed;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--shadow-strong);border-radius:16px;padding:8px;z-index:9999;min-width:220px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow:visible}.context-menu-item{padding:9px 14px;border-radius:12px;display:flex;align-items:center;gap:10px;color:var(--text-main);font-weight:500;cursor:pointer}.context-menu-item svg{flex-shrink:0}.context-menu-item:hover{background:linear-gradient(135deg,#38bdf82e,#2563eb1f)}.context-menu-item.has-submenu:after{content:"›";margin-left:auto;color:var(--text-muted)}.context-menu-item.context-menu-muted{color:var(--text-muted);cursor:default}.context-menu-label{text-transform:uppercase;letter-spacing:.05em;font-size:.7rem;color:var(--text-muted)}.context-menu-divider{height:1px;background:var(--border);margin:6px 4px}.context-menu.is-scrollable{overflow-y:auto}.context-menu-submenu{position:fixed;top:0;left:calc(100% + 8px);display:none;z-index:10000}.context-menu-submenu.is-left{left:auto;right:calc(100% + 8px)}.context-menu-color{font-weight:600}.context-menu-color.class-color-blue{color:#2f8cff}.context-menu-color.class-color-sky{color:#4fb8ff}.context-menu-color.class-color-teal{color:#21c4b8}.context-menu-color.class-color-green{color:#30d57f}.context-menu-color.class-color-amber{color:#ffb64a}.context-menu-color.class-color-orange{color:#ff914a}.context-menu-color.class-color-pink{color:#ff6bbb}.color-swatch{width:14px;height:14px;border-radius:50%;border:1px solid rgba(15,23,42,.2);background:var(--class-gradient, var(--primary));flex:0 0 auto}.color-swatch.class-color-blue{background:linear-gradient(135deg,#3b82f6,#2563eb)}.color-swatch.class-color-sky{background:linear-gradient(135deg,#0ea5e9,#0284c7)}.color-swatch.class-color-teal{background:linear-gradient(135deg,#14b8a6,#0d9488)}.color-swatch.class-color-green{background:linear-gradient(135deg,#22c55e,#16a34a)}.color-swatch.class-color-amber{background:linear-gradient(135deg,#f59e0b,#d97706)}.color-swatch.class-color-orange{background:linear-gradient(135deg,#f97316,#ea580c)}.color-swatch.class-color-pink{background:linear-gradient(135deg,#ec4899,#db2777)}.context-menu-icon-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;padding:8px 10px;max-height:280px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.context-menu-icon-grid::-webkit-scrollbar{width:6px}.context-menu-icon-grid::-webkit-scrollbar-track{background:transparent}.context-menu-icon-grid::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.context-menu-icon-grid::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.context-menu:has(.context-menu-icon-grid){min-width:270px}.context-menu-icon-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:var(--bg-hover);cursor:pointer;font-size:18px;transition:all .15s ease;color:var(--text-main)}.context-menu-icon-btn:hover{background:linear-gradient(135deg,#38bdf82e,#2563eb1f);border-color:#38bdf866;transform:scale(1.05)}.context-menu-icon-btn svg{width:16px;height:16px;color:var(--text-muted)}.purchase-toast{min-height:0;font-size:.9rem;color:var(--text-muted)}.purchase-toast.is-visible{margin-top:-10px;min-height:1.25rem}.history-list{flex:1;overflow-y:auto;padding:12px;padding-bottom:calc(36px + env(safe-area-inset-bottom))}.responses-history-list{max-height:60vh}.responses-folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:20px;padding:16px 0}#responses-unassigned-folder-grid,#responses-class-folders-grid{grid-template-columns:repeat(auto-fit,minmax(220px,max-content));justify-content:start}#responses-class-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}.folder-tile{border:1px solid var(--glass-border);background:var(--glass);border-radius:var(--radius-md);padding:14px;cursor:pointer;transition:var(--transition);display:flex;align-items:center;gap:12px;min-height:64px;perspective:900px;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.folder-tile:hover{background:var(--bg-hover);border-color:var(--border-light);box-shadow:var(--shadow-strong)}.folder-icon{width:40px;height:40px;border-radius:var(--radius-sm);background:#38bdf82e;color:var(--primary);display:grid;place-items:center;flex:0 0 auto;position:relative;transition:transform .18s ease,box-shadow .18s ease}.folder-icon img{width:24px;height:24px}.folder-icon-btn{border:none;background:transparent;padding:0;cursor:pointer}.folder-tile-new{border-style:dashed;border-color:var(--border);background:transparent;font-family:inherit;text-align:left}.folder-tile-new:hover{border-color:var(--primary);background:var(--primary-glow)}.folder-tile-new .folder-icon-new{background:#38bdf81a;border:1px dashed var(--primary);color:var(--primary)}.folder-tile-new:hover .folder-icon-new{background:#38bdf833;border-style:solid;transform:translateY(-4px) rotateX(6deg) rotateY(-6deg);box-shadow:0 16px 26px #38bdf833}.folder-tile-new .folder-tile-name{color:var(--text-muted)}.folder-tile-new:hover .folder-tile-name{color:var(--primary)}.folder-tile:hover .folder-icon{transform:translateY(-4px) rotateX(6deg) rotateY(-6deg);box-shadow:0 16px 26px #124a8c2e}.folder-tile-name{font-weight:600;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.folder-tile-meta{font-size:.8rem;color:var(--text-muted)}.folder-type-badge{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;margin-top:6px;padding:2px 8px;border-radius:999px;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);border:1px solid var(--border);background:var(--bg-card)}.class-tile{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:29px 21px;min-height:254px;cursor:pointer;background:transparent;border:none;box-shadow:none}.class-tile:hover{background:transparent;border:none;box-shadow:none}.class-folder-icon{width:254px;height:173px;border-radius:20px;background:var(--class-gradient, var(--bg-hover));color:var(--text-main);position:relative;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}.class-tile:hover .class-folder-icon{transform:translateY(-4px) rotateX(6deg) rotateY(-6deg);box-shadow:0 16px 26px #124a8c2e}.class-folder-label{position:absolute;top:0;right:0;bottom:0;left:0;font-size:2.6rem;font-weight:700;letter-spacing:.02em;color:var(--text-main);text-align:center;line-height:1.15;display:flex;align-items:center;justify-content:center;padding:10px 12px;text-shadow:0 2px 6px rgba(0,0,0,.25)}.class-tile-new .class-folder-icon img{width:56px;height:56px}.class-color-blue{--class-gradient: linear-gradient(135deg, #4dc4ff 0%, #2f8cff 55%, #1b63ff 100%)}.class-color-sky{--class-gradient: linear-gradient(135deg, #78e3ff 0%, #4fb8ff 60%, #2c7dff 100%)}.class-color-teal{--class-gradient: linear-gradient(135deg, #4efbd7 0%, #21c4b8 55%, #0b8e9b 100%)}.class-color-green{--class-gradient: linear-gradient(135deg, #6ef7a8 0%, #30d57f 55%, #18a865 100%)}.class-color-amber{--class-gradient: linear-gradient(135deg, #ffd66a 0%, #ffb64a 55%, #f2892e 100%)}.class-color-orange{--class-gradient: linear-gradient(135deg, #ffb474 0%, #ff914a 55%, #e96a2c 100%)}.class-color-pink{--class-gradient: linear-gradient(135deg, #ff9bdd 0%, #ff6bbb 55%, #e0469a 100%)}.history-item{background:var(--glass);padding:12px;border-radius:var(--radius-sm);margin-bottom:8px;border:1px solid var(--glass-border);cursor:pointer;transition:var(--transition);display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.history-item:hover{border-color:var(--border-light);background:var(--bg-hover)}.history-item.active{border-color:var(--primary);background:#38bdf829}.history-item.is-selected{border-color:var(--primary);background:#38bdf838}.history-file-row{font-size:.95rem;font-weight:500;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;display:flex;align-items:center;gap:10px}.history-name-text{overflow:hidden;text-overflow:ellipsis}.file-status-indicators{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto}.status-pill{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;border-radius:9999px;font-size:.65rem;font-weight:600;white-space:nowrap;background:var(--bg-muted, #e5e7eb);color:var(--text-muted, #6b7280);border:1px solid var(--border, #d1d5db)}.status-pill.is-marked{background:#22c55e;border-color:#16a34a;color:#fff}.responses-drawer-list{flex:1;overflow-y:auto;padding:12px;transition:opacity .22s ease,transform .22s ease,max-height .32s ease,padding .22s ease}.folder-item{margin-bottom:4px}.folder-header{display:flex;align-items:center;gap:8px;padding:8px 12px;color:var(--text-muted);font-weight:600;font-size:.9rem;cursor:pointer;border-radius:var(--radius-sm)}.folder-header:hover{background:var(--bg-hover);color:var(--text-main)}.folder-header svg{transition:transform .2s}.folder-header.open svg{transform:rotate(90deg)}.folder-content{margin-left:12px;padding-left:12px;border-left:1px solid var(--border);display:none}.folder-content.open{display:block}.editor-container{flex:1;display:flex;flex-direction:column;height:100%;overflow:hidden;background-color:var(--bg-muted)}.editor-toolbar{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background-color:var(--bg-card-strong);border-bottom:1px solid var(--glass-border);flex-shrink:0;box-shadow:var(--shadow-inset);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.toolbar-divider{width:1px;height:24px;background-color:var(--border);margin:0 .5rem}.editor-content{flex:1;width:100%;max-width:800px;margin:0 auto;background-color:var(--bg-card-strong);color:var(--text-main);padding:3rem;overflow-y:auto;outline:none;font-family:Inter,sans-serif;font-size:1.1rem;line-height:1.7;box-shadow:var(--shadow-soft);border:1px solid var(--glass-border);border-radius:18px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.editor-content p{margin-bottom:1em;color:var(--text-main)}.editor-content h1,.editor-content h2,.editor-content h3{margin-bottom:.5em;font-weight:600;color:var(--text-main)}#transcription-content{flex:1;padding:24px;padding-bottom:calc(56px + env(safe-area-inset-bottom));overflow-y:auto;font-size:1rem;color:var(--text-main);line-height:1.7}.mark-content{flex:1;padding:16px;padding-bottom:calc(40px + env(safe-area-inset-bottom));overflow-y:auto}.mark-controls{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}.mark-results{flex:1;min-height:120px}.mark-results.markdown-body[contenteditable=true]{background:var(--glass);border:1px solid var(--glass-border);border-radius:12px;padding:16px;line-height:1.7;outline:none;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.mark-results.markdown-body[contenteditable=true]:focus{box-shadow:0 0 0 3px var(--primary-glow);border-color:var(--primary)}.mark-actions{display:flex;align-items:center;gap:10px;margin-bottom:12px}.markdown-body h1,.markdown-body h2,.markdown-body h3{margin-top:24px;margin-bottom:16px;color:var(--text-main)}.markdown-body p{margin-bottom:16px;color:var(--text-main)}.markdown-body ul,.markdown-body ol{margin-bottom:16px;padding-left:24px}.markdown-body code{background:var(--bg-muted);padding:2px 6px;border-radius:4px;font-family:monospace;font-size:.9em}.context-editor{width:100%;min-height:100%;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-muted);color:var(--text-main);padding:12px;font-family:inherit;font-size:.95rem;line-height:1.5;flex:1;overflow:auto}.context-editor:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-glow)}.context-editor:empty:before{content:attr(data-placeholder);color:var(--text-muted)}.mm-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:24px}.mm-modal-card{width:min(520px,92vw);background:var(--bg-card-strong);border:1px solid var(--glass-border);border-radius:20px;box-shadow:var(--shadow-strong);padding:22px 24px;display:flex;flex-direction:column;gap:16px}.mm-modal-title{font-size:1.1rem;font-weight:600;color:var(--text-main)}.mm-modal-message{color:var(--text-muted);font-size:.98rem;line-height:1.5}.mm-modal-input{width:100%;background:var(--input-bg);border:1px solid var(--input-border);border-radius:12px;padding:12px 14px;color:var(--text-main);font-size:1rem}.mm-modal-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.mm-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.mm-modal-actions .btn-secondary,.mm-modal-actions .btn-primary{min-width:96px}.mm-modal-actions .btn-secondary{background:var(--glass)}.mm-modal-actions .btn-primary.mm-modal-danger{background:#ef4444;color:#0b0b0b}.mm-modal-field{display:flex;flex-direction:column;gap:6px}.mm-modal-field label{font-size:.85rem;font-weight:500;color:var(--text-muted)}.mm-modal-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mm-modal-defaults-section{margin-top:8px;padding-top:16px;border-top:1px solid var(--border)}.mm-modal-defaults-label{font-size:.8rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px}.add-students-modal-card{width:min(780px,95vw);max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.add-students-grid-container{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;overflow:hidden}.add-students-grid-header{display:grid;grid-template-columns:2fr .6fr .6fr .5fr .8fr 32px;gap:8px;padding:10px 12px;background:var(--bg-hover);border-bottom:1px solid var(--border);font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.add-students-rows{max-height:280px;overflow-y:auto}.add-students-grid-row{display:grid;grid-template-columns:2fr .6fr .6fr .5fr .8fr 32px;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border);align-items:center}.add-students-grid-row:last-child{border-bottom:none}.add-students-grid-row .mm-modal-input{padding:8px 10px;font-size:.9rem;border-radius:8px}.add-students-input-name,.add-students-input-small,.add-students-input-notes{min-width:0}.add-students-checkbox-wrapper{display:flex;align-items:center;justify-content:center}.add-students-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--primary)}.add-students-select{min-width:0;padding:8px 6px;font-size:.85rem;border-radius:8px}.mm-modal-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.9rem;color:var(--text-main)}.mm-modal-checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary)}.add-students-remove-btn{width:28px;height:28px;padding:0;border:none;background:transparent;color:var(--text-muted);font-size:1.2rem;cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.add-students-remove-btn:hover{background:#ef444426;color:#ef4444}.add-students-add-btn{align-self:flex-start;font-size:.85rem;padding:8px 14px}@media(max-width:700px){.add-students-modal-card{width:95vw}.add-students-grid-header,.add-students-grid-row{grid-template-columns:1fr .5fr .5fr .5fr 32px}.add-students-col-send,.add-students-select{display:none}.add-students-col-target,.add-students-col-working,.add-students-col-pp{font-size:.65rem}}@media(max-width:520px){.mm-modal-card{padding:18px}.mm-modal-actions{flex-direction:column-reverse}.mm-modal-actions .btn-secondary,.mm-modal-actions .btn-primary{width:100%}.add-students-grid-header,.add-students-grid-row{grid-template-columns:1fr .5fr .5fr 32px}.add-students-col-pp,.add-students-checkbox-wrapper{display:none}}.add-students-import-row{display:flex;gap:10px;margin-top:4px}.import-students-btn{font-size:.85rem;padding:8px 14px;display:flex;align-items:center;gap:6px}.import-students-btn svg{width:14px;height:14px}.column-mapping-container{display:flex;flex-direction:column;gap:16px;padding:16px;background:var(--bg-hover);border-radius:12px;border:1px solid var(--border)}.column-mapping-title{font-size:.9rem;font-weight:600;color:var(--text-main);margin:0}.column-mapping-subtitle{font-size:.8rem;color:var(--text-muted);margin:0}.import-preview-table{width:100%;border-collapse:collapse;font-size:.8rem;border-radius:8px;overflow:hidden;border:1px solid var(--border)}.import-preview-table th,.import-preview-table td{padding:8px 10px;text-align:left;border-bottom:1px solid var(--border)}.import-preview-table th{background:var(--bg-card-strong);font-weight:600;color:var(--text-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}.import-preview-table td{background:var(--bg-card);color:var(--text-main)}.import-preview-table tr:last-child td{border-bottom:none}.import-preview-ellipsis{color:var(--text-muted);font-style:italic;text-align:center}.column-mapping-fields{display:flex;flex-direction:column;gap:10px}.column-mapping-row{display:flex;align-items:center;gap:12px}.column-mapping-label{min-width:100px;font-size:.85rem;font-weight:500;color:var(--text-main)}.column-mapping-select{flex:1;padding:8px 10px;font-size:.85rem;border-radius:8px;background:var(--input-bg);border:1px solid var(--input-border);color:var(--text-main)}.column-mapping-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.column-mapping-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.import-preview-count{font-size:.75rem;color:var(--text-muted);padding:4px 8px;background:var(--bg-card);border-radius:6px;margin-left:auto}@media(max-width:520px){.column-mapping-row{flex-direction:column;align-items:stretch;gap:6px}.column-mapping-label{min-width:unset}}.grade-boundaries-modal-card{width:min(680px,95vw);max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.grade-boundaries-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.grade-boundaries-title-row{display:flex;align-items:center;gap:12px}.grade-boundaries-icon{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#38bdf833,#10b98126);border:1px solid rgba(56,189,248,.3);display:flex;align-items:center;justify-content:center;color:var(--primary)}.grade-boundaries-icon svg{width:20px;height:20px}.grade-boundaries-title{font-size:1.15rem;font-weight:600;color:var(--text-main);margin:0}.grade-boundaries-subtitle{font-size:.85rem;color:var(--text-muted);margin:0}.grade-boundaries-tabs{display:flex;gap:6px;padding:4px;background:var(--bg-muted);border:1px solid var(--border);border-radius:12px}.grade-boundaries-tab{padding:8px 16px;border:none;background:transparent;color:var(--text-muted);font-size:.85rem;font-weight:600;border-radius:8px;cursor:pointer;transition:var(--transition)}.grade-boundaries-tab:hover{color:var(--text-main);background:#ffffff1a}.grade-boundaries-tab.is-active{background:var(--bg-card);color:var(--text-main);box-shadow:0 2px 6px #0000001a}.grade-boundaries-content{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.grade-boundaries-panel{display:none}.grade-boundaries-panel.is-active{display:flex;flex-direction:column;gap:16px}.grade-boundaries-preset-row{display:flex;align-items:center;gap:12px}.grade-boundaries-preset-label{font-size:.8rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.grade-boundaries-preset-select{flex:1;max-width:280px;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-main);font-size:.9rem;font-weight:500;cursor:pointer;transition:var(--transition)}.grade-boundaries-preset-select:hover{border-color:var(--primary)}.grade-boundaries-preset-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.grade-boundaries-grid{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--bg-card)}.grade-boundaries-grid-header{display:grid;grid-template-columns:1.2fr 1fr 1fr 40px;gap:8px;padding:12px 14px;background:var(--bg-hover);border-bottom:1px solid var(--border);font-size:.72rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.grade-boundaries-rows{max-height:280px;overflow-y:auto}.grade-boundaries-row{display:grid;grid-template-columns:1.2fr 1fr 1fr 40px;gap:8px;padding:10px 14px;border-bottom:1px solid var(--border);align-items:center;animation:fadeSlideIn .2s ease both}.grade-boundaries-row:last-child{border-bottom:none}.grade-boundaries-row input{padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:var(--input-bg);color:var(--text-main);font-size:.9rem;font-weight:500;transition:var(--transition)}.grade-boundaries-row input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-glow)}.grade-boundaries-row input::placeholder{color:var(--text-muted);opacity:.6}.grade-boundaries-remove-btn{width:32px;height:32px;padding:0;border:none;background:transparent;color:var(--text-muted);font-size:1.1rem;cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.grade-boundaries-remove-btn:hover{background:#ef444426;color:#ef4444}.grade-boundaries-add-row{padding:10px 14px;border-top:1px solid var(--border);background:var(--bg-muted)}.grade-boundaries-add-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px dashed var(--border);border-radius:8px;background:transparent;color:var(--text-muted);font-size:.85rem;font-weight:500;cursor:pointer;transition:var(--transition)}.grade-boundaries-add-btn:hover{border-color:var(--primary);color:var(--primary);background:#38bdf814}.grade-boundaries-dropzone{border:2px dashed var(--border);border-radius:14px;padding:32px 24px;text-align:center;background:var(--bg-muted);transition:var(--transition);cursor:pointer}.grade-boundaries-dropzone:hover,.grade-boundaries-dropzone.is-dragover{border-color:var(--primary);background:#38bdf814}.grade-boundaries-dropzone-icon{width:48px;height:48px;margin:0 auto 12px;border-radius:12px;background:linear-gradient(135deg,#38bdf826,#10b9811a);border:1px solid rgba(56,189,248,.25);display:flex;align-items:center;justify-content:center;color:var(--primary)}.grade-boundaries-dropzone-icon svg{width:24px;height:24px}.grade-boundaries-dropzone-title{font-size:.95rem;font-weight:600;color:var(--text-main);margin-bottom:4px}.grade-boundaries-dropzone-hint{font-size:.8rem;color:var(--text-muted)}.grade-boundaries-paste-area{margin-top:16px}.grade-boundaries-paste-label{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.grade-boundaries-paste-input{width:100%;min-height:120px;padding:14px;border-radius:12px;border:1px solid var(--border);background:var(--input-bg);color:var(--text-main);font-size:.85rem;font-family:SF Mono,Monaco,monospace;resize:vertical;transition:var(--transition)}.grade-boundaries-paste-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.grade-boundaries-paste-input::placeholder{color:var(--text-muted);opacity:.7;font-family:inherit}.grade-boundaries-parse-btn{margin-top:12px}.grade-boundaries-validation{padding:12px 14px;border-radius:12px;font-size:.85rem}.grade-boundaries-validation.is-error{background:#ef44441f;border:1px solid rgba(239,68,68,.3);color:#f87171}.grade-boundaries-validation.is-warning{background:#f59e0b1f;border:1px solid rgba(245,158,11,.3);color:#fbbf24}.grade-boundaries-validation.is-success{background:#10b9811f;border:1px solid rgba(16,185,129,.3);color:#34d399}.grade-boundaries-validation-title{font-weight:600;margin-bottom:6px;display:flex;align-items:center;gap:6px}.grade-boundaries-validation-list{margin:0;padding-left:20px;font-size:.82rem}.grade-boundaries-validation-list li{margin-bottom:2px}.grade-boundaries-preview{padding:14px;border-radius:12px;background:var(--bg-muted);border:1px solid var(--border)}.grade-boundaries-preview-title{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}.grade-boundaries-preview-chips{display:flex;flex-wrap:wrap;gap:8px}.grade-boundaries-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:var(--bg-card);border:1px solid var(--border);font-size:.82rem;animation:fadeSlideIn .25s ease both}.grade-boundaries-chip-grade{font-weight:700;color:var(--text-main)}.grade-boundaries-chip-range{color:var(--text-muted);font-size:.78rem}.grade-boundaries-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:16px;border-top:1px solid var(--border);flex-wrap:wrap}.grade-boundaries-footer-left,.grade-boundaries-footer-right{display:flex;align-items:center;gap:10px}.grade-boundaries-clear-btn{padding:8px 14px;border:1px solid rgba(239,68,68,.35);border-radius:10px;background:transparent;color:#f87171;font-size:.85rem;font-weight:500;cursor:pointer;transition:var(--transition)}.grade-boundaries-clear-btn:hover{background:#ef44441f;border-color:#ef444480}.grade-boundaries-toggle{display:flex;align-items:center;gap:10px}.grade-boundaries-toggle-label{font-size:.85rem;font-weight:500;color:var(--text-main)}.grade-boundaries-toggle-switch{position:relative;width:44px;height:24px;background:var(--bg-muted);border:1px solid var(--border);border-radius:999px;cursor:pointer;transition:var(--transition)}.grade-boundaries-toggle-switch:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background:var(--text-muted);border-radius:50%;transition:var(--transition)}.grade-boundaries-toggle-switch.is-active{background:linear-gradient(135deg,#38bdf8,#10b981);border-color:transparent}.grade-boundaries-toggle-switch.is-active:after{left:calc(100% - 20px);background:#fff}.class-grade-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;background:linear-gradient(135deg,#38bdf826,#10b9811a);border:1px solid rgba(56,189,248,.3);font-size:.65rem;font-weight:600;color:var(--primary);text-transform:uppercase;letter-spacing:.04em}.class-grade-badge svg{width:10px;height:10px}:root[data-theme=dark] .grade-boundaries-grid{background:var(--bg-card)}:root[data-theme=dark] .grade-boundaries-row input{background:var(--bg-hover)}:root[data-theme=dark] .grade-boundaries-dropzone{background:#0f172a80}:root[data-theme=dark] .grade-boundaries-chip{background:var(--bg-hover)}:root[data-theme=light] .grade-boundaries-tab.is-active{background:#fff}:root[data-theme=light] .grade-boundaries-dropzone{background:#f8fafccc}@media(max-width:600px){.grade-boundaries-modal-card{padding:16px}.grade-boundaries-header{flex-direction:column;align-items:flex-start}.grade-boundaries-tabs{width:100%}.grade-boundaries-tab{flex:1;text-align:center}.grade-boundaries-grid-header,.grade-boundaries-row{grid-template-columns:1fr .8fr .8fr 36px;gap:6px;padding:8px 10px}.grade-boundaries-footer{flex-direction:column}.grade-boundaries-footer-left,.grade-boundaries-footer-right{width:100%;justify-content:center}}.site-footer{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px var(--app-edge-padding) 20px;width:100%;flex-shrink:0}.site-footer-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:999px;border:1px solid var(--glass-border);background:var(--glass);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:var(--text-main);font-size:.95rem;text-align:center}.site-footer-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.site-footer-link{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border-radius:999px;border:1px solid transparent;background:var(--glass);color:var(--text-main);text-decoration:none;font-weight:500;font-size:.9rem;transition:var(--transition)}.site-footer-link:hover{border-color:var(--border-light);background:var(--bg-hover)}.site-footer-separator{color:var(--text-muted)}.site-footer--fixed{position:fixed;left:24px;right:24px;bottom:24px;z-index:20;padding:0}@media(max-width:720px){.site-footer{padding:12px 16px 20px}.site-footer--fixed{left:16px;right:16px;bottom:16px}}#view-responses{height:100%}.class-analytics--floating{--analytics-accent: #14b8a6;--analytics-warm: rgba(245, 158, 11, .18);gap:24px;width:100%}.class-analytics--floating,.class-analytics--floating *{box-sizing:border-box}.class-analytics--floating .class-analytics-hero{background:transparent;border:none;box-shadow:none;padding:0 0 6px}.class-analytics--floating .class-analytics-hero:before{inset:-35% -10% auto auto;background:radial-gradient(circle,rgba(20,184,166,.25),transparent 65%)}.class-analytics--floating .class-analytics-hero:after{inset:auto auto -45% -20%;background:radial-gradient(circle,rgba(245,158,11,.2),transparent 70%)}.class-analytics--floating .class-analytics-title{font-family:EB Garamond,serif;font-size:2rem;letter-spacing:-.02em}.class-analytics-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.class-analytics-score-card{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;padding:18px 20px;border-radius:22px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:0}.class-analytics-score-ring{--score: 0;width:112px;height:112px;border-radius:50%;background:conic-gradient(var(--analytics-accent) calc(var(--score) * 1%),rgba(255,255,255,.08) 0);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:inset 0 0 0 6px #ffffff0f,0 18px 30px #060c1640}.class-analytics-score-ring[data-band=exceeding]{--analytics-accent: #22c55e}.class-analytics-score-ring[data-band=meeting]{--analytics-accent: #14b8a6}.class-analytics-score-ring[data-band=approaching]{--analytics-accent: #f59e0b}.class-analytics-score-ring[data-band=below]{--analytics-accent: #f97316}.class-analytics-score-ring:after{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border-radius:50%;background:var(--bg-card);border:1px solid var(--border);z-index:0}.class-analytics-score-value{position:relative;z-index:1;font-size:1.6rem;font-weight:700;letter-spacing:-.02em;color:var(--text-main)}.class-analytics-score-body{display:flex;flex-direction:column;gap:6px;min-width:0}.class-analytics-score-title{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:600}.class-analytics-score-meta{font-size:.8rem;color:var(--text-muted);max-width:100%;word-break:break-word}.class-analytics-average-toggle{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap;max-width:100%}.class-analytics-toggle{padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--bg-muted);color:var(--text-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600;cursor:pointer;flex:1 1 auto;min-width:0;text-align:center}.class-analytics-toggle.is-active{background:#14b8a633;border-color:#14b8a666;color:var(--text-main)}.class-analytics-metric-card{display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:18px;background:linear-gradient(160deg,#14b8a60f,#f59e0b14),var(--glass);border:1px solid var(--glass-border);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:0}.class-analytics-thresholds{display:flex;flex-direction:column;gap:12px}.class-thresholds-toggle{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:999px;border:1px solid var(--border);background:var(--bg-muted);color:var(--text-main);font-size:.8rem;font-weight:600;cursor:pointer;width:fit-content}.class-thresholds-toggle-meta{font-size:.7rem;color:var(--text-muted);font-weight:500}.class-thresholds-panel{padding:14px;border-radius:16px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:12px}.class-threshold-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.class-threshold-field{display:flex;flex-direction:column;gap:6px}.class-threshold-field label{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:600}.class-threshold-field input{padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-main);font-size:.9rem}.class-threshold-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.class-threshold-note{font-size:.75rem;color:var(--text-muted)}.class-metric-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-weight:600}.class-metric-value{font-size:1.3rem;font-weight:700;color:var(--text-main)}.class-metric-meta{font-size:.75rem;color:var(--text-muted)}.class-analytics-insights{display:flex;flex-direction:column;gap:12px;width:100%}.class-insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;list-style:none;margin:0;padding:0;width:100%}.class-insight{display:grid;grid-template-columns:auto 1fr;gap:12px;padding:14px 16px;border-radius:16px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--shadow-soft);align-items:center}.class-insight-icon{width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#14b8a62e;color:var(--text-main);font-weight:700}.class-insight-title{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.class-analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;align-items:stretch}.class-analytics--floating .class-analytics-panel{background:var(--glass);border-radius:20px;border:1px solid var(--glass-border);box-shadow:var(--shadow-soft);min-width:0}.class-question-performance,.class-score-histogram,.class-progress-chart{min-height:120px}@media(max-width:1200px){.class-analytics-metrics{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.class-analytics-score-card{grid-template-columns:1fr;justify-items:center;text-align:center}.class-analytics-average-toggle{justify-content:center}}@media(max-width:720px){.class-analytics-hero{flex-direction:column;align-items:flex-start}.class-analytics-hero-side{align-items:flex-start}}.responses-page.classes-layout{display:flex;flex-direction:column;gap:24px;height:auto;padding:24px;min-height:0}.classes-tiles{background:transparent;border:none;border-radius:0;padding:0;display:flex;flex-direction:column;gap:16px;min-height:0;box-shadow:none}.classes-tiles-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.classes-tiles-header h2{font-size:1.2rem;font-weight:600}.classes-detail{flex:1;min-width:0;overflow-y:auto;padding:6px 0 18px}.responses-class-detail{background:transparent}.app-header--class-menu .header-left{height:100%;min-height:0;position:relative;z-index:210;overflow:visible;flex:1;gap:16px;display:flex;align-items:center}.app-header--class-menu .header-title{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important;height:auto!important;width:auto!important;max-width:none!important;display:flex!important;align-items:center!important;overflow:visible!important;white-space:normal!important;border-radius:0!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;flex:1}.app-header--class-menu .breadcrumb-bar{width:auto;height:auto;display:flex;align-items:center}.class-menu-bar{display:flex!important;align-items:center;gap:16px;visibility:visible!important;opacity:1!important;background:transparent;border:none;border-radius:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;height:100%;flex:1}.app-header--class-menu{position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:500;overflow:visible;background:var(--glass);border:none;border-bottom:1px solid var(--glass-border);border-radius:0;box-shadow:0 4px 20px #00000014;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);height:var(--header-pill-height);min-height:var(--header-pill-height)!important;padding:0 24px!important;margin:0!important;align-items:center!important;gap:16px!important;justify-content:flex-start}:root[data-theme=dark] .app-header--class-menu{box-shadow:0 4px 20px #0000004d}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .app-header--class-menu{box-shadow:0 4px 20px #0000001a}body:has(.app-header--class-menu) .workspace{padding-top:calc(var(--header-pill-height) + 16px)!important}body:has(.app-header--class-menu) .app-sidebar{z-index:502}body:has(.app-header--class-menu) .app-sidebar.collapsed .sidebar-header{position:fixed;top:0;left:0;height:var(--header-pill-height);display:flex;align-items:center;padding-left:24px;margin:0;z-index:501}body:has(.app-header--class-menu) .app-sidebar.collapsed #sidebar-toggle{border-radius:10px;height:40px}.app-sidebar.collapsed~.workspace .app-header--class-menu{padding-left:224px!important}.class-menu-dropdown{position:relative;display:flex;align-items:center;z-index:220}.class-menu-class-pill{display:flex;align-items:center;justify-content:center;padding:8px 16px;height:40px;border-radius:10px;background:var(--bg-card);border:1px solid var(--glass-border);box-shadow:0 2px 4px #0000000a;color:var(--text-main);font-weight:600;font-size:.9rem;letter-spacing:-.01em;white-space:nowrap;cursor:pointer;max-width:100%;transition:all .15s ease}.class-menu-class-pill:hover{background:var(--bg-hover);border-color:var(--border-strong)}:root[data-theme=dark] .class-menu-class-pill{background:var(--bg-card);border-color:var(--border)}:root[data-theme=dark] .class-menu-class-pill:hover{background:var(--bg-hover)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .class-menu-class-pill{background:var(--bg-card);border-color:var(--border)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .class-menu-class-pill:hover{background:var(--bg-hover)}.class-menu-class-pill:after{content:"▾";font-size:.7rem;margin-left:6px;color:var(--text-muted)}.class-menu-bar .class-detail-tabs{margin-bottom:0;flex:1;justify-content:center}.class-menu-list{position:absolute;top:calc(100% + 8px);left:0;min-width:220px;max-width:320px;padding:8px;border-radius:10px;background:linear-gradient(145deg,#fffffffa,#f0f5fcf2);border:1px solid rgba(200,215,235,.6);box-shadow:0 8px 24px #0f172a1f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);display:flex;flex-direction:column;gap:4px;z-index:1000;opacity:0;visibility:hidden;transform:translateY(-6px);pointer-events:none;transition:opacity .12s ease,transform .12s ease,visibility .12s ease}:root[data-theme=dark] .class-menu-list{background:#1e293bfa;border-color:var(--border);box-shadow:0 8px 24px #0006}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .class-menu-list{background:var(--bg-card);border-color:var(--border)}.class-menu-list[hidden]{display:none}.class-menu-dropdown.is-open .class-menu-list{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.class-menu-item{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:8px;text-decoration:none;font-weight:500;font-size:.85rem;color:var(--text-main);background:transparent;border:1px solid transparent;transition:all .15s ease;white-space:nowrap}.class-menu-item:hover,.class-menu-item:focus-visible{background:#c8d7eb66}.class-menu-item.is-active{background:linear-gradient(145deg,#fffffffa,#f5f8fcf2);border-color:#c8d7eb99;box-shadow:0 2px 6px #0f172a14}:root[data-theme=dark] .class-menu-item:hover,:root[data-theme=dark] .class-menu-item:focus-visible{background:var(--bg-hover)}:root[data-theme=dark] .class-menu-item.is-active{background:var(--bg-card);border-color:var(--border)}.class-detail-tabs{position:relative;display:flex;gap:4px;padding:4px;background:var(--bg-card);border-radius:10px;width:auto;border:1px solid var(--glass-border);box-shadow:0 2px 4px #0000000a;height:40px;align-items:center;margin:0 auto}:root[data-theme=dark] .class-detail-tabs{background:var(--bg-card);border-color:var(--border)}:root[data-theme=sepia-light] .class-detail-tabs{background:var(--bg-card);border-color:var(--border)}:root[data-theme=sepia-dark] .class-detail-tabs{background:var(--bg-card);border-color:var(--border)}.class-detail-tabs-glow{display:none}.class-detail-tab{position:relative;z-index:1;display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid transparent;background:transparent;border-radius:8px;font-size:.85rem;font-weight:500;color:var(--text-muted, #6b7280);cursor:pointer;transition:all .15s ease;white-space:nowrap;text-decoration:none;height:auto}.class-detail-tab[draggable=true]{cursor:grab;-webkit-user-select:none;user-select:none}.class-detail-tab.is-dragging{opacity:.6;cursor:grabbing}.class-detail-tab:hover{background:var(--bg-hover);border-color:var(--border-light);color:var(--text-main, #1f2937)}.class-detail-tab.is-active{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600;box-shadow:0 2px 4px #0ea5e94d}:root[data-theme=dark] .class-detail-tab:hover{background:var(--bg-hover);border-color:var(--border);color:var(--text-main)}:root[data-theme=dark] .class-detail-tab.is-active{background:var(--primary);border-color:var(--primary);color:#fff}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .class-detail-tab:hover{background:var(--bg-hover);border-color:var(--border);color:var(--text-main)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .class-detail-tab.is-active{background:var(--primary);border-color:var(--primary);color:#fff}.class-detail-tab svg{flex-shrink:0;transition:transform .2s ease}.class-detail-tab.is-active svg{transform:scale(1.05)}.app-header--class-menu .header-actions{margin-left:auto;gap:12px;height:100%;display:flex;align-items:center}.app-header--class-menu .header-datetime-wrapper{height:auto;display:flex;align-items:center}.app-header--class-menu .header-datetime{border-radius:10px;border:1px solid var(--glass-border);background:var(--bg-card);box-shadow:0 2px 4px #0000000a;height:40px;display:flex;align-items:center;padding:0 16px}.app-header--class-menu .header-datetime:after{display:none}:root[data-theme=dark] .app-header--class-menu .header-datetime{background:var(--bg-card);border-color:var(--border)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .app-header--class-menu .header-datetime{background:var(--bg-card);border-color:var(--border)}.app-header--class-menu .header-appearance-menu{left:50%;right:auto;transform:translate(-50%) translateY(-6px);border-radius:10px}.app-header--class-menu .header-datetime-wrapper.is-open .header-appearance-menu{transform:translate(-50%) translateY(0)}.app-header--class-menu .header-queue-wrapper{height:auto;display:flex;align-items:center}.app-header--class-menu .header-queue-pill{border-radius:10px;height:40px;display:flex;align-items:center}.class-tab-content{display:none}.class-tab-content.is-active{display:block}.knowledge-map-wrapper{min-height:500px;background:var(--glass, rgba(255, 255, 255, .8));border:1px solid var(--glass-border, rgba(0, 0, 0, .1));border-radius:24px;overflow:hidden}.responses-class-subsection{background:var(--glass);border:1px solid var(--glass-border);border-radius:24px;padding:14px 16px;margin-bottom:14px;box-shadow:var(--shadow-soft)}.class-analytics{display:flex;flex-direction:column;gap:16px;margin-bottom:18px}.class-analytics-hero{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:20px 22px;border-radius:26px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--shadow-soft);overflow:hidden}.class-analytics-hero:before{content:"";position:absolute;inset:-40% -10% auto auto;width:320px;height:320px;background:radial-gradient(circle,rgba(56,189,248,.35),transparent 65%);opacity:.75;pointer-events:none}.class-analytics-hero:after{content:"";position:absolute;inset:auto auto -45% -15%;width:320px;height:320px;background:radial-gradient(circle,rgba(16,185,129,.22),transparent 70%);opacity:.6;pointer-events:none}.class-analytics-hero-content{position:relative;z-index:1;max-width:620px;flex:1}.class-analytics-hero-side{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-end;gap:12px;min-width:220px}.class-analytics-hero-action{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:136px;min-height:118px;border:1px solid var(--glass-border);border-radius:18px;padding:14px 12px;background:var(--bg-card-strong);color:var(--text-main);box-shadow:0 14px 24px #0f172a1f;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.class-analytics-hero-action:hover{border-color:var(--primary);box-shadow:0 14px 28px #0ea5e940;transform:translateY(-2px)}.class-analytics-hero-action-icon{width:44px;height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(140deg,var(--primary),#7c3aed);color:#fff;box-shadow:0 10px 20px #0ea5e93b}.class-analytics-hero-action-icon svg{width:22px;height:22px}.class-analytics-hero-action-caption{text-align:center;font-size:.82rem;line-height:1.24;font-weight:600}.class-analytics-hero-action:focus-visible{outline:none;box-shadow:0 0 0 3px #38bdf840,0 14px 24px #0f172a1f}.class-analytics-kicker{font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;color:var(--text-muted);font-weight:600;margin:0}.class-analytics-title{margin:6px 0;font-size:1.6rem;font-weight:700;color:var(--text-main)}.class-analytics-hero-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.class-analytics-range{display:flex;flex-direction:column;gap:6px}.class-analytics-range-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:600}.class-analytics-range-select{padding:10px 36px 10px 16px;border-radius:12px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-main);font-size:.85rem;font-weight:600;min-width:170px;cursor:pointer;transition:all .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;box-shadow:0 2px 6px #0000000f}.class-analytics-range-select:hover{border-color:var(--primary);box-shadow:0 4px 12px #38bdf826}.class-analytics-range-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #38bdf833}.class-analytics-custom-range{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-top:12px;padding:14px 16px;background:var(--bg-muted);border-radius:14px;border:1px solid var(--border)}.class-analytics-date-field{display:flex;flex-direction:column;gap:6px}.class-analytics-date-field label{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:600}.class-analytics-date-field input{padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-main);font-size:.85rem;font-weight:500;transition:all .2s ease}.class-analytics-date-field input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #38bdf833}.class-analytics-custom-range .btn-secondary{padding:10px 20px;border-radius:10px;font-weight:600}.class-analytics-subtitle{margin:0;font-size:.95rem;color:var(--text-muted);line-height:1.5}.class-analytics-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:0;justify-content:flex-end}.class-analytics-tag{padding:4px 10px;border-radius:999px;background:var(--bg-muted);border:1px solid var(--border);color:var(--text-muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600}.class-analytics-actions{display:flex;align-items:center;gap:10px;margin-top:0;justify-content:flex-end}.class-action-pill{display:inline-flex;align-items:center;gap:10px;padding:8px 18px 8px 8px;border-radius:999px;background:linear-gradient(135deg,#38bdf826,#0ea5e914);border:1px solid rgba(56,189,248,.35);color:var(--text-main);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .25s ease;box-shadow:0 2px 8px #38bdf81a}.class-action-pill:hover{background:linear-gradient(135deg,#38bdf840,#0ea5e926);border-color:#38bdf880;transform:translateY(-1px);box-shadow:0 4px 16px #38bdf833}.class-action-pill:active{transform:translateY(0)}.action-pill-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#38bdf8,#0ea5e9);color:#fff;flex-shrink:0;box-shadow:0 2px 6px #0ea5e959}.action-pill-icon svg{width:16px;height:16px}.action-pill-label{white-space:nowrap}:root[data-theme=dark] .class-action-pill{background:linear-gradient(135deg,#38bdf81f,#0ea5e90f);border-color:#38bdf84d}:root[data-theme=dark] .class-action-pill:hover{background:linear-gradient(135deg,#38bdf833,#0ea5e91f);border-color:#38bdf873}:root[data-theme=light] .class-action-pill{background:linear-gradient(135deg,#38bdf81f,#0ea5e90d);border-color:#38bdf866;color:#0c4a6e}:root[data-theme=light] .class-action-pill:hover{background:linear-gradient(135deg,#38bdf833,#0ea5e91a)}.class-action-pill:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.class-action-pill:disabled:hover{transform:none;box-shadow:0 2px 8px #38bdf81a}.class-analytics-hero-score{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;align-items:center;min-width:150px;gap:10px}.class-analytics-average-toggle{display:inline-flex;align-items:center;gap:6px;padding:4px;background:var(--bg-muted);border:1px solid var(--border);border-radius:999px}.class-average-toggle-btn{border:none;background:transparent;color:var(--text-muted);padding:4px 10px;border-radius:999px;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:var(--transition)}.class-average-toggle-btn.is-active{background:var(--bg-card);color:var(--text-main);box-shadow:0 2px 6px #0000002e}.class-analytics-score-ring{--score: 0;width:140px;height:140px;border-radius:50%;background:conic-gradient(#38bdf8f2,#38bdf8f2 calc(var(--score) * 1%),#94a3b833 calc(var(--score) * 1%),#94a3b833);display:flex;align-items:center;justify-content:center;position:relative}.class-analytics-score-ring:after{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border-radius:50%;background:var(--bg-card-strong);border:1px solid var(--glass-border)}.score-ring-content{position:relative;z-index:1;text-align:center;display:flex;flex-direction:column;gap:4px}.score-ring-value{font-size:1.8rem;font-weight:700;color:var(--text-main)}.score-ring-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.score-ring-meta{font-size:.7rem;color:var(--text-muted)}.class-analytics-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.class-kpi-card{background:var(--glass);border:1px solid var(--glass-border);border-radius:18px;padding:16px 18px;display:flex;flex-direction:column;gap:6px;min-height:90px;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:relative;overflow:hidden}.class-kpi-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.04),transparent 50%);pointer-events:none}.class-kpi-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:600;position:relative;z-index:1}.class-kpi-value{font-size:1.5rem;font-weight:700;color:var(--text-main);letter-spacing:-.02em;position:relative;z-index:1}.class-kpi-meta{font-size:.75rem;color:var(--text-muted);position:relative;z-index:1}.class-analytics-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.class-analytics-panels--compact{grid-template-columns:1fr 1fr}.class-analytics-panel{background:var(--glass);border:1px solid var(--glass-border);border-radius:20px;padding:18px 20px;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:14px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:relative;overflow:hidden;min-width:0}.class-analytics-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.03),transparent 60%);pointer-events:none}.class-analytics-panel--grades,.class-analytics-panel--insights{flex:1}.class-analytics-panel--wide{grid-column:span 2}.class-analytics-panel-header{position:relative;z-index:1}.class-analytics-panel-header--split{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.class-analytics-panel-header h3{margin:0;font-size:1rem;font-weight:700;color:var(--text-main);letter-spacing:-.01em}.class-analytics-panel-header p{margin:4px 0 0;font-size:.8rem;color:var(--text-muted);line-height:1.4}.class-analytics-flag{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#92400e;background:#f59e0b2e;border:1px solid rgba(245,158,11,.35);border-radius:999px;white-space:nowrap;cursor:pointer;font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}.class-analytics-flag:focus-visible{outline:2px solid rgba(245,158,11,.6);outline-offset:2px}.class-analytics-flag-caret{font-size:.8rem;line-height:1}.class-analytics-flag-panel{position:relative;width:100%;margin:10px 0 4px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-soft);padding:10px 12px}.class-analytics-flag-panel-title{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--text-muted);margin-bottom:6px}.class-analytics-flag-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto}.class-analytics-flag-list li{margin:0}.class-analytics-gap-link{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:var(--bg-muted);color:var(--text-main);font-size:.82rem;font-weight:500;text-decoration:none;transition:all .2s ease}.class-analytics-gap-link:hover{border-color:var(--border-hover);box-shadow:0 4px 12px #00000014;transform:translateY(-1px)}.class-grade-distribution{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-auto-rows:minmax(0,1fr);gap:10px;align-items:stretch;align-content:stretch;position:relative;z-index:1;flex:1;perspective:900px;min-width:0}.class-grade-distribution:has(.class-analytics-empty){display:block}.class-grade-chip{--grade-card-bg: linear-gradient(135deg, #1f2937, #111827);--grade-card-glow: rgba(15, 23, 42, .35);--grade-card-ink: #f8fafc;--grade-pill-bg: rgba(248, 250, 252, .22);display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px 14px;border-radius:18px;background:var(--grade-card-bg);border:1px solid rgba(255,255,255,.14);color:var(--grade-card-ink);transition:transform .25s ease,box-shadow .25s ease;animation:fadeSlideIn .35s ease both;animation-delay:var(--anim-delay, 0ms);box-shadow:0 14px 28px var(--grade-card-glow),inset 0 1px #ffffff59,inset 0 -18px 26px #0000002e;width:100%;height:100%;position:relative;transform-style:preserve-3d;cursor:pointer}.class-grade-chip:hover{transform:translateY(-10px) translateZ(8px) rotateX(6deg) rotateY(-6deg) scale(1.04);box-shadow:0 22px 36px var(--grade-card-glow),inset 0 1px #ffffff73,inset 0 -22px 34px #0000003d}.class-grade-chip:focus-visible{outline:2px solid rgba(56,189,248,.45);outline-offset:2px}.class-grade-chip:before{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:inherit;background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.4),transparent 55%);opacity:.6;transition:opacity .25s ease,transform .25s ease;pointer-events:none}.class-grade-chip:hover:before{opacity:.9;transform:translateY(-6px);animation:gradeCardSheen .6s ease}@keyframes gradeCardSheen{0%{opacity:.4;transform:translateY(0)}50%{opacity:1;transform:translateY(-8px)}to{opacity:.7;transform:translateY(-4px)}}.class-grade-chip-grade{font-size:2.6rem;font-weight:800;color:inherit;min-width:24px;text-align:center;letter-spacing:-.02em;text-shadow:0 6px 16px rgba(0,0,0,.3);transform:translateZ(18px);transition:transform .25s ease}.class-grade-chip-count{display:flex;align-items:center;justify-content:center;min-width:40px;height:28px;padding:0 12px;border-radius:999px;background:var(--grade-pill-bg);color:inherit;font-size:.8rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;box-shadow:inset 0 1px #ffffff59;transform:translateZ(12px)}.class-grade-chip[data-grade^=A],.class-grade-chip[data-grade="9"],.class-grade-chip[data-grade="8"]{--grade-card-bg: linear-gradient(135deg, #1fbf73, #0f766e);--grade-card-glow: rgba(16, 185, 129, .35);--grade-pill-bg: rgba(240, 253, 250, .24)}.class-grade-chip[data-grade^=A] .class-grade-chip-count,.class-grade-chip[data-grade="9"] .class-grade-chip-count,.class-grade-chip[data-grade="8"] .class-grade-chip-count{color:#f0fdf4}.class-grade-chip[data-grade^=B],.class-grade-chip[data-grade="7"],.class-grade-chip[data-grade="6"]{--grade-card-bg: linear-gradient(135deg, #38bdf8, #1d4ed8);--grade-card-glow: rgba(59, 130, 246, .35);--grade-pill-bg: rgba(219, 234, 254, .26)}.class-grade-chip[data-grade^=B] .class-grade-chip-count,.class-grade-chip[data-grade="7"] .class-grade-chip-count,.class-grade-chip[data-grade="6"] .class-grade-chip-count{color:#eff6ff}.class-grade-chip[data-grade^=C],.class-grade-chip[data-grade="5"],.class-grade-chip[data-grade="4"]{--grade-card-bg: linear-gradient(135deg, #f59e0b, #d97706);--grade-card-glow: rgba(245, 158, 11, .4);--grade-pill-bg: rgba(254, 243, 199, .32)}.class-grade-chip[data-grade^=C] .class-grade-chip-count,.class-grade-chip[data-grade="5"] .class-grade-chip-count,.class-grade-chip[data-grade="4"] .class-grade-chip-count{color:#fff7ed}.class-grade-chip[data-grade^=D],.class-grade-chip[data-grade^=E],.class-grade-chip[data-grade="3"],.class-grade-chip[data-grade="2"],.class-grade-chip[data-grade="1"]{--grade-card-bg: linear-gradient(135deg, #f97316, #dc2626);--grade-card-glow: rgba(248, 113, 113, .38);--grade-pill-bg: rgba(254, 226, 226, .28)}.class-grade-chip[data-grade^=D] .class-grade-chip-count,.class-grade-chip[data-grade^=E] .class-grade-chip-count,.class-grade-chip[data-grade="3"] .class-grade-chip-count,.class-grade-chip[data-grade="2"] .class-grade-chip-count,.class-grade-chip[data-grade="1"] .class-grade-chip-count{color:#fff7ed}.class-grade-chip[data-grade=U],.class-grade-chip[data-grade^=F],.class-grade-chip[data-grade^=G]{--grade-card-bg: linear-gradient(135deg, #64748b, #334155);--grade-card-glow: rgba(71, 85, 105, .35);--grade-pill-bg: rgba(226, 232, 240, .22)}.class-grade-chip[data-grade=U] .class-grade-chip-count,.class-grade-chip[data-grade^=F] .class-grade-chip-count,.class-grade-chip[data-grade^=G] .class-grade-chip-count{color:#f8fafc}.class-grade-row{display:grid;grid-template-columns:52px 1fr 38px;align-items:center;gap:10px;font-size:.85rem}.class-grade-label{font-weight:600;color:var(--text-main)}.class-grade-bar{position:relative;height:10px;border-radius:999px;background:var(--bg-muted);border:1px solid var(--border);overflow:hidden}.class-grade-bar-fill{position:absolute;top:0;right:0;bottom:0;left:0;width:0%;background:linear-gradient(90deg,#38bdf8e6,#10b981bf);border-radius:inherit;transition:width .3s ease}.class-grade-value{text-align:right;font-weight:600;color:var(--text-muted)}.class-target-distribution{display:flex;flex-direction:column;gap:12px}.class-target-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.class-target-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 10px;border-radius:14px;background:var(--bg-card);border:1px solid var(--border);transition:all .2s ease;animation:fadeSlideIn .35s ease both;animation-delay:var(--anim-delay, 0ms);position:relative;overflow:hidden}.class-target-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.12;pointer-events:none}.class-target-card.is-above:before{background:linear-gradient(135deg,#10b981,#34d399)}.class-target-card.is-on:before{background:linear-gradient(135deg,#38bdf8,#0ea5e9)}.class-target-card.is-below:before{background:linear-gradient(135deg,#ef4444,#f87171)}.class-target-card-icon{font-size:1.1rem;line-height:1}.class-target-card.is-above .class-target-card-icon{color:#10b981}.class-target-card.is-on .class-target-card-icon{color:#38bdf8}.class-target-card.is-below .class-target-card-icon{color:#ef4444}.class-target-card-count{font-size:1.5rem;font-weight:700;color:var(--text-main);line-height:1}.class-target-card-label{font-size:.7rem;font-weight:600;color:var(--text-main);text-transform:uppercase;letter-spacing:.04em}.class-target-card-pct{font-size:.68rem;font-weight:600;color:var(--text-muted);padding:2px 8px;background:var(--bg-muted);border-radius:999px}.class-target-bar{display:flex;height:14px;border-radius:999px;overflow:hidden;border:1px solid var(--border);background:var(--bg-muted)}.class-target-segment{height:100%}.class-target-segment.is-above{background:linear-gradient(90deg,#22c55ee6,#10b981b3)}.class-target-segment.is-on{background:linear-gradient(90deg,#38bdf8d9,#0ea5e9a6)}.class-target-segment.is-below{background:linear-gradient(90deg,#f87171d9,#ef4444b3)}.class-target-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:.75rem;color:var(--text-muted)}.class-target-legend-item{display:flex;align-items:center;gap:6px;font-weight:600}.class-target-dot{width:8px;height:8px;border-radius:50%}.class-target-dot.is-above{background:#10b981e6}.class-target-dot.is-on{background:#38bdf8e6}.class-target-dot.is-below{background:#ef4444e6}.class-progress-chart{min-height:150px}.class-progress-chart svg{width:100%;height:160px;display:block}.class-progress-empty,.class-analytics-empty{font-size:.85rem;color:var(--text-muted);text-align:center;padding:24px 0}.class-insights-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;position:relative;z-index:1}.class-insight{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:14px 16px;transition:all .2s ease}.class-insight:hover{border-color:var(--border-light);box-shadow:0 4px 12px #0000000f}.class-insight-title{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:600}.class-insight-value{font-size:1rem;font-weight:600;color:var(--text-main)}.class-insight-sub{font-size:.75rem;color:var(--text-muted)}.class-insight.is-empty{text-align:center;justify-content:center}.class-analytics--floating .class-insight{background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--shadow-soft);display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center}.class-analytics--floating .class-insight-icon{width:34px;height:34px;border-radius:10px;background:#14b8a62e;display:inline-flex;align-items:center;justify-content:center}.class-analytics--floating .class-analytics-score-ring{width:112px;height:112px;background:conic-gradient(var(--analytics-accent) calc(var(--score) * 1%),rgba(255,255,255,.08) 0);box-shadow:inset 0 0 0 6px #ffffff0f,0 18px 30px #060c1640}.class-analytics--floating .class-analytics-score-ring:after{background:var(--bg-card);border:1px solid var(--border)}.class-analytics--floating .class-analytics-score-ring[data-band=exceeding]{--analytics-accent: #22c55e}.class-analytics--floating .class-analytics-score-ring[data-band=meeting]{--analytics-accent: #14b8a6}.class-analytics--floating .class-analytics-score-ring[data-band=approaching]{--analytics-accent: #f59e0b}.class-analytics--floating .class-analytics-score-ring[data-band=below]{--analytics-accent: #f97316}.class-analytics--floating .class-analytics-average-toggle{background:transparent;border:none;padding:0}.class-performance-bands-section{margin-bottom:14px}.class-performance-bands-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding:0 4px}.class-performance-bands-label{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.class-performance-bands-toggle{display:flex;align-items:center;gap:8px}.class-performance-bands-toggle label{font-size:.8rem;color:var(--text-muted)}.class-performance-select{padding:4px 8px;font-size:.8rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-card);color:var(--text);cursor:pointer}.class-performance-select:hover{border-color:var(--border-hover)}.class-performance-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-alpha)}.class-performance-bands{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-bottom:0;min-width:0}.class-performance-bands:has(.class-analytics-empty){display:block}.class-performance-bands .class-analytics-empty{background:var(--bg-card);border:1px dashed var(--border);border-radius:16px;padding:20px;text-align:center;color:var(--text-muted);font-size:.85rem}.performance-band{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 12px;border-radius:16px;background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow-soft);position:relative;overflow:hidden;animation:fadeSlideIn .4s ease both;animation-delay:var(--anim-delay, 0ms)}.performance-band.is-clickable{cursor:pointer}.performance-band.is-clickable:focus-visible{outline:2px solid rgba(56,189,248,.45);outline-offset:2px}.performance-band:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.12;pointer-events:none}.performance-band.is-exceeding:before{background:linear-gradient(135deg,#10b981,#34d399)}.performance-band.is-meeting:before{background:linear-gradient(135deg,#38bdf8,#0ea5e9)}.performance-band.is-approaching:before{background:linear-gradient(135deg,#f59e0b,#fbbf24)}.performance-band.is-below:before{background:linear-gradient(135deg,#ef4444,#f87171)}.performance-band-icon{font-size:1.2rem;line-height:1}.performance-band.is-exceeding .performance-band-icon{color:#10b981}.performance-band.is-meeting .performance-band-icon{color:#38bdf8}.performance-band.is-approaching .performance-band-icon{color:#f59e0b}.performance-band.is-below .performance-band-icon{color:#ef4444}.performance-band-count{font-size:1.6rem;font-weight:700;color:var(--text-main);line-height:1}.performance-band-label{font-size:.75rem;font-weight:600;color:var(--text-main);text-transform:uppercase;letter-spacing:.04em}.performance-band-sublabel{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.performance-band-pct{font-size:.7rem;font-weight:600;color:var(--text-muted);padding:2px 8px;background:var(--bg-muted);border-radius:999px}.class-question-performance{display:flex;flex-direction:column;gap:10px;min-width:0}.question-perf-row{display:grid;grid-template-columns:minmax(90px,1fr) minmax(120px,2fr) minmax(44px,auto) minmax(60px,auto);align-items:center;gap:12px;animation:fadeSlideIn .35s ease both;animation-delay:var(--anim-delay, 0ms);min-width:0}.question-perf-row.is-clickable{cursor:pointer;border-radius:10px;padding:6px 8px}.question-perf-row.is-clickable:hover{background:#94a3b814}.question-perf-row.is-clickable:focus-visible{outline:2px solid rgba(56,189,248,.45);outline-offset:2px}.question-perf-label{font-size:.82rem;font-weight:500;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.question-perf-bar{height:10px;background:var(--bg-muted);border:1px solid var(--border);border-radius:999px;overflow:hidden;position:relative}.question-perf-bar-fill{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;transition:width .5s ease}.question-perf-bar-fill.is-exceeding{background:linear-gradient(90deg,#10b981,#34d399)}.question-perf-bar-fill.is-meeting{background:linear-gradient(90deg,#38bdf8,#0ea5e9)}.question-perf-bar-fill.is-approaching{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.question-perf-bar-fill.is-below{background:linear-gradient(90deg,#ef4444,#f87171)}.question-perf-value{font-size:.85rem;font-weight:700;color:var(--text-main);text-align:right}.question-perf-count{font-size:.72rem;color:var(--text-muted);text-align:right}.class-score-histogram{min-height:120px;min-width:0}.histogram-bars{display:flex;align-items:flex-end;gap:6px;height:100px;padding-top:10px;min-width:0}.histogram-bar{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;position:relative;animation:fadeSlideIn .3s ease both;animation-delay:var(--anim-delay, 0ms);min-width:0}.histogram-bar.is-clickable{cursor:pointer}.histogram-bar.is-clickable:focus-visible{outline:2px solid rgba(56,189,248,.45);outline-offset:2px;border-radius:8px}.histogram-bar-fill{width:100%;border-radius:4px 4px 0 0;position:absolute;bottom:20px;transition:height .5s ease}.histogram-bar-fill.is-exceeding{background:linear-gradient(180deg,#10b981,#34d399)}.histogram-bar-fill.is-meeting{background:linear-gradient(180deg,#38bdf8,#0ea5e9)}.histogram-bar-fill.is-approaching{background:linear-gradient(180deg,#f59e0b,#fbbf24)}.histogram-bar-fill.is-below{background:linear-gradient(180deg,#ef4444,#f87171)}.histogram-bar-label{position:absolute;bottom:0;font-size:.6rem;font-weight:600;color:var(--text-muted)}.histogram-bar-value{position:absolute;bottom:22px;font-size:.6rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;pointer-events:none}.class-analytics-score-ring[data-band=exceeding]{background:conic-gradient(#10b981f2,#10b981f2 calc(var(--score) * 1%),#94a3b833 calc(var(--score) * 1%),#94a3b833)}.class-analytics-score-ring[data-band=meeting]{background:conic-gradient(#38bdf8f2,#38bdf8f2 calc(var(--score) * 1%),#94a3b833 calc(var(--score) * 1%),#94a3b833)}.class-analytics-score-ring[data-band=approaching]{background:conic-gradient(#f59e0bf2,#f59e0bf2 calc(var(--score) * 1%),#94a3b833 calc(var(--score) * 1%),#94a3b833)}.class-analytics-score-ring[data-band=below]{background:conic-gradient(#ef4444f2,#ef4444f2 calc(var(--score) * 1%),#94a3b833 calc(var(--score) * 1%),#94a3b833)}.class-insight{display:flex;flex-direction:row;align-items:flex-start;gap:12px;animation:fadeSlideIn .35s ease both;animation-delay:var(--anim-delay, 0ms)}.class-insight-icon{width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0;background:var(--bg-muted);border:1px solid var(--border)}.class-insight.is-exceeding .class-insight-icon{background:#10b98126;border-color:#10b98166;color:#10b981}.class-insight.is-meeting .class-insight-icon{background:#38bdf826;border-color:#38bdf866;color:#38bdf8}.class-insight.is-approaching .class-insight-icon{background:#f59e0b26;border-color:#f59e0b66;color:#f59e0b}.class-insight.is-below .class-insight-icon{background:#ef444426;border-color:#ef444466;color:#ef4444}.class-insight.is-neutral .class-insight-icon{background:var(--bg-muted);border-color:var(--border);color:var(--text-muted)}.class-insight-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.class-inline-action-btn{margin-top:8px;align-self:flex-start;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--bg-muted);color:var(--text-main);font-size:.68rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:all .18s ease}.class-inline-action-btn:hover{border-color:var(--border-hover);background:var(--bg-card)}.class-inline-action-btn:focus-visible{outline:2px solid rgba(56,189,248,.5);outline-offset:2px}.class-data-quality-summary{font-size:.82rem;color:var(--text-main);background:var(--bg-muted);border:1px solid var(--border);border-radius:12px;padding:10px 12px}.class-data-source-list{display:flex;flex-wrap:wrap;gap:8px}.class-data-source-chip{border:1px solid var(--border);background:var(--bg-card);color:var(--text-main);border-radius:12px;padding:8px 10px;display:flex;flex-direction:column;gap:3px;align-items:flex-start;cursor:pointer;min-width:138px}.class-data-source-chip:hover{border-color:var(--border-hover);box-shadow:var(--shadow-soft)}.class-data-source-chip:focus-visible{outline:2px solid rgba(20,184,166,.45);outline-offset:2px}.class-data-source-name{font-size:.74rem;font-weight:600;color:var(--text-main)}.class-data-source-meta{font-size:.68rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.class-exclusion-reason-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.class-exclusion-item{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:10px 12px}.class-exclusion-text{font-size:.78rem;color:var(--text-main)}.class-priority-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.class-priority-chip{border:1px solid var(--border);border-radius:14px;background:var(--bg-card);color:var(--text-main);padding:10px 12px;display:grid;grid-template-columns:1fr auto;grid-template-areas:"label count" "meta meta";gap:4px 8px;text-align:left;cursor:pointer}.class-priority-chip:disabled{opacity:.6;cursor:not-allowed}.class-priority-chip:hover:not(:disabled){border-color:var(--border-hover);box-shadow:var(--shadow-soft)}.class-priority-chip-label{grid-area:label;font-size:.78rem;font-weight:700}.class-priority-chip-count{grid-area:count;font-size:1rem;font-weight:700}.class-priority-chip-meta{grid-area:meta;font-size:.66rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.class-priority-chip.is-reteach{border-color:#ef444459;background:#ef444414}.class-priority-chip.is-watch{border-color:#f59e0b59;background:#f59e0b17}.class-priority-chip.is-stretch{border-color:#10b98159;background:#10b98117}.class-intervention-list,.class-drilldown-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.class-intervention-item,.class-drilldown-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--bg-card)}.class-drilldown-main{min-width:0}.class-drilldown-link{display:inline-block;color:var(--text-main);font-weight:600;font-size:.84rem;text-decoration:none}.class-drilldown-link:hover{text-decoration:underline}.class-drilldown-meta{margin-top:2px;font-size:.73rem;color:var(--text-muted)}.class-drilldown-badge{white-space:nowrap;padding:5px 8px;border-radius:999px;background:var(--bg-muted);border:1px solid var(--border);font-size:.68rem;color:var(--text-main);font-weight:600}.class-drilldown-empty{font-size:.8rem;color:var(--text-muted);text-align:center;border:1px dashed var(--border);border-radius:12px;padding:12px;background:var(--bg-card)}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.class-performance-bands{grid-template-columns:repeat(2,1fr)}.class-priority-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.class-intervention-item,.class-drilldown-item{flex-wrap:wrap;align-items:flex-start}}@media(max-width:600px){.class-performance-bands{grid-template-columns:1fr}.question-perf-row{grid-template-columns:1fr 60px;gap:8px}.question-perf-bar,.question-perf-count{display:none}.histogram-bars{height:80px}.class-data-source-list{display:grid;grid-template-columns:1fr}.class-priority-groups{grid-template-columns:1fr}.class-exclusion-item,.class-intervention-item,.class-drilldown-item{flex-direction:column;align-items:flex-start}.class-drilldown-badge{align-self:flex-start}}.classes-files-hint{font-size:.8rem;color:var(--text-muted);font-weight:500}.responses-class-subsection-header{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-bottom:8px;border-bottom:1px solid var(--border);margin-bottom:10px}.responses-class-subsection-header .file-sort-toggle{margin-left:auto}.class-rank-controls .file-sort-toggle{margin-left:0}.class-toolbar{display:flex;align-items:center;gap:16px;padding:10px 16px;background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-wrap:wrap}.toolbar-group{display:flex;align-items:center;gap:10px}.toolbar-separator{width:1px;height:28px;background:var(--border);flex-shrink:0}.toolbar-group-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);white-space:nowrap}.toolbar-toggle-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-hover);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-main);font-size:.82rem;font-weight:500;cursor:pointer;transition:var(--transition);white-space:nowrap}.toolbar-toggle-btn:hover{background:var(--bg-card);border-color:var(--border-light)}.toolbar-icon{opacity:.7;flex-shrink:0}.toolbar-chevron{opacity:.5;flex-shrink:0;margin-left:2px}.toolbar-toggle-label{line-height:1}.toolbar-pill-group{display:flex;align-items:center;gap:8px}.toolbar-pills{display:flex;align-items:center;gap:4px;padding:3px;background:var(--bg-muted);border:1px solid var(--border);border-radius:var(--radius-sm)}.toolbar-pill{padding:5px 10px;font-size:.75rem;font-weight:600;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;transition:var(--transition);white-space:nowrap}.toolbar-pill:hover{color:var(--text-main);background:#ffffff14}.toolbar-pill.is-active{background:var(--bg-card);color:var(--text-main);box-shadow:0 1px 3px #00000026}.toolbar-group-display .toolbar-pill{border:1px solid transparent}.toolbar-group-display .toolbar-pill.is-active.toolbar-pill-grade{background:#ffe7ba40;border-color:#f0b75f80;color:#d4a050}.toolbar-group-display .toolbar-pill.is-active.toolbar-pill-mark{background:#bef4dc33;border-color:#58cca080;color:#4eca9a}.toolbar-group-display .toolbar-pill.is-active.toolbar-pill-percentage{background:#ffe2c54d;border-color:#f59e0b73;color:#f59e0b}.toolbar-group-display .toolbar-pill.is-active.toolbar-pill-level{background:#c7e0ff33;border-color:#6ca1dc80;color:#7cb3e8}:root[data-theme=light] .class-toolbar{background:#ffffffd9;border-color:var(--border)}:root[data-theme=light] .toolbar-toggle-btn{background:#ffffffe6}:root[data-theme=light] .toolbar-toggle-btn:hover{background:#fff}:root[data-theme=light] .toolbar-pills{background:#f0f4fae6}:root[data-theme=light] .toolbar-pill:hover{background:#0000000a}:root[data-theme=light] .toolbar-pill.is-active{background:#fff;box-shadow:0 1px 3px #0000001a}:root[data-theme=light] .toolbar-group-display .toolbar-pill.is-active.toolbar-pill-grade{background:#ffe7ba99;color:#8a5a10}:root[data-theme=light] .toolbar-group-display .toolbar-pill.is-active.toolbar-pill-mark{background:#bef4dc8c;color:#1a7a50}:root[data-theme=light] .toolbar-group-display .toolbar-pill.is-active.toolbar-pill-percentage{background:#ffe2c599;color:#a16100}:root[data-theme=light] .toolbar-group-display .toolbar-pill.is-active.toolbar-pill-level{background:#c7e0ff99;color:#305580}.toolbar-pill.is-disabled{opacity:.4;cursor:not-allowed}.toolbar-action-btn{padding:8px 16px;border-radius:999px;font-weight:600;letter-spacing:.01em;background:var(--bg-card);border:1px solid var(--border);box-shadow:0 3px 10px #0f172a14}.toolbar-action-btn:hover{background:var(--bg-hover);border-color:var(--border-light);transform:translateY(-1px)}.class-rank-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.rank-toggle-pill{background:linear-gradient(135deg,#22c55ee6,#0ea5e9e6);color:#0b1f2a;border:1px solid rgba(14,165,233,.45);border-radius:999px;font-weight:700;padding:8px 16px}.rank-toggle-pill:hover{filter:brightness(1.05)}.classes-add-student-btn{display:inline-flex;align-items:center;gap:10px;padding:10px 18px 10px 12px;font-size:.9rem;font-weight:600;border-radius:999px;background:linear-gradient(135deg,#38bdf8,#0ea5e9);border:none;color:#fff;box-shadow:0 4px 12px #0ea5e94d;transition:all .2s ease}.classes-add-student-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px #0ea5e966;background:linear-gradient(135deg,#0ea5e9,#0284c7)}.classes-add-student-btn .btn-icon-circle{width:32px;height:32px;border-radius:50%;background:#ffffff40;display:flex;align-items:center;justify-content:center;flex-shrink:0}.classes-add-student-btn .btn-icon-circle img{filter:brightness(0) invert(1)}.classes-upload-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:18px}.classes-upload-actions{justify-content:flex-start;gap:12px;flex-wrap:wrap}.classes-upload-actions .btn-primary{margin-right:0}.classes-upload-single{padding:12px 24px;font-size:1rem;font-weight:500;border:none}.classes-uploaded-documents{display:flex;flex-direction:column;gap:18px}.classes-layout .pdf-organiser-page{flex:0 0 auto;height:auto}.responses-page.is-class-detail .classes-uploaded-documents,.responses-page.is-class-detail .classes-tiles{display:none}.responses-page.is-class-detail{gap:12px;padding-top:12px}.responses-page.is-class-detail .classes-detail{padding-top:0}.responses-page.is-class-detail .responses-class-detail-header{margin-top:0}.responses-class-detail-header{display:flex;justify-content:center;padding:0}.class-detail-title{font-size:1.6rem;font-weight:700;letter-spacing:.01em;text-align:center}.folder-front-label{display:none}.responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon) .folder-front-label{display:block}.responses-page.is-class-detail #responses-class-files-list .history-item{background:var(--bg-card);border:1px solid var(--border)}.responses-page.is-class-detail #responses-class-files-list .history-item:hover{background:var(--bg-hover)}.responses-page.is-class-detail #responses-class-files-list .history-item.is-selected{border-color:var(--primary);background:#38bdf829}.responses-page.is-class-detail .responses-class-subsection,.responses-class-subsection{padding:16px;border-radius:20px}.responses-page.is-class-detail .responses-class-subsection .responses-folder-grid,.responses-class-subsection .responses-folder-grid{gap:16px}.responses-page.is-class-detail .responses-class-subsection .folder-tile,.responses-class-subsection .folder-tile{display:flex;align-items:stretch;padding:12px;min-height:84px;gap:12px;background:linear-gradient(155deg,#ffffff29,#ffffff0d);border:1px solid rgba(148,163,184,.45);box-shadow:0 18px 30px #0f172a14}.responses-page.is-class-detail .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon),.responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon){width:72px;height:62px;border-radius:14px 14px 10px 10px;background:linear-gradient(155deg,#fff9,#ffffff3d);border:1px solid rgba(148,163,184,.55);position:relative;display:flex;flex-direction:column;justify-content:flex-end;overflow:visible;box-shadow:inset 0 2px 4px #ffffff94,0 6px 16px #0f172a2e;flex:0 0 auto;transition:transform .18s ease,box-shadow .18s ease;padding:0 7px 8px}.responses-page.is-class-detail .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon) .folder-front-label,.responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon) .folder-front-label{position:relative;display:block;color:var(--text-main);font-size:.62rem;font-weight:600;line-height:1.08;text-align:center;letter-spacing:-.01em;overflow-wrap:anywhere;margin-top:auto;white-space:normal;max-height:none;text-shadow:0 1px 0 rgba(255,255,255,.45);padding:0 3px;word-break:break-word;overflow:visible}.responses-page.is-class-detail .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon):before,.responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon):before{content:"";position:absolute;top:-6px;left:16px;right:16px;height:14px;border-radius:0 0 12px 12px;background:linear-gradient(to bottom,#94a3b8d9,#94a3b838);border:1px solid rgba(96,112,128,.45);border-bottom:none}.responses-page.is-class-detail .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon):after,.responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon):after{content:"";position:absolute;inset:7px 18px auto 18px;height:18px;border-radius:18px 18px 12px 12px;background:#ffffff59;border:1px solid rgba(148,163,184,.42);border-top:none}.responses-page.is-class-detail .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon) img,.responses-page.is-class-detail .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon) svg,.responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon) img,.responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon) svg{display:none}.responses-page.is-class-detail .folder-icon-new .folder-front-label{display:none}.responses-page.is-class-detail .responses-class-subsection .folder-tile:hover .folder-icon:not(.folder-icon-new):not(.class-folder-icon),.responses-class-subsection .folder-tile:hover .folder-icon:not(.folder-icon-new):not(.class-folder-icon){transform:translateY(-2px) rotateX(5deg) rotateY(-4deg);box-shadow:0 16px 24px #0f172a40}.responses-page.is-class-detail .folder-tile-body,.responses-class-subsection .folder-tile-body{min-width:0;flex:1}.responses-page.is-class-detail .folder-tile-name,.responses-class-subsection .folder-tile-name{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}:root[data-theme=dark] .responses-page.is-class-detail .responses-class-subsection .folder-tile,:root[data-theme=dark] .responses-class-subsection .folder-tile,:root[data-theme=sepia-light] .responses-page.is-class-detail .responses-class-subsection .folder-tile,:root[data-theme=sepia-light] .responses-class-subsection .folder-tile,:root[data-theme=sepia-dark] .responses-page.is-class-detail .responses-class-subsection .folder-tile,:root[data-theme=sepia-dark] .responses-class-subsection .folder-tile{background:linear-gradient(155deg,#1e293b8c,#0f172a61);border-color:var(--border)}:root[data-theme=dark] .responses-page.is-class-detail .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon),:root[data-theme=dark] .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon),:root[data-theme=sepia-light] .responses-page.is-class-detail .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon),:root[data-theme=sepia-light] .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon),:root[data-theme=sepia-dark] .responses-page.is-class-detail .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon),:root[data-theme=sepia-dark] .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon){background:linear-gradient(155deg,#1e293b94,#1e293b66);border-color:var(--border);box-shadow:inset 0 2px 4px #94a3b814,0 6px 16px #0206176b}:root[data-theme=dark] .responses-page.is-class-detail .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon) .folder-front-label,:root[data-theme=dark] .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon) .folder-front-label{color:#f8fafc;text-shadow:0 1px 0 rgba(2,6,23,.4)}:root[data-theme=sepia-light] .responses-page.is-class-detail .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon) .folder-front-label,:root[data-theme=sepia-light] .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon) .folder-front-label{color:#1f2937;text-shadow:0 1px 0 rgba(255,255,255,.38)}:root[data-theme=sepia-dark] .responses-page.is-class-detail .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon) .folder-front-label,:root[data-theme=sepia-dark] .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon) .folder-front-label{color:#f5ebe5;text-shadow:0 1px 0 rgba(26,32,44,.45)}:root[data-theme=dark] .responses-page.is-class-detail .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon):before,:root[data-theme=dark] .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon):before,:root[data-theme=sepia-light] .responses-page.is-class-detail .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon):before,:root[data-theme=sepia-light] .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon):before,:root[data-theme=sepia-dark] .responses-page.is-class-detail .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon):before,:root[data-theme=sepia-dark] .responses-class-subsection .folder-icon:not(.folder-icon-new):not(.class-folder-icon):before{background:linear-gradient(to bottom,#60a5fab3,#60a5fa59);border-color:#94a3b880}.responses-page.is-class-detail #responses-class-students-list{margin-top:6px}.responses-page.is-class-detail #responses-class-students-list .history-item{background:var(--bg-card);border:1px solid var(--border);padding:10px 14px}.responses-page.is-class-detail #responses-class-students-list .history-item:hover{background:var(--bg-hover);border-color:var(--border-light)}.responses-page.is-class-detail #responses-class-students-list .history-file-row{color:var(--text-main);font-weight:600}.responses-page.classes-layout .file-status{background:var(--bg-hover);border-color:var(--border-light);color:var(--text-muted)}.student-matrix-wrap{background:var(--glass);border:1px solid var(--glass-border);border-radius:24px;padding:12px;overflow-x:auto;box-shadow:var(--shadow-soft)}.student-matrix{display:grid;grid-template-columns:minmax(200px,max-content) repeat(var(--folder-count),minmax(150px,max-content)) minmax(140px,max-content);gap:0;min-width:max-content;border:1px solid rgba(196,211,230,.5);border-radius:12px;overflow:hidden}.student-matrix-cell{position:relative;background:#ffffffbf;border-right:1px dotted rgba(196,211,230,.4);border-bottom:1px dotted rgba(196,211,230,.4);border-radius:0;padding:12px;min-height:60px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;transition:var(--transition);animation:studentMatrixReveal .45s ease both;animation-delay:calc(var(--reveal-index, 0) * 12ms)}.student-matrix-cell:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(140deg,rgba(255,255,255,.05),transparent 55%);opacity:0;pointer-events:none;transition:var(--transition)}.student-matrix-cell:hover:after{opacity:1}.student-matrix-heading{background:linear-gradient(145deg,#dceefff2,#c8e6ffd9);border-color:#adcdebe6;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:600;color:#1f2a3d;text-align:center}.student-matrix-heading-btn{cursor:pointer;transition:all .15s ease;position:relative}.student-matrix-heading-btn:hover{background:linear-gradient(145deg,#c8e6fff2,#b4dcffe6);border-color:#96bee6f2}.student-matrix-heading-btn:active{transform:scale(.96) translateY(1px);box-shadow:inset 0 2px 4px #0000001a;background:linear-gradient(145deg,#bedcfaf2,#aad2f5e6)}.student-matrix-add-folder,.student-matrix-add-student{background:linear-gradient(145deg,#d6f6eef2,#beebdee6);border-color:#78c8af99;color:#0f3c2f;font-weight:600;letter-spacing:.04em;text-transform:uppercase;gap:6px}.student-matrix-add-folder{font-size:.85rem;letter-spacing:.06em;line-height:1}.student-matrix-add-student{align-items:center;justify-content:center;text-align:center}.student-matrix-add-folder:hover,.student-matrix-add-student:hover{background:linear-gradient(145deg,#c8ece4fa,#aae0d0f2);border-color:#60b096b3}.student-matrix-add-placeholder{background:#e9f1f873;border-color:#c4d3e659;box-shadow:none}.student-matrix-corner{text-transform:none;letter-spacing:.02em;gap:8px;position:sticky;left:0;z-index:3;box-shadow:10px 0 18px #0f172a1f}.student-matrix-title{font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.student-matrix-subtitle{font-size:.72rem;color:var(--text-muted);letter-spacing:.04em}.student-matrix-student{background:linear-gradient(135deg,#fffffff2,#f8fafce6);border-color:#becce0cc;position:sticky;left:0;z-index:2;box-shadow:10px 0 18px #0f172a1a;flex-direction:row;align-items:center;justify-content:flex-start;text-align:left;gap:12px;padding:10px 14px;cursor:pointer;transition:all .2s ease}.student-matrix-student:hover{background:linear-gradient(135deg,#f0f8fffa,#e6f4fff2);transform:translate(2px)}.student-matrix-rank-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:42px;height:42px;border-radius:12px;background:linear-gradient(145deg,#f1f5f9,#e2e8f0);border:1px solid rgba(148,163,184,.4);position:relative;flex-shrink:0;transition:all .2s ease}.student-matrix-rank-badge.is-up{background:linear-gradient(145deg,#dcfce7e6,#bbf7d0cc);border-color:#22c55e80}.student-matrix-rank-badge.is-down{background:linear-gradient(145deg,#fee2e2e6,#fecacacc);border-color:#ef444480}.student-matrix-rank-badge.is-same{background:linear-gradient(145deg,#f1f5f9f2,#e2e8f0e6);border-color:#94a3b880}.rank-badge-number{font-size:1.1rem;font-weight:700;color:#1e293b;line-height:1}.student-matrix-rank-badge.is-up .rank-badge-number{color:#166534}.student-matrix-rank-badge.is-down .rank-badge-number{color:#991b1b}.student-matrix-rank-badge.is-same .rank-badge-number{color:#475569}.rank-badge-movement{position:absolute;bottom:-4px;right:-4px;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;border:2px solid;box-shadow:0 2px 4px #0000001a}.student-matrix-rank-badge.is-up .rank-badge-movement{border-color:#22c55e;color:#22c55e}.student-matrix-rank-badge.is-down .rank-badge-movement{border-color:#ef4444;color:#ef4444}.student-matrix-rank-badge.is-same .rank-badge-movement{border-color:#94a3b8;color:#94a3b8}.rank-badge-movement svg{display:block}.student-matrix-info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.student-matrix-name{font-size:.95rem;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-matrix-score-meta{display:flex;align-items:center;gap:4px}.score-meta-value{font-size:.85rem;font-weight:700;color:#3b82f6}.score-meta-label{font-size:.7rem;font-weight:500;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em}.student-matrix-rank{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#6c7a91;display:inline-flex;align-items:center;gap:6px}.student-matrix-rank strong{color:#1f2a3d;font-weight:700}.student-matrix-rank-move{font-weight:700;font-size:.8rem}.student-matrix-rank-move.is-up{color:#16a34a}.student-matrix-rank-move.is-down{color:#dc2626}.student-matrix-rank-move.is-same{color:#64748b}.student-matrix-meta{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#6c7a91}.student-matrix-score{display:flex;flex-direction:row;align-items:center;justify-content:center;width:100%;padding:0;min-height:unset;gap:6px;background:transparent;border:none}.student-matrix-score.is-empty{background:transparent;border:none;box-shadow:none}.student-matrix-score.is-pending,.student-matrix-score.is-marked{background:transparent;border:none}.student-matrix-pending{font-size:.7rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;padding:4px 10px;background:#94a3b81a;border-radius:999px;border:1px solid rgba(148,163,184,.25)}.student-matrix-status-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;border:1px solid rgba(148,163,184,.35);background:#94a3b81f;cursor:pointer;transition:var(--transition)}.student-matrix-status-pill.is-unmarked{border-style:dotted;border-color:#94a3b899;background:transparent}.student-matrix-status-text{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#6c7a91;white-space:nowrap}.student-matrix-status-pill:hover{border-color:#38bdf899;background:#38bdf81f}.student-matrix-status-pill:focus-visible{outline:2px solid rgba(56,189,248,.5);outline-offset:2px}.student-matrix-status-pill .file-status{width:18px;height:18px;border-radius:999px;font-size:.6rem;line-height:1}.student-matrix-tiles{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;padding:0;background:transparent;border:none;width:100%}.student-matrix-pill{min-width:26px;height:auto;padding:3px 8px;border-radius:999px;border:1px solid rgba(196,211,230,.9);background:#ffffffe6;color:#1f2a3d;display:inline-flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:600;letter-spacing:.02em;line-height:1.2;flex-shrink:0}.student-matrix-heading,.student-matrix-student{background:linear-gradient(145deg,#f0f8fff2,#e6f2ffe6);border-color:#c4d3e6cc;box-shadow:none}.student-matrix-average{background:linear-gradient(145deg,#ecf2fcf2,#e0ebfae6);border-color:#b6c8e0d9}.student-matrix-pill.is-empty{color:#6c7a91;border-style:dashed;background:transparent}.student-matrix-pill.is-grade{background:#ffe7bae6;border-color:#f0b75fe6;color:#7a4b00}.student-matrix-pill.is-mark{background:#bef4dce6;border-color:#58cca0d9;color:#0f5a3a}.student-matrix-pill.is-level{background:#c7e0ffe6;border-color:#6ca1dcd9;color:#20456f}.student-matrix-pill.is-percentage{background:#ffe2c5e6;border-color:#f59e0bbf;color:#92400e}.matrix-key-legend{display:flex;align-items:center;gap:8px;margin-left:0}.rank-mode-legend{display:flex;align-items:center;gap:6px;margin-left:auto}.rank-mode-label{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.rank-mode-pill{border:1px solid var(--border);border-radius:999px;padding:6px 12px;font-size:.78rem;font-weight:600;background:#ffffffb3;color:#1f2a3d;cursor:pointer;transition:var(--transition)}.rank-mode-pill.is-active{background:#38bdf833;border-color:#38bdf899;color:#0b4a6b}.rank-mode-pill:hover{transform:translateY(-1px)}.matrix-key-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;font-size:.9rem;font-weight:600;letter-spacing:.02em;border:1px solid;cursor:pointer;transition:all .2s ease;opacity:.5;box-shadow:0 2px 8px #00000014}.matrix-key-pill.is-active{opacity:1;box-shadow:0 4px 12px #0000001f}.matrix-key-pill:hover{transform:translateY(-1px)}.matrix-key-pill.is-grade{background:#ffe7bae6;border-color:#f0b75fe6;color:#7a4b00}.matrix-key-pill.is-mark{background:#bef4dce6;border-color:#58cca0d9;color:#0f5a3a}.matrix-key-pill.is-level{background:#c7e0ffe6;border-color:#6ca1dcd9;color:#20456f}.matrix-key-pill.is-percentage{background:#ffe2c5e6;border-color:#f59e0bbf;color:#92400e}@media(max-width:640px){.class-toolbar{gap:10px;padding:8px 12px}.toolbar-separator{display:none}.toolbar-group{flex-wrap:wrap;gap:6px}.toolbar-group-label{width:100%;margin-bottom:2px}}.student-matrix-wrap[data-hide-grade] .student-matrix-pill.is-grade,.student-matrix-wrap[data-hide-mark] .student-matrix-pill.is-mark,.student-matrix-wrap[data-hide-level] .student-matrix-pill.is-level,.student-matrix-wrap[data-hide-percentage] .student-matrix-pill.is-percentage{display:none}:root[data-theme=dark] .classes-tiles,:root[data-theme=dark] .responses-class-subsection,:root[data-theme=dark] .student-matrix-wrap{background:var(--bg-card);border-color:var(--border)}:root[data-theme=dark] .student-matrix-cell{background:var(--bg-card);border-color:var(--border)}:root[data-theme=dark] .student-matrix-heading{background:var(--bg-hover);border-color:var(--border-light);color:var(--text-main)}:root[data-theme=dark] .student-matrix-student{background:linear-gradient(135deg,var(--bg-hover),var(--bg-card));border-color:var(--border-light)}:root[data-theme=dark] .student-matrix-student:hover{background:linear-gradient(135deg,var(--bg-card),rgba(56,189,248,.08))}:root[data-theme=dark] .student-matrix-rank-badge{background:linear-gradient(145deg,var(--bg-card),var(--bg-hover));border-color:var(--border-light)}:root[data-theme=dark] .student-matrix-rank-badge.is-up{background:linear-gradient(145deg,#1665344d,#16a34a33);border-color:#22c55e80}:root[data-theme=dark] .student-matrix-rank-badge.is-down{background:linear-gradient(145deg,#7f1d1d4d,#b91c1c33);border-color:#ef444480}:root[data-theme=dark] .student-matrix-rank-badge.is-same{background:linear-gradient(145deg,var(--bg-card),var(--bg-hover));border-color:var(--border-light)}:root[data-theme=dark] .rank-badge-number{color:var(--text-main)}:root[data-theme=dark] .student-matrix-rank-badge.is-up .rank-badge-number{color:#4ade80}:root[data-theme=dark] .student-matrix-rank-badge.is-down .rank-badge-number{color:#f87171}:root[data-theme=dark] .student-matrix-rank-badge.is-same .rank-badge-number{color:var(--text-muted)}:root[data-theme=dark] .rank-badge-movement{background:var(--bg-card)}:root[data-theme=dark] .student-matrix-rank-badge.is-up .rank-badge-movement{border-color:#4ade80;color:#4ade80}:root[data-theme=dark] .student-matrix-rank-badge.is-down .rank-badge-movement{border-color:#f87171;color:#f87171}:root[data-theme=dark] .student-matrix-rank-badge.is-same .rank-badge-movement{border-color:var(--border-light);color:var(--text-muted)}:root[data-theme=dark] .score-meta-value{color:#60a5fa}:root[data-theme=dark] .score-meta-label{color:var(--text-muted)}:root[data-theme=dark] .student-matrix-add-folder,:root[data-theme=dark] .student-matrix-add-student{background:#14534659;border-color:#2dd4bf59;color:var(--text-main)}:root[data-theme=dark] .student-matrix-add-placeholder{background:#0f172a59;border-color:#94a3b833}:root[data-theme=dark] .student-matrix-name{color:var(--text-main)}:root[data-theme=dark] .student-matrix-rank{color:var(--text-muted)}:root[data-theme=dark] .student-matrix-rank strong{color:var(--text-main)}:root[data-theme=dark] .student-matrix-meta,:root[data-theme=dark] .student-matrix-pending{color:var(--text-muted)}:root[data-theme=dark] .student-matrix-status-pill{border-color:#94a3b859;background:#1e293b99}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .student-matrix-wrap{background:var(--bg-card);border-color:var(--border)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .student-matrix-cell{background:var(--bg-card);border-color:var(--border-light)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .student-matrix-heading{background:var(--bg-hover);color:var(--text-main);border-color:var(--border)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .student-matrix-student{background:var(--bg-card-strong);color:var(--text-main);border-color:var(--border-light)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .student-matrix-student:hover{background:var(--bg-hover)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .student-matrix-rank-badge{background:var(--bg-muted);border-color:var(--border)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .rank-badge-number{color:var(--text-main)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .student-matrix-name{color:var(--text-main)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .score-meta-value{color:var(--primary)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .score-meta-label{color:var(--text-muted)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .student-matrix-add-folder,:is([data-theme=sepia-light],[data-theme=sepia-dark]) .student-matrix-add-student{background:var(--bg-hover);border-color:var(--border);color:var(--text-main)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .student-matrix-add-placeholder{background:var(--bg-dark);border-color:var(--border)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .student-matrix-status-pill{background:var(--bg-muted);border-color:var(--border);color:var(--text-muted)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .class-action-pill{background:linear-gradient(135deg,#38bdf81a,#0ea5e90d);border-color:#38bdf859;color:var(--text-main)}:is([data-theme=sepia-light],[data-theme=sepia-dark]) .class-action-pill:hover{background:linear-gradient(135deg,#38bdf82e,#0ea5e91a);border-color:#38bdf873}:root[data-theme=dark] .student-matrix-status-pill:hover{border-color:#38bdf8a6;background:#38bdf829}:root[data-theme=dark] .student-matrix-tiles{background:var(--bg-card);border-color:var(--border)}:root[data-theme=dark] .student-matrix-pill{background:var(--bg-card);border-color:var(--border-light);color:var(--text-main)}:root[data-theme=dark] .student-matrix-pill.is-grade,:root[data-theme=dark] .student-matrix-pill.is-mark,:root[data-theme=dark] .student-matrix-pill.is-level{color:var(--text-main)}:root[data-theme=dark] .matrix-key-pill{background:var(--bg-card);border-color:var(--border-light);color:var(--text-main)}:root[data-theme=dark] .rank-mode-label{color:var(--text-muted)}:root[data-theme=dark] .rank-mode-pill{background:var(--bg-card);border-color:var(--border-light);color:var(--text-main)}:root[data-theme=dark] .rank-mode-pill.is-active{background:#38bdf833;border-color:#38bdf899;color:var(--text-main)}:root[data-theme=dark] .rank-toggle-pill{color:#f8fafc}:root[data-theme=dark] .matrix-key-pill.is-grade,:root[data-theme=dark] .matrix-key-pill.is-mark,:root[data-theme=dark] .matrix-key-pill.is-level{color:var(--text-main)}@keyframes studentMatrixReveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.responses-page.classes-layout{flex-direction:column}.classes-menu{width:100%;max-width:none}.class-analytics-hero{flex-direction:column;align-items:flex-start}.class-analytics-hero-side{width:100%;align-items:flex-start}.class-analytics-tags,.class-analytics-actions{justify-content:flex-start}.class-analytics-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.class-analytics-panels,.class-analytics-panels--compact{grid-template-columns:1fr}.class-analytics-panel--wide{grid-column:span 1}.class-analytics-actions{margin-top:14px}.class-action-pill{font-size:.8rem;padding:6px 14px 6px 6px}.action-pill-icon{width:28px;height:28px}.action-pill-icon svg{width:14px;height:14px}.student-matrix{grid-template-columns:minmax(180px,max-content) repeat(var(--folder-count),minmax(130px,max-content)) minmax(120px,max-content)}.student-matrix-cell{min-height:52px;padding:8px 10px}.student-matrix-name{font-size:.88rem}.student-matrix-rank-badge{min-width:36px;height:36px;border-radius:10px}.rank-badge-number{font-size:.95rem}.rank-badge-movement{width:16px;height:16px;bottom:-3px;right:-3px}.rank-badge-movement svg{width:8px;height:8px}.student-matrix-pill{min-width:28px;height:auto;padding:3px 7px;font-size:.65rem;line-height:1.2}}@media(max-width:600px){.class-analytics-score-ring{width:120px;height:120px}.class-analytics-kpis{grid-template-columns:1fr}.class-insights-list{gap:8px}.class-insight-icon{width:28px;height:28px;font-size:.9rem}.student-matrix-wrap{padding:10px;border-radius:14px}.student-matrix{grid-template-columns:minmax(160px,max-content) repeat(var(--folder-count),minmax(120px,max-content)) minmax(110px,max-content);gap:10px}.student-matrix-heading{font-size:.65rem}.student-matrix-student{gap:8px;padding:8px 10px}.student-matrix-rank-badge{min-width:32px;height:32px;border-radius:8px}.rank-badge-number{font-size:.85rem}.rank-badge-movement{width:14px;height:14px;bottom:-2px;right:-2px}.rank-badge-movement svg{width:7px;height:7px}.student-matrix-name{font-size:.82rem}.score-meta-value{font-size:.78rem}.score-meta-label{font-size:.62rem}}.class-analytics-v2{display:flex;flex-direction:column;gap:16px;--analytics-ink: var(--text-main);--analytics-muted: var(--text-muted);--analytics-primary: var(--primary);--analytics-primary-soft: var(--primary-alpha, rgba(56, 189, 248, .22));--analytics-surface: linear-gradient(145deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .01));--analytics-surface-soft: linear-gradient(145deg, var(--analytics-primary-soft), rgba(255, 255, 255, .02));--analytics-line: var(--analytics-primary-soft);--analytics-line-soft: var(--analytics-primary-soft);background:linear-gradient(132deg,var(--analytics-primary-soft),transparent 60%);border:1px solid var(--analytics-line);border-radius:22px;padding:14px}.class-analytics-v2-layout{display:grid;gap:14px;grid-template-columns:repeat(12,minmax(0,1fr))}.class-analytics-v2-card{position:relative;border-radius:20px;border:1px solid var(--analytics-line);background:var(--analytics-surface),linear-gradient(130deg,var(--analytics-primary-soft),transparent 72%),var(--glass);box-shadow:var(--shadow-soft);padding:18px;overflow:hidden;min-height:120px;transition:transform .18s ease,border-color .22s ease,box-shadow .22s ease}.class-analytics-v2-card:before{content:"";position:absolute;inset:-120px auto auto -100px;width:220px;height:220px;background:radial-gradient(circle,var(--analytics-primary-soft),transparent 62%);pointer-events:none}.class-analytics-v2-card:after{content:"";position:absolute;top:-40%;right:-40%;bottom:-40%;left:-40%;background:linear-gradient(110deg,transparent 42%,rgba(255,255,255,.34) 50%,transparent 58%);transform:translate(-120%);transition:transform .72s cubic-bezier(.2,.7,.2,1);pointer-events:none;opacity:.65}.class-analytics-v2-card:hover{transform:translateY(-1px);border-color:var(--analytics-primary);box-shadow:0 14px 30px var(--analytics-primary-soft),var(--shadow-soft)}.class-analytics-v2-card:hover:after{transform:translate(120%)}.class-analytics-v2-card--overview{grid-column:span 12}.class-analytics-v2-card--distribution{grid-column:span 5}.class-analytics-v2-card--trend{grid-column:span 7}.class-analytics-v2-card--priority,.class-analytics-v2-card--student-grades{grid-column:span 6}.class-analytics-v2-header{display:flex;flex-direction:column;gap:4px;margin-bottom:14px;position:relative;z-index:1}.class-analytics-v2-header h3{margin:0;font-size:1rem;font-weight:650;letter-spacing:-.01em;color:var(--text-main)}.class-analytics-v2-header p{margin:0;font-size:.79rem;color:var(--text-muted)}.class-analytics-v2-stats{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));position:relative;z-index:1}.class-analytics-v2-stat{border-radius:14px;border:1px solid var(--analytics-line-soft);background:var(--analytics-surface-soft);padding:12px;display:flex;flex-direction:column;gap:4px}.class-analytics-v2-stat-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.11em;color:var(--text-muted);font-weight:650}.class-analytics-v2-stat strong{font-size:1.35rem;line-height:1.1;color:var(--text-main);letter-spacing:-.01em}.class-analytics-v2-stat-meta{font-size:.76rem;color:var(--text-muted);line-height:1.3}.class-grade-distribution--v2{display:flex;flex-direction:column;gap:9px;position:relative;z-index:1}.class-grade-row{display:grid;grid-template-columns:46px 1fr auto;gap:10px;align-items:center;opacity:0;animation:analyticsFadeIn .35s ease forwards;animation-delay:var(--anim-delay, 0ms)}.class-grade-row-grade{font-size:.82rem;font-weight:700;color:var(--text-main)}.class-grade-row-track{height:10px;border-radius:999px;background:linear-gradient(90deg,var(--analytics-primary-soft),rgba(255,255,255,.05));overflow:hidden;border:1px solid var(--analytics-line)}.class-grade-row-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--analytics-primary) 0%,var(--analytics-primary) 100%);box-shadow:0 0 14px var(--analytics-primary-soft)}.class-grade-row-count{font-size:.78rem;color:var(--analytics-muted);font-weight:600}.class-analytics-trend{position:relative;z-index:1}.class-trend-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;align-items:end;min-height:150px}.class-trend-col{display:flex;flex-direction:column;gap:6px;align-items:center}.class-trend-bar-wrap{width:100%;height:124px;border-radius:14px;border:1px solid var(--analytics-line);background:linear-gradient(180deg,var(--analytics-primary-soft),rgba(255,255,255,.04));display:flex;align-items:flex-end;justify-content:center;padding:8px}.class-trend-bar{width:100%;border-radius:10px;background:linear-gradient(180deg,var(--analytics-primary),rgba(255,255,255,.16));min-height:8%;transition:height .35s ease}.class-trend-bar.is-empty{background:linear-gradient(180deg,var(--analytics-primary-soft),rgba(255,255,255,.06))}.class-trend-label{font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:650}.class-analytics-priority-list{display:flex;flex-direction:column;gap:8px;position:relative;z-index:1}.class-priority-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:13px;border:1px solid var(--analytics-line);background:linear-gradient(145deg,var(--analytics-primary-soft),rgba(255,255,255,.04));opacity:0;animation:analyticsFadeIn .35s ease forwards;animation-delay:var(--anim-delay, 0ms)}.class-priority-body{display:flex;flex-direction:column;gap:3px;min-width:0}.class-priority-name{font-size:.84rem;font-weight:620;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.class-priority-meta{font-size:.74rem;color:var(--text-muted)}.class-priority-badge{flex-shrink:0;font-size:.74rem;font-weight:700;color:var(--text-main);border-radius:999px;padding:5px 10px;border:1px solid var(--analytics-line);background:linear-gradient(135deg,var(--analytics-primary-soft),rgba(255,255,255,.06))}.class-student-grade-list{display:flex;flex-direction:column;gap:10px;max-height:292px;overflow-y:auto;padding-right:4px;position:relative;z-index:1}.class-student-grade-list::-webkit-scrollbar{width:8px}.class-student-grade-list::-webkit-scrollbar-thumb{background:var(--analytics-primary-soft);border-radius:999px}.class-student-grade-row{border:1px solid var(--analytics-line);border-radius:13px;background:linear-gradient(145deg,var(--analytics-primary-soft),rgba(255,255,255,.04));padding:10px;display:flex;flex-direction:column;gap:8px;opacity:0;animation:analyticsFadeIn .35s ease forwards;animation-delay:var(--anim-delay, 0ms)}.class-student-grade-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.class-student-grade-name{font-size:.82rem;font-weight:650;color:var(--analytics-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.class-student-grade-total{flex-shrink:0;border-radius:999px;border:1px solid var(--analytics-line);background:linear-gradient(130deg,var(--analytics-primary-soft),rgba(255,255,255,.04));color:var(--analytics-ink);font-size:.68rem;font-weight:650;padding:3px 9px;letter-spacing:.04em;text-transform:uppercase}.class-student-grade-chips{display:flex;flex-wrap:wrap;gap:6px}.class-student-grade-chip,.class-student-grade-empty{border-radius:999px;border:1px solid var(--analytics-line);background:linear-gradient(120deg,var(--analytics-primary-soft),rgba(255,255,255,.06));color:var(--analytics-ink);font-size:.7rem;font-weight:620;padding:4px 9px}.class-student-grade-empty{color:var(--analytics-muted)}.class-analytics-coming-soon{margin:2px 4px 0;font-size:.78rem;color:var(--analytics-ink);background:linear-gradient(120deg,var(--analytics-primary-soft),rgba(255,255,255,.06));border:1px solid var(--analytics-line);border-radius:999px;display:inline-flex;align-self:flex-start;padding:6px 10px}@media(prefers-reduced-motion:reduce){.class-analytics-v2-card,.class-analytics-v2-card:after{transition:none}.class-analytics-v2-card:hover{transform:none}}@keyframes analyticsFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1080px){.class-analytics-v2-card--distribution,.class-analytics-v2-card--trend,.class-analytics-v2-card--priority,.class-analytics-v2-card--student-grades{grid-column:span 12}.class-analytics-v2-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.class-analytics-v2-stats{grid-template-columns:minmax(0,1fr)}.class-grade-row{grid-template-columns:40px 1fr auto}.class-trend-grid{gap:6px}}.sidebar-backdrop{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#0000004d;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:15;opacity:0;pointer-events:none;transition:opacity .3s ease}body:has(.app-sidebar.collapsed.collapsed-open) .sidebar-backdrop{display:block;opacity:1;pointer-events:auto}@media(max-width:600px){.app-container{flex-direction:row}.app-sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;max-width:80vw;z-index:999;transform:translate(-100%);transition:transform .3s ease;box-shadow:4px 0 12px #0000004d}.app-sidebar:not(.collapsed),.app-sidebar.collapsed.collapsed-open{transform:translate(0)}.app-sidebar:not(.collapsed)~.workspace .sidebar-backdrop,body:has(.app-sidebar:not(.collapsed)) .sidebar-backdrop,.app-sidebar.collapsed.collapsed-open~.workspace .sidebar-backdrop,body:has(.app-sidebar.collapsed.collapsed-open) .sidebar-backdrop{display:block;opacity:1;pointer-events:auto}.app-sidebar.collapsed:not(.collapsed-open){width:280px;transform:translate(-100%)}.app-sidebar.collapsed.collapsed-open .sidebar-nav,.app-sidebar.collapsed.collapsed-open .sidebar-footer{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important;position:static!important}.workspace{width:100%;margin-left:0}.app-header{padding:0 12px;height:56px}.header-title{font-size:1.5rem}.header-left{gap:8px;flex:1;min-width:0}.viewer-toggles{gap:4px;flex-wrap:wrap}.viewer-toggles .btn-secondary{padding:6px 8px;font-size:.8rem}.main-content{padding:12px}.split-view{flex-direction:column;padding:12px;gap:12px;min-height:0}.column-resizer{display:none}.panel{min-height:0}.workspace .split-view{height:100%;overflow:hidden}.workspace .split-view .panel{flex:1 1 auto!important;min-height:0;width:100%}.panel-header{height:44px;padding:0 12px}.panel-title{font-size:.85rem}#transcription-content{padding:16px;font-size:.95rem}.drop-content{padding:32px 24px;max-width:100%}.icon-circle{width:60px;height:60px}h3{font-size:1.25rem}.btn-primary{width:100%;padding:12px 20px}.card,.panel,.drop-content{border-radius:var(--radius-sm)}#view-home{padding:16px}table{display:block;overflow-x:auto;white-space:nowrap}.settings-container{padding:16px}.billing-card{padding:20px}.billing-title{font-size:1.5rem}.mark-controls,.mark-actions,.folder-marks-actions{gap:8px}}@media(min-width:601px)and (max-width:900px){.app-sidebar{position:fixed;top:0;left:0;bottom:0;width:260px;z-index:999;transform:translate(-100%);transition:transform .3s ease;box-shadow:4px 0 12px #0000004d}.app-sidebar:not(.collapsed),.app-sidebar.collapsed.collapsed-open{transform:translate(0)}.app-sidebar.collapsed:not(.collapsed-open){transform:translate(-100%)}.app-sidebar.collapsed.collapsed-open .sidebar-nav,.app-sidebar.collapsed.collapsed-open .sidebar-footer{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important;position:static!important}.app-sidebar:not(.collapsed)~.workspace .sidebar-backdrop,body:has(.app-sidebar:not(.collapsed)) .sidebar-backdrop,.app-sidebar.collapsed.collapsed-open~.workspace .sidebar-backdrop,body:has(.app-sidebar.collapsed.collapsed-open) .sidebar-backdrop{display:block;opacity:1;pointer-events:auto}.workspace{width:100%;margin-left:0}.app-header{padding:0 20px}.main-content{padding:16px}.split-view{padding:16px;gap:12px}.panel-header{padding:0 14px}#transcription-content{padding:20px}#view-home{padding:24px}}@media(min-width:901px){.app-container{flex-direction:row}.app-sidebar{position:relative;transform:none;box-shadow:none}.sidebar-backdrop{display:none}body:has(.app-sidebar.collapsed.collapsed-open) .sidebar-backdrop{display:block;opacity:1;pointer-events:auto}}@media(max-width:640px){.billing-card{padding:24px}.billing-title{font-size:1.6rem}}
