@tailwind base;@tailwind components;@tailwind utilities;body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}canvas{touch-action:none}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
:root{--dark-primary-bg:#0a0a1a;--dark-primary-text:#fff;--dark-secondary-text:#ccc;--dark-accent-text:#a3a3a3;--dark-interactive-elements:#0080ff;--dark-overlay-bg:#00000080;--light-primary-bg:#fcf7f7;--light-secondary-bg:#fefbfb;--light-primary-text:#000;--light-secondary-text:#1a1a1a;--light-tertiary-text:#b3b3b3;--light-accent-text:#d73114bb;--light-interactive-elements:#363636;--light-interactive-elements-hover:#cdd5cd;--light-interactive-text:#fff0f0;--light-overlay-bg:#ffffff80;--light-interactive-negative-elements:gray;--light-interactive-negative-elements-hover:#666;--borders-dividers:#e0e0e0;--default-padding:16px;--default-margin:16px;--default-mobile-padding:8px;--default-mobile-margin:8px;--default-border-radius:16px;--mild-border-radius:8px;--slight-border-radius:4px;--disabled-bg:#ccc;--disabled-text:#666;--heatmap-level-0:#eaedf0;--heatmap-level-1:#b8e58a;--heatmap-level-2:#99c171;--heatmap-level-3:#239023;--heatmap-level-4:#165f16;--subscription-price-color:#2c3e50;--subscription-discount-color:#27ae60;--whiteboard-toolbar-surface:#f7fbff;--whiteboard-toolbar-border:#dbeafe;--whiteboard-toolbar-accent:#2563eb;--whiteboard-toolbar-success:#16a34a;--marketing-bg:#0a0a1a;--marketing-text:#fff;--marketing-accent:#d4a574;--marketing-section-padding:80px;--accent:#d4a574;--accent-hover:#b8956a;--accent-subtle:#d4a5741a;--dark-primary-hover-bg:#20203c;--dark-primary-text-highlight:#fff;--sphere-line-color:#f0c878;--btn-primary-bg:#1a1a2e;--btn-primary-text:#fff;--btn-primary-hover:#2d2d44;--btn-secondary-bg:transparent;--btn-secondary-text:#1a1a2e;--btn-secondary-border:#1a1a2e;--btn-secondary-hover-bg:#1a1a2e1a;--btn-success-bg:#2d6a4f;--btn-success-text:#fff;--btn-success-hover:#1b4332;--btn-danger-bg:#dc3545;--btn-danger-text:#fff;--btn-danger-hover:#c82333;--btn-neutral-bg:#f5f5f5;--btn-neutral-text:#333;--btn-neutral-border:#ccc;--btn-neutral-hover:#e8e8e8;--btn-radius:8px;--btn-padding:12px 24px;--btn-padding-sm:8px 16px;--btn-padding-xs:6px 12px;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-2xl:32px;--fractals-bg:#0a0a0a;--fractals-surface:#151515;--fractals-accent:gold;--fractals-text:#fff;--fractals-text-muted:#888;--goals-primary:#2d6a4f;--goals-primary-dark:#1b4332;--goals-bg-selected:#f0fff4;--goals-border:#e0e0e0;--goals-text:#333;--goals-text-muted:#666;--goals-text-light:#999}[data-theme=pink]{--dark-primary-bg:#f7deeb;--dark-primary-text:#000;--dark-secondary-text:#222;--dark-accent-text:#444;--dark-primary-hover-bg:#eec4d9;--dark-primary-text-highlight:#000;--light-primary-bg:#faf4f7;--light-secondary-bg:#fcf8fa;--light-accent-text:#a32966;--light-interactive-elements-hover:#f0dbe6;--accent:#d92680;--accent-hover:#a82466;--accent-subtle:#d926801a;--sphere-line-color:#981b30;--btn-primary-bg:#b23473;--btn-primary-text:#fff;--btn-primary-hover:#862d59;--btn-secondary-bg:transparent;--btn-secondary-text:#9e2e66;--btn-secondary-border:#9e2e66;--btn-secondary-hover-bg:#b234731a;--btn-success-bg:#cc3380;--btn-success-text:#fff;--btn-success-hover:#9e2e66;--btn-danger-bg:#bd285a;--btn-danger-text:#fff;--btn-danger-hover:#8f2447;--btn-neutral-bg:#f6eef2;--btn-neutral-text:#73264d;--btn-neutral-border:#e0b8cc;--btn-neutral-hover:#eedde6;--heatmap-level-0:#f1eaed;--heatmap-level-1:#e3b5cc;--heatmap-level-2:#d279a6;--heatmap-level-3:#c63980;--heatmap-level-4:#a32966;--borders-dividers:#e4cdd9;--goals-primary:#c63980;--goals-primary-dark:#936;--goals-bg-selected:#f9ecf2;--whiteboard-toolbar-surface:#fbf8fa;--whiteboard-toolbar-border:#f0dbe6;--whiteboard-toolbar-accent:#cc3380;--whiteboard-toolbar-success:#b23473;--subscription-price-color:#73264d;--subscription-discount-color:#b82e73}
html,body{background-color:var(--dark-primary-bg);height:100%;color:var(--dark-primary-text);margin:0;padding:0;overflow:hidden}.app-container{flex-direction:row;width:100%;height:100vh;display:flex;overflow:hidden}
.nav-pane a:link,.nav-pane a:visited{color:var(--dark-primary-text);border-radius:var(--mild-border-radius);padding:8px 10px;text-decoration:none;display:block}.nav-pane a:hover,.nav-pane a:active{background-color:var(--dark-secondary-text);color:var(--dark-primary-text)}.nav-pane a.active-link{background-color:var(--dark-accent-text);color:var(--dark-primary-bg)}
.left-pane{background-color:var(--dark-primary-bg);color:var(--dark-primary-text);flex-direction:column;flex:0 0 16%;height:100%;padding:1rem 1rem 0;display:flex;overflow:hidden}.right-pane{background-color:var(--light-primary-bg);color:var(--light-primary-text);height:100%;padding:var(--default-padding);flex-direction:column;flex:1;display:flex;overflow-y:auto}.logo-container{text-align:center;width:100%;margin-bottom:1rem}.logo-img{max-width:80%;height:auto}.nav-pane{flex-direction:column;flex:1;align-items:flex-start;gap:.5rem;min-height:0;display:flex;overflow-y:auto}.nav-item{width:100%}.nav-link{color:var(--dark-primary-text);white-space:nowrap;border-radius:4px;padding:.5rem;text-decoration:none;display:block}.nav-link:hover,.active-link{background-color:var(--dark-primary-hover-bg);color:var(--dark-primary-text-highlight)}.dropdown-heading{color:var(--dark-primary-text);white-space:nowrap;cursor:pointer;border-radius:4px;justify-content:space-between;align-items:center;padding:.5rem;text-decoration:none;display:flex}.dropdown-heading:hover,.active-parent>.dropdown-heading{background-color:var(--dark-primary-hover-bg);color:var(--dark-primary-text-highlight)}.dropdown-content{border-left:none;flex-direction:column;gap:.25rem;margin-left:0;padding-left:.5rem;display:flex}.left-pane{transition:width .2s ease-out,flex-basis .2s ease-out}.left-pane.collapsed{flex:0 0 48px;width:48px;min-width:48px}.left-panel-content{flex-direction:row;flex:1;height:100%;min-height:0;display:flex}.nav-main-column{flex-direction:column;flex:1;min-width:0;height:100%;min-height:0;display:flex}.nav-collapse-column{flex-shrink:0;justify-content:center;align-items:center;width:32px;display:flex}.left-panel-content--collapsed{flex-direction:column;align-items:center;height:100%;display:flex}.left-panel-content--collapsed .nav-collapse-column{flex-direction:column;width:100%;height:100%;padding:8px 0;display:flex}.nav-sphere-wrapper{flex:1;justify-content:center;align-items:center;display:flex}.nav-collapse-toggle{border:1px solid var(--dark-primary-hover-bg);width:24px;height:24px;color:var(--dark-primary-text);cursor:pointer;opacity:.6;background:0 0;border-radius:6px;justify-content:center;align-items:center;transition:background-color .15s,transform .15s;display:flex}.nav-collapse-toggle:hover{background:var(--dark-primary-hover-bg);opacity:1;transform:scale(1.05)}.nav-collapse-icon{font-size:10px;line-height:1}.nav-sphere-mini{background:var(--dark-primary-bg);border:1px solid var(--dark-border);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:transform .15s,box-shadow .15s;display:flex}.nav-sphere-mini:hover{transform:scale(1.1);box-shadow:0 4px 12px #0000004d}.nav-settings-btn{border:1px solid var(--dark-primary-hover-bg);cursor:pointer;opacity:.7;background:#ffffff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:opacity .15s,transform .15s;display:flex}.nav-settings-btn:hover{opacity:1;transform:scale(1.1)}.nav-settings-btn img{filter:invert();opacity:.7}
.tags{justify-content:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}.tags li{color:#666;background-color:#f0f0f0;border-radius:3px;margin:0;padding:2px 6px;font-size:.85em;list-style:none}
.controls-container{text-align:center;flex-direction:column;grid-template-columns:1fr 1fr;place-items:start center;gap:10px;margin-top:20px;display:grid}.controls-container input,.controls-container select{box-sizing:border-box;border-radius:var(--mild-border-radius);border:1px solid #ccc;width:calc(50% - 20px);margin-bottom:5px;padding:10px;transition:border-color .3s}.controls-container>:last-child,.controls-container>div:last-child>select{margin-right:0}.control-container{flex-direction:column;gap:1px;width:150px;font-size:small;display:flex}.control-container label{text-align:left}.control-container input,.control-container select{width:100%}.practice-pool-list{padding:0;list-style-type:none}.practice-pool-item{justify-content:space-between;align-items:center;margin-bottom:5px;font-size:.9em;display:flex}.practice-pool-item span{margin-right:10px}.practice-pool-item button{padding:var(--btn-padding-xs);background-color:var(--btn-neutral-bg);color:var(--btn-neutral-text);border:1px solid var(--btn-neutral-border);border-radius:var(--btn-radius);cursor:pointer;font-size:.75rem;font-weight:500;transition:all .2s}.practice-pool-item button:hover{background-color:var(--btn-danger-bg);color:var(--btn-danger-text);border-color:var(--btn-danger-bg);transform:translateY(-1px)}.submit-pool-button{padding:var(--btn-padding-sm);background-color:var(--btn-primary-bg);color:var(--btn-primary-text);border-radius:var(--btn-radius);cursor:pointer;border:none;font-size:.875rem;font-weight:500;transition:all .2s}.submit-pool-button:hover{background-color:var(--btn-primary-hover);transform:translateY(-1px)}.flashcard-controls-container{padding:var(--default-padding)}.flashcard-controls-container input,.flashcard-controls-container select{box-sizing:border-box;border-radius:var(--mild-border-radius);border:1px solid #ccc;margin-bottom:5px;padding:10px;transition:border-color .3s}
.exercise-container{text-align:center;flex-direction:column;justify-content:flex-start;align-items:center;padding:20px;display:flex;position:relative}.exercise-container h1{margin:0 auto}.problem-container{text-align:center;flex-direction:column;justify-content:center;align-items:center;margin-bottom:20px;display:flex}.problem-container h2{margin-bottom:20px;font-size:1.5em;font-weight:700}.problem-container input{box-sizing:border-box;width:100%;margin-bottom:20px;padding:10px}.problem-container button{padding:var(--btn-padding-sm);background-color:var(--btn-primary-bg);color:var(--btn-primary-text);border-radius:var(--btn-radius);cursor:pointer;border:none;margin-top:10px;font-weight:500;transition:all .2s}.problem-container button:hover{background-color:var(--btn-primary-hover);transform:translateY(-1px)}.problem{margin-bottom:12px;font-size:2.5em;font-weight:700}.button-container{justify-content:center;align-items:center;width:100%;display:flex}.button-container .button-submit{width:33%}.button-container .button-cancel{background-color:var(--btn-danger-bg);color:var(--btn-danger-text);width:80%}.button-container .button-cancel:hover{background-color:var(--btn-danger-hover)}.feedback ol{margin-top:10px;margin-bottom:10px;padding-left:20px}.feedback ol li{margin-bottom:10px}.feedback ol li::marker{color:#000;font-size:1.5em;font-weight:700}.small-numbers-list{counter-reset:small-list;padding-left:0;list-style:none}.small-numbers-list li{counter-increment:small-list;padding-left:1.5rem;position:relative}.small-numbers-list li:before{content:counter(small-list)".";font-size:1rem;position:absolute;top:.1rem;left:0}.feedback-attempt-item{margin-bottom:1rem}.feedback-attempt-row{margin-bottom:.5rem}
.stats-container{text-align:center;height:100vh;padding-top:var(--default-padding);flex-direction:column;width:100%;display:flex;overflow-y:auto}.stats-container>:first-child{width:100%;margin-top:0}.table-container{width:100%;max-width:100%;overflow-x:auto}.table-scroll table{border-collapse:collapse;width:100%}.table-scroll th,.table-scroll td{text-align:left;border:1px solid #ddd;padding:10px}.table-scroll th{background-color:var(--light-primary-bg);font-weight:700}.table-scroll tr:nth-child(2n){background-color:var(--light-secondary-text)}.table-scroll tr:hover{background-color:var(--light-accent-text)}.chart-container{width:100%}.dropdown-container{align-items:center;gap:20px;margin-bottom:20px;display:flex}.dropdown label{text-align:left;margin-bottom:5px;font-size:small;display:block}.dropdown select{border-radius:var(--mild-border-radius);border:1px solid #ccc;width:100%;padding:10px;font-size:16px}
.exercise-timer{padding-bottom:20px;font-size:1em}
.fractal-canvas{width:100%;height:100%;display:block}
.sphere-logo-container{justify-content:center;align-items:center;width:100%;margin-bottom:1rem;display:flex}.sphere-logo-link{cursor:pointer;transition:transform .3s;display:block}.sphere-logo-link:hover{transform:scale(1.05)}@media screen and (max-width:768px){.sphere-logo-container{display:none}}
@media screen and (max-width:900px){.app-container{flex-direction:column}.mobile-header-band{background-color:var(--dark-primary-bg);box-sizing:border-box;z-index:10;justify-content:flex-start;align-items:center;width:100%;height:44px;display:flex;position:fixed;top:0;left:0}.mobile-menu-button{cursor:pointer;width:44px;height:44px;margin-left:10px;display:block}.mobile-menu-button svg{width:100%;height:100%;margin:auto;display:block}.mobile-menu-overlay{z-index:999;background-color:#0003;width:100vw;height:calc(100vh - 44px);position:fixed;top:44px;left:0}.left-pane{background-color:var(--dark-primary-bg);width:80%;height:calc(100vh - 44px);color:(--dark-primary-text);z-index:1000;flex-direction:column;padding:1rem;display:none;position:fixed;top:44px;left:0;overflow-y:auto}.left-pane.open{display:flex}@media screen and (max-width:768px){.logo-container{display:none}}.right-pane{width:100%;margin-top:44px;position:relative;overflow:auto}.exercise-navigation-container{width:100%!important;max-width:none!important;padding:var(--default-mobile-padding-)!important}.exercise-list{gap:10px;display:grid;grid-template-columns:1fr!important}.exercise-card{justify-content:center;padding:15px}.exercise-label{font-size:1rem}.flashcard-controls-container,.flashcard-feedback-container{padding:var(--default-mobile-padding)}}.mobile-only-nav-item{display:none}@media screen and (max-width:900px){.mobile-only-nav-item{display:block}}
@media screen and (min-width:901px){.app-container{flex-direction:row}.left-pane{display:flex}.mobile-header-band,.mobile-menu-button{display:none}}
.auth-button{padding:var(--btn-padding);border-radius:var(--btn-radius);background-color:var(--btn-primary-bg);color:var(--btn-primary-text);cursor:pointer;border:none;margin:10px 0;font-weight:500;transition:all .2s}.auth-button:hover{background-color:var(--btn-primary-hover);transform:translateY(-2px)}
.subscription-options-container{flex-wrap:wrap;justify-content:center;gap:20px;display:flex}.subscription-card{border:1px solid var(--borders-dividers);border-radius:var(--default-border-radius);background-color:var(--light-secondary-bg);padding:var(--default-padding);text-align:center;flex-direction:column;width:300px;display:flex}.subscription-card-title{margin-bottom:var(--default-margin);font-size:1.5em}.subscription-card-pricing{min-height:80px;margin-bottom:var(--default-margin)}.subscription-card-price-and-period-container{justify-content:center;align-items:baseline;padding-top:.8em;display:flex}.subscription-card-price{color:var(--subscription-price-color);font-size:2em}.subscription-card-period{color:var(--light-tertiary-text);margin-left:.25em;font-size:.8em}.subscription-card-discount{color:var(--subscription-discount-color);margin-top:.5em;font-size:.9em}.subscription-card-benefits{text-align:left;padding-left:var(--default-padding)}.subscription-card-button-container{margin-top:auto}.subscribe-page-container{justify-content:center;padding:50px;display:flex}
.trial-banner{background:linear-gradient(135deg,#e8f4f8 0%,#d4e9f0 100%);border-bottom:1px solid #b8d4e0;justify-content:center;align-items:center;gap:16px;padding:10px 20px;font-size:14px;display:flex}.trial-banner--low{background:linear-gradient(135deg,#fff3e0 0%,bisque 100%);border-bottom:1px solid #ffd699}.trial-banner--exhausted{background:linear-gradient(135deg,#ffeee8 0%,#ffd4c4 100%);border-bottom:1px solid #ffb699}.trial-banner__text{color:#333}.trial-banner__cta{background-color:var(--goals-primary,#4a7c59);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:6px 16px;font-size:13px;font-weight:600;transition:background-color .15s}.trial-banner__cta:hover{background-color:var(--goals-primary-dark,#3d6349)}.trial-banner__cta-subtle{color:var(--goals-primary,#4a7c59);border:1px solid var(--goals-primary,#4a7c59);cursor:pointer;background-color:#0000;border-radius:4px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .15s}.trial-banner__cta-subtle:hover{background-color:var(--goals-primary,#4a7c59);color:#fff}
.paywall-overlay{z-index:1000;background-color:#0009;justify-content:center;align-items:center;animation:.2s ease-out paywall-fade-in;display:flex;position:fixed;inset:0}@keyframes paywall-fade-in{0%{opacity:0}to{opacity:1}}.paywall-modal{background:#fff;border-radius:16px;width:90%;max-width:480px;padding:40px;animation:.3s ease-out paywall-slide-up;position:relative;box-shadow:0 20px 60px #0000004d}@keyframes paywall-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.paywall-close{color:#999;cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:28px;line-height:1;position:absolute;top:16px;right:16px}.paywall-close:hover{color:#333}.paywall-header{text-align:center;margin-bottom:24px}.paywall-header h2{color:var(--goals-primary-dark,#2c4a35);margin:0 0 8px;font-size:24px}.paywall-subtitle{color:#666;margin:0;font-size:15px}.paywall-benefits{background:#f8faf9;border-radius:8px;margin-bottom:24px;padding:20px}.paywall-benefits h3{text-transform:uppercase;letter-spacing:.5px;color:#666;margin:0 0 12px;font-size:14px}.paywall-benefits ul{margin:0;padding:0;list-style:none}.paywall-benefits li{color:#333;padding:6px 0 6px 24px;position:relative}.paywall-benefits li:before{content:"✓";color:var(--goals-primary,#4a7c59);font-weight:700;position:absolute;left:0}.paywall-plans{justify-content:center;margin-bottom:20px;display:flex}.paywall-plan{cursor:pointer;background:#fff;border:2px solid #e0e0e0;border-radius:12px;flex-direction:column;align-items:center;padding:20px 16px;transition:all .15s;display:flex;position:relative}.paywall-plan:hover{border-color:var(--goals-primary,#4a7c59);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.paywall-plan--primary{border-color:var(--goals-primary,#4a7c59);background:var(--goals-primary,#4a7c59);min-width:200px}.paywall-plan--primary .paywall-plan__price,.paywall-plan--primary .paywall-plan__label{color:#fff}.paywall-plan--primary .paywall-plan__note{color:#fffc}.paywall-plan--primary:hover{background:var(--goals-primary-dark,#3d6349);border-color:var(--goals-primary-dark,#3d6349)}.paywall-plan__price{color:var(--goals-primary-dark,#2c4a35);margin-bottom:4px;font-size:24px;font-weight:700}.paywall-plan__label{color:#333;margin-bottom:4px;font-size:14px;font-weight:600}.paywall-plan__note{color:#888;font-size:12px}.paywall-guarantee{text-align:center;color:#888;margin:0;font-size:13px}@media (max-width:480px){.paywall-modal{padding:28px 20px}.paywall-plans{grid-template-columns:1fr}}
.login-required-overlay{z-index:1000;background-color:#0009;justify-content:center;align-items:center;animation:.2s ease-out login-required-fade-in;display:flex;position:fixed;inset:0}@keyframes login-required-fade-in{0%{opacity:0}to{opacity:1}}.login-required-modal{background:#fff;border-radius:16px;width:90%;max-width:420px;padding:40px;animation:.3s ease-out login-required-slide-up;position:relative;box-shadow:0 20px 60px #0000004d}@keyframes login-required-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-required-close{color:#999;cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:28px;line-height:1;position:absolute;top:16px;right:16px}.login-required-close:hover{color:#333}.login-required-header{text-align:center;margin-bottom:24px}.login-required-icon{color:var(--goals-primary,#4a7c59);margin-bottom:16px}.login-required-header h2{color:var(--goals-primary-dark,#2c4a35);margin:0 0 8px;font-size:24px}.login-required-subtitle{color:#666;margin:0;font-size:15px}.login-required-benefits{background:#f8faf9;border-radius:8px;margin-bottom:24px;padding:20px}.login-required-benefits p{text-transform:uppercase;letter-spacing:.5px;color:#666;margin:0 0 12px;font-size:14px}.login-required-benefits ul{margin:0;padding:0;list-style:none}.login-required-benefits li{color:#333;padding:6px 0 6px 24px;position:relative}.login-required-benefits li:before{content:"✓";color:var(--goals-primary,#4a7c59);font-weight:700;position:absolute;left:0}.login-required-actions{flex-direction:column;gap:12px;display:flex}.login-required-btn{cursor:pointer;border:none;border-radius:8px;padding:14px 24px;font-size:16px;font-weight:600;transition:all .15s}.login-required-btn--primary{background:var(--goals-primary,#4a7c59);color:#fff}.login-required-btn--primary:hover{background:var(--goals-primary-dark,#3d6349);transform:translateY(-1px)}.login-required-btn--secondary{color:#666;background:0 0;border:1px solid #ddd}.login-required-btn--secondary:hover{color:#333;background:#f5f5f5}@media (max-width:480px){.login-required-modal{padding:28px 20px}}
.auth-loading-container{background:var(--background-color,#f5f5f5);flex-direction:column;justify-content:center;align-items:center;height:100vh;display:flex}.auth-loading-container p{color:#666;margin-top:16px;font-size:14px}.auth-loading-spinner{border:3px solid #e0e0e0;border-top-color:var(--goals-primary,#4a7c59);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}
:root{--heatmap-total-width:calc(53*12px + 52*2px)}.heatmap-header{width:var(--heatmap-total-width);grid-template-columns:repeat(53,12px);gap:2px;margin:0 auto;display:grid}.month-label{text-align:center;white-space:nowrap;margin-bottom:5px;font-size:small}.heatmap-scroll-container{max-width:100%;overflow-x:auto}.heatmap{width:var(--heatmap-total-width);grid-template-columns:repeat(53,12px);gap:2px;margin:0 auto;display:grid}.day{border:1px solid gray;border-radius:2px;width:10px;height:10px}.level-0{background-color:var(--heatmap-level-0)}.level-1{background-color:var(--heatmap-level-1)}.level-2{background-color:var(--heatmap-level-2)}.level-3{background-color:var(--heatmap-level-3)}.level-4{background-color:var(--heatmap-level-4)}.heatmap-key-container{max-width:var(--heatmap-total-width);margin:10px auto 0;overflow-x:auto}.heatmap-key{justify-content:space-around;width:100%;font-size:small;display:flex}.heatmap-key-item{align-items:center;display:flex}.heatmap-key-item .day{margin-right:5px}
.admin-dashboard{max-width:1400px;margin:0 auto;padding:20px}.admin-dashboard.loading,.admin-dashboard.error{text-align:center;color:#666;padding:40px}.admin-dashboard.error{color:#c00}.admin-dashboard-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.admin-dashboard-header h1{color:#1a1a2e;margin:0;font-size:1.5rem}.filter-controls select{border:1px solid #ccc;border-radius:4px;padding:6px 12px;font-size:14px}.admin-dashboard-grid{grid-template-columns:1fr 350px;gap:24px;display:grid}@media (max-width:1000px){.admin-dashboard-grid{grid-template-columns:1fr}}.dashboard-section{background:#fff;border-radius:8px;margin-bottom:20px;padding:16px;box-shadow:0 1px 3px #0000001a}.dashboard-section h2{color:#333;border-bottom:1px solid #eee;margin:0 0 16px;padding-bottom:8px;font-size:1rem}.no-data{color:#888;font-size:14px;font-style:italic}.admin-student-card{border:1px solid #e0e0e0;border-radius:6px;margin-bottom:8px;overflow:hidden}.admin-student-card-header{cursor:pointer;background:#fafafa;align-items:center;padding:12px;transition:background .2s;display:flex}.admin-student-card-header:hover{background:#f0f0f0}.student-info{flex:1;min-width:150px}.student-name{color:#1a1a2e;font-weight:600;display:block}.student-last-active{color:#888;font-size:12px}.student-stats-summary{flex-wrap:wrap;flex:2;justify-content:flex-end;gap:8px;margin-right:12px;display:flex}.student-stats-summary .stat{background:#e8e8e8;border-radius:12px;padding:2px 8px;font-size:12px}.student-stats-summary .stat.flashcard{color:#155724;background:#d4edda}.student-stats-summary .stat.whiteboard{color:#4a1a7a;background:#e2d4f0}.student-stats-summary .stat.exercise{color:#0c5460;background:#d1ecf1}.student-stats-summary .stat.no-activity{color:#6c757d;background:#f8f9fa}.expand-icon{color:#888;font-size:10px}.admin-student-card-details{background:#fff;border-top:1px solid #e0e0e0;padding:12px}.detail-row{justify-content:space-between;padding:4px 0;font-size:13px;display:flex}.detail-label{color:#666}.detail-value{font-weight:500}.recent-whiteboards{margin-top:8px}.recent-whiteboards ul{margin:4px 0 0;padding-left:20px;font-size:13px}.recent-whiteboards li{margin:2px 0}.recent-whiteboards a{color:#4a6fa5;text-decoration:none}.recent-whiteboards a:hover{text-decoration:underline}.logins-list{max-height:200px;overflow-y:auto}.login-row{border-bottom:1px solid #f0f0f0;justify-content:space-between;padding:6px 0;font-size:13px;display:flex}.login-row:last-child{border-bottom:none}.login-user{color:#333;font-weight:500}.login-time{color:#888}.activity-feed{max-height:400px;overflow-y:auto}.activity-feed-item{border-bottom:1px solid #f0f0f0;flex-direction:column;padding:8px 0;font-size:13px;display:flex}.activity-feed-item:last-child{border-bottom:none}.activity-time{color:#888;font-size:11px}.activity-user{color:#333;font-weight:500}.activity-action{color:#666}.heatmap-section{overflow-x:auto}.dashboard-footer{text-align:center;color:#888;padding:16px;font-size:12px}
.admin-view-toggle{background:var(--bg-secondary,#f0f0f0);border:1px solid var(--border-color,#e0e0e0);border-radius:10px;gap:0;width:fit-content;margin-top:16px;margin-bottom:24px;padding:4px;display:flex;box-shadow:0 2px 8px #0000000f}.view-toggle-btn{cursor:pointer;color:var(--text-secondary,#666);background:0 0;border:none;border-radius:8px;padding:10px 24px;font-size:14px;font-weight:600;transition:all .2s}.view-toggle-btn:hover{color:var(--text-primary,#333);background:#00000008}.view-toggle-btn.active{background:var(--bg-primary,#fff);color:var(--primary-color,#4a90d9);box-shadow:0 4px 12px #4a90d933}.admin-dashboard-page{flex-direction:column;gap:24px;display:flex}.admin-tools-section{border-top:2px solid var(--border-color,#e0e0e0);padding-top:32px}.admin-tools-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.admin-tools-header h2{color:var(--text-primary,#333);margin:0;font-size:20px;font-weight:600}.admin-tools-content{min-height:300px}.admin-tabs{background:var(--bg-secondary,#f5f5f5);border-radius:8px;gap:4px;margin-left:auto;padding:4px;display:flex}.admin-tab{cursor:pointer;color:var(--text-secondary,#666);background:0 0;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:all .2s}.admin-tab:hover{background:var(--bg-hover,#e8e8e8);color:var(--text-primary,#333)}.admin-tab.active{background:var(--bg-primary,#fff);color:var(--primary-color,#4a90d9);box-shadow:0 1px 3px #0000001a}.admin-dashboard-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.admin-dashboard-header h1{margin:0;font-size:24px;font-weight:600}.admin-dashboard-content{min-height:400px}.admin-panel-header{margin-bottom:20px}.admin-panel-loading,.admin-panel-error{text-align:center;color:var(--text-secondary,#666);padding:40px}.ai-costs-panel{padding:0}.ai-costs-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.ai-costs-header h2{margin:0;font-size:20px;font-weight:600}.ai-costs-summary-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:32px;display:grid}.ai-cost-summary-card{background:var(--bg-secondary,#f8f9fa);text-align:center;border-radius:8px;padding:16px}.summary-label{color:var(--text-secondary,#666);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:12px}.summary-value{color:var(--text-primary,#333);font-size:28px;font-weight:700}.summary-subvalue{color:var(--text-secondary,#888);margin-top:4px;font-size:12px}.ai-costs-section{margin-bottom:32px}.ai-costs-section h3{color:var(--text-primary,#333);margin-bottom:16px;font-size:16px;font-weight:600}.ai-costs-breakdowns{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-bottom:32px;display:grid}.cost-bar-chart{background:var(--bg-secondary,#f8f9fa);border-radius:8px;height:200px;padding:16px}.chart-bars{justify-content:space-between;align-items:flex-end;gap:4px;height:160px;padding-bottom:24px;display:flex}.chart-bar-container{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex}.chart-bar{background:linear-gradient(to top,var(--primary-color,#4a90d9),#7ab8f5);cursor:pointer;border-radius:4px 4px 0 0;width:100%;max-width:40px;min-height:2px;transition:opacity .2s}.chart-bar:hover{opacity:.8}.chart-bar-label{color:var(--text-secondary,#888);white-space:nowrap;margin-top:4px;font-size:10px;transform:rotate(-45deg)}.cost-breakdown-table{background:var(--bg-secondary,#f8f9fa);border-radius:8px;overflow:hidden}.cost-breakdown-table table{border-collapse:collapse;width:100%}.cost-breakdown-table th,.cost-breakdown-table td{text-align:left;border-bottom:1px solid var(--border-color,#e0e0e0);padding:10px 12px}.cost-breakdown-table th{background:var(--bg-tertiary,#eee);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary,#666);cursor:pointer;font-size:12px;font-weight:600}.cost-breakdown-table th:hover{background:var(--bg-hover,#e0e0e0)}.cost-breakdown-table th.sorted{color:var(--primary-color,#4a90d9)}.cost-breakdown-table td{font-size:14px}.cost-breakdown-table tr:last-child td{border-bottom:none}.call-type-name,.model-name{text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-weight:500;overflow:hidden}.user-costs-table-container{background:var(--bg-secondary,#f8f9fa);border-radius:8px;overflow-x:auto}.user-costs-table{border-collapse:collapse;width:100%;min-width:600px}.user-costs-table th,.user-costs-table td{text-align:left;border-bottom:1px solid var(--border-color,#e0e0e0);padding:12px}.user-costs-table th{background:var(--bg-tertiary,#eee);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary,#666);font-size:12px;font-weight:600}.user-costs-table th.sortable,.user-costs-table th.sorted{cursor:pointer}.user-costs-table th.sortable:hover{background:var(--bg-hover,#e0e0e0)}.user-costs-table th.sorted{color:var(--primary-color,#4a90d9)}.user-costs-table td{font-size:14px}.user-costs-table tr:last-child td{border-bottom:none}.user-costs-table .user-name{font-weight:500}.user-costs-table .user-cost{color:var(--primary-color,#4a90d9);font-weight:600}.user-costs-table .call-type{color:var(--text-secondary,#666);text-overflow:ellipsis;white-space:nowrap;max-width:150px;font-size:12px;overflow:hidden}.user-costs-loading,.user-costs-empty{text-align:center;color:var(--text-secondary,#666);background:var(--bg-secondary,#f8f9fa);border-radius:8px;padding:32px}.ai-costs-footer{border-top:1px solid var(--border-color,#e0e0e0);color:var(--text-secondary,#888);margin-top:24px;padding-top:16px;font-size:12px}.admin-personal-progress{padding:0}.admin-personal-progress-header{margin-bottom:16px}.admin-personal-progress-note{color:var(--text-secondary,#666);background:var(--bg-secondary,#f8f9fa);border-left:3px solid var(--primary-color,#4a90d9);border-radius:8px;margin:0;padding:12px 16px;font-size:14px}.filter-controls{align-items:center;gap:8px;display:flex}.filter-controls label{color:var(--text-secondary,#666);font-size:14px}.filter-controls select{border:1px solid var(--border-color,#ddd);background:var(--bg-primary,#fff);cursor:pointer;border-radius:4px;padding:6px 10px;font-size:14px}.filter-controls select:focus{border-color:var(--primary-color,#4a90d9);outline:none}@media (max-width:768px){.admin-dashboard-header{flex-direction:column;align-items:flex-start}.admin-tabs{width:100%;margin-left:0}.admin-tab{text-align:center;flex:1;padding:10px 8px;font-size:13px}.ai-costs-summary-grid{grid-template-columns:repeat(2,1fr)}.ai-costs-breakdowns{grid-template-columns:1fr}.chart-bar-label{display:none}}
.exercise-progress-container{flex-direction:row;justify-content:center;gap:5px;width:100%;margin:20px 0;padding:10px 0;display:flex}.exercise-progress-item{border-radius:var(--slight-border-radius);background-color:#d3d3d3;border:1px solid gray;width:20px;height:20px}.exercise-progress-item.correct{background-color:green}.exercise-progress-item.incorrect{background-color:red}.exercise-progress-item.in-progress{background-color:orange}
.feedback-textarea{width:50%;height:140px;padding:10px;font-size:16px}.feedback-widget-buttons{gap:10px;margin-top:10px;display:flex}.feedback-actions{gap:10px;display:flex}.flashcard-card.feedback-reward{background-color:#e0ffe0;border:2px solid #00a000}.feedback-reward-message{color:#070;margin-top:10px;padding:10px;font-weight:700}.feedback-card-wrapper{position:relative;overflow:hidden}.feedback-card-fractal{z-index:0}.feedback-card-content{z-index:1;position:relative}.feedback-card-question{margin-bottom:.5em;font-size:1.17em}.feedback-card-frozen{color:#00f}.feedback-card-canonical{margin-top:.6em}.feedback-card-canonical summary{cursor:pointer}.feedback-card-canonical p{margin-top:.4em}.feedback-card-remark-section,.feedback-card-actions{margin-top:1em}.feedback-card-action-row{margin-bottom:.5em}.feedback-card-error{color:red}
.flashcard-container{max-width:900px;padding:var(--default-padding);text-align:center;margin:50px auto;font-family:Arial,sans-serif}.flashcard-card{background-color:var(--light-secondary-bg);border:1px solid #ccc;border-radius:8px;max-width:900px;margin-bottom:30px;padding:20px;box-shadow:2px 2px 12px #0000001a}.flashcard-form{flex-direction:column;align-items:center;margin-top:20px;display:flex}.flashcard-textarea{resize:vertical;border:1px solid #ccc;border-radius:4px;width:100%;height:80px;padding:10px;font-size:16px}.math-whiteboard-embedded-container{justify-content:center;width:100%;display:flex}.math-whiteboard-button{padding:var(--btn-padding-xs);border-radius:var(--btn-radius);background-color:var(--btn-primary-bg);color:var(--btn-primary-text);cursor:pointer;border:none;margin-top:3px;font-size:.75rem;font-weight:500;transition:all .2s}.math-whiteboard-button:hover{background-color:var(--btn-primary-hover);transform:translateY(-1px)}.flashcard-button{padding:var(--btn-padding-sm);border-radius:var(--btn-radius);background-color:var(--btn-primary-bg);color:var(--btn-primary-text);cursor:pointer;border:none;margin-top:10px;font-size:.875rem;font-weight:500;transition:all .2s}.flashcard-button:disabled{background-color:var(--disabled-bg);color:var(--disabled-text);cursor:not-allowed;transform:none}.flashcard-button:hover:not(:disabled){background-color:var(--btn-primary-hover);transform:translateY(-1px)}.exercise-card:hover{transition:transform .2s,background-color .2s;transform:scale(1.05)}.exercise-card.not-played:hover{background-color:#79b3f1}.flashcard-played-1:hover{background-color:#b0fbb0}.flashcard-played-2:hover{background-color:#89e489}.flashcard-played-3:hover{background-color:#5fd15f}.flashcard-played-4:hover{background-color:#4aa94a}.flashcard-played-5:hover{background-color:#272}.flashcard-feedback,.flashcard-error{border-radius:4px;margin-top:20px;padding:15px}.flashcard-feedback{text-align:left;background-color:#f0f8ff}.flashcard-error{color:#c00;background-color:#ffe6e6}.flashcard-feedback-container{padding:var(--default-padding);flex-direction:column;align-items:center;display:flex}.marks-display{text-align:right;align-self:flex-end;width:100%;margin-top:.5rem;font-size:1.2em}.skip-button{color:#8987e9;cursor:pointer;background:0 0;border:none;margin-left:auto;font-size:.85rem}.skip-button:hover{text-decoration:underline}.info-icon:hover .tooltip{visibility:visible;opacity:1}.flashcard-cancel-button{border-radius:var(--btn-radius);background-color:var(--btn-danger-bg);color:var(--btn-danger-text);width:60%;padding:var(--btn-padding-xs);cursor:pointer;border:none;font-weight:500;transition:all .2s}.flashcard-cancel-button:hover{background-color:var(--btn-danger-hover);transform:translateY(-1px)}
.exercise-navigation-container{padding:var(--default-padding);width:80%}.exercise-navigation-container h1{margin-bottom:var(--default-margin)}.exercise-category{margin-bottom:40px}.exercise-category h2{margin-bottom:10px;font-size:1.5rem}.exercise-list{grid-template-columns:1fr 1fr;gap:20px;margin:0;padding:0;list-style-type:none;display:grid}.exercise-list li{margin:0}.exercise-card{color:var(--light-primary-text);border-radius:var(--mild-border-radius);justify-content:flex-start;align-items:center;padding:20px 20px 20px 80px;text-decoration:none;transition:transform .2s,background-color .2s;display:flex;box-shadow:0 2px 5px #0000001a}.exercise-card.not-played:hover{background-color:#79b3f1;transform:scale(1.05)}.exercise-card.played{background-color:var(--heatmap-level-3)}.exercise-card.played:hover{background-color:#b8e58a;transform:scale(1.05)}.exercise-label{text-align:center;white-space:nowrap;font-size:1.1rem;font-weight:700}.exercise-card.not-played{background-color:#4a90e2}.flashcard-played-1{background-color:#97f597}.flashcard-played-2{background-color:#90ef90}.flashcard-played-3{background-color:#89ea89}.flashcard-played-4{background-color:#82e482}.flashcard-played-5{background-color:#7bde7b}.flashcard-played-6{background-color:#75d875}.flashcard-played-7{background-color:#6ed36e}.flashcard-played-8{background-color:#67cd67}.flashcard-played-9{background-color:#60c760}.flashcard-played-10{background-color:#59c159}.flashcard-played-11{background-color:#52bc52}.flashcard-played-12{background-color:#4bb64b}.flashcard-played-13{background-color:#44b044}.flashcard-played-14{background-color:#3daa3d}.flashcard-played-15{background-color:#36a536}.flashcard-played-16{background-color:#309f30}.flashcard-played-17{background-color:#299929}.flashcard-played-18{background-color:#229322}.flashcard-played-19{background-color:#1b8e1b}.flashcard-played-20{background-color:#148814}.exercise-card-content{position:relative}.deck-card-button{position:relative;overflow:hidden}.deck-card-content-layer{z-index:2;position:relative}.deck-card-fractal-layer{z-index:1}.deck-action-buttons{gap:.5rem;margin-top:.5rem;display:flex}.deck-selection-empty{margin-bottom:1rem}.deck-selection-footer{margin-top:1rem}.info-icon{color:#333;cursor:pointer;background-color:#0000;border:1px solid #333;border-radius:50%;justify-content:center;align-items:center;width:9px;height:9px;padding:2px;font-size:14px;font-weight:700;display:flex;position:absolute;bottom:4px;right:4px}.tooltip{visibility:hidden;color:#fff;text-align:center;z-index:1;opacity:0;background-color:#555;border-radius:6px;width:250px;padding:5px;transition:opacity .3s;position:absolute;bottom:125%;right:0}.tooltip:after{content:"";border:5px solid #0000;border-top-color:#555;position:absolute;top:100%;right:10px}.exercise-card-content{justify-content:space-between;align-items:center;width:100%;display:flex}.exercise-name-wrapper{text-align:left;flex:1;font-size:1.2rem;font-weight:700}.exercise-score-wrapper{flex-direction:column;justify-content:flex-end;align-items:flex-end;width:100px;height:100%;display:flex}.exercise-score{align-self:flex-end;font-size:small}.exercise-card{width:420px;min-height:70px}@media (max-width:480px){.exercise-card{box-sizing:border-box;width:100%;padding:20px}.exercise-navigation-container{width:100%;padding:10px}.exercise-list{grid-template-columns:1fr;gap:10px}.exercise-name-wrapper{font-size:1rem}.exercise-score-wrapper{width:auto}}
.question-answer-group{flex-direction:column;align-items:flex-start;width:60%;margin-bottom:1rem;display:flex}.question-answer-group label{text-align:left}.question-answer-group textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:100px;padding:.5rem;font-size:1rem}.deck-creation-container{padding-top:20px}.success-tick{color:green;opacity:.8;margin-left:12px;font-size:.9rem;animation:2s ease-out forwards fade-out}@keyframes fade-out{0%{opacity:1}to{opacity:0}}.recent-questions-card{background:#fafafa;border:1px solid #ccc;max-height:8rem;margin-bottom:1rem;padding:.5rem;overflow-y:auto}.recent-questions-card ul{margin:.25rem 0 0;padding:0;list-style:none}.recent-questions-card li{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.recent-questions-card .most-recent{margin-bottom:.25rem;font-size:1rem;font-weight:700}.recent-questions-card .older-recent{color:#555;margin-bottom:.15rem;margin-left:.75rem;font-size:.85rem}.deck-editor{padding:var(--default-padding)}.deck-editor__title{margin-bottom:var(--default-margin);color:var(--light-primary-text)}.deck-editor__table{border-collapse:collapse;width:100%}.deck-editor__table th,.deck-editor__table td{vertical-align:top}.deck-editor__thead th{text-align:left;border-bottom:2px solid var(--borders-dividers);padding-bottom:.5rem}.deck-editor__row{border-bottom:1px solid var(--borders-dividers)}.deck-editor__cell{padding:.5rem 0}.deck-editor__textarea{width:100%;padding:var(--default-padding);box-sizing:border-box;border:1px solid var(--borders-dividers);border-radius:var(--slight-border-radius);resize:vertical;min-height:6rem;font-size:1rem}.deck-editor__textarea--answer{min-height:8rem}.deck-editor__input--small,.deck-editor__table th:nth-child(3),.deck-editor__table td:nth-child(3){width:4ch}.deck-editor__cell--actions{white-space:nowrap;text-align:center}.deck-editor__error{color:red;margin-top:.25rem}.reusable-button-small:disabled{opacity:.6;cursor:not-allowed}.deck-editor__back{margin-top:var(--default-margin)}.deck-editor__empty{padding:var(--default-padding);text-align:center}@media (max-width:600px){.question-answer-group textarea{min-height:80px;font-size:.9rem}}
.exercise-score-wrapper.mode-selection-variation{width:200px}.mistakes-level-1{background-color:#fefce8}.mistakes-level-2{background-color:#fef9c3}.mistakes-level-3{background-color:#fef08a}.mistakes-level-4{background-color:#fde047}.mistakes-level-5{background-color:#fdd835}.mistakes-level-6{background-color:#fdd32b}.mistakes-level-7{background-color:#fccf20}.mistakes-level-8{background-color:#fccc15}.mistakes-level-9{background-color:#fac810}.mistakes-level-10{background-color:#fac515}.mistakes-level-11{background-color:#f9c212}.mistakes-level-12{background-color:#f9be10}.mistakes-level-13{background-color:#f8bb0d}.mistakes-level-14{background-color:#f8b70b}.mistakes-level-15{background-color:#f7b408}.mistakes-level-16{background-color:#f7b006}.mistakes-level-17{background-color:#f6ad04}.mistakes-level-18{background-color:#f6a902}.mistakes-level-19{background-color:#f5a600}.mistakes-level-20{background-color:#facc15}.mode-selection-limit-warning{color:red;margin:1rem 0}.mode-selection-upgrade-btn{cursor:pointer;background-color:#fbbf24;border:none;border-radius:5px;padding:.75rem 1.5rem}.mode-selection-upgrade-btn:hover{background-color:#f59e0b}.mode-selection-score-small{font-size:.8rem}
.math-whiteboard-container{flex-direction:row;justify-content:center;align-items:flex-start;padding:1rem;display:flex}.math-whiteboard-controls-left,.math-whiteboard-controls-right{flex-direction:column;align-items:center;gap:8px;width:70px;display:flex}.math-whiteboard-controls-left{margin-right:8px}.math-whiteboard-controls-right{margin-left:8px}.math-whiteboard-center{flex-direction:column;flex:none;display:flex}.math-whiteboard-canvas{touch-action:none;-webkit-user-select:none;user-select:none;background-color:#fff;border:1px solid #ccc;border-radius:4px;flex:none;max-width:100%;height:auto;margin-bottom:8px}.math-whiteboard-verification-container{flex-direction:column;align-items:center;width:700px;max-width:100%;padding:1rem;display:flex}.questionPrompt{text-align:center;margin-top:1rem}.latexPreview,.latexRendered,.textArea{box-sizing:border-box;text-align:center;border:1px solid #ccc;border-radius:4px;width:100%;margin:.5rem 0;padding:1rem;font-family:monospace;line-height:1.4}.latexPreview{background-color:#f9f9f9}.latexRendered{background-color:#f9f9f9;font-size:1.5rem}.textArea{resize:vertical;background-color:#fff;font-size:1rem}.math-whiteboard-button-container{justify-content:center;gap:1rem;margin-top:1rem;display:flex}.user-answer-latex-display{justify-content:center;width:100%;display:flex}.user-answer-latex-rendered{text-align:center;background-color:#fff;border:1px solid #ddd;border-radius:4px;width:90%;font-size:large}.cursor-eraser{cursor:url(/eraser.png) 8 24,auto}
.deck-menu-container{flex-direction:column;gap:20px;max-width:600px;margin:0 auto;padding:20px;display:flex}.deck-menu-title{color:#333;font-size:1.5rem;font-weight:700}.deck-menu-grid{grid-template-columns:auto 60px;align-items:center;gap:15px;display:grid}.deck-menu-name{color:#555;justify-self:start;font-size:1rem}.deck-menu-toggle{justify-self:end;width:50px;height:24px;display:inline-block;position:relative}.deck-menu-toggle input{opacity:0;width:0;height:0}.deck-menu-slider{cursor:pointer;background-color:#ccc;border-radius:24px;transition:all .4s;position:absolute;inset:0}.deck-menu-slider:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:all .4s;position:absolute;bottom:3px;left:3px}.deck-menu-toggle input:checked+.deck-menu-slider{background-color:#4caf50}.deck-menu-toggle input:checked+.deck-menu-slider:before{transform:translate(26px)}.deck-menu-back-container{margin-top:20px}.deck-menu-back-button{background-color:var(--btn-primary-bg);color:var(--btn-primary-text);padding:var(--btn-padding-sm);border-radius:var(--btn-radius);cursor:pointer;border:none;font-size:.875rem;font-weight:500;transition:all .2s}.deck-menu-back-button:hover{background-color:var(--btn-primary-hover);transform:translateY(-1px)}
.breadcrumbs{background-color:var(--light-primary-bg);flex-wrap:wrap;justify-content:flex-start;align-items:center;padding:0 0 8px;font-size:12px;display:flex}.breadcrumbs a{color:var(--primary-text-color);text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.breadcrumb-separator{color:var(--secondary-text-color);margin:0 5px}.breadcrumb-link--clickable{cursor:pointer}
.footer{background-color:#0000;flex-wrap:wrap;align-items:center;padding:15px 0;font-size:12px;display:flex}.footer-link{color:var(--dark-primary-text);opacity:.7;margin:0 10px;text-decoration:none}.footer-link:hover{opacity:1}
.btn,.reusable-button{padding:var(--btn-padding);border-radius:var(--btn-radius);cursor:pointer;text-align:center;border:none;font-size:1rem;font-weight:500;line-height:1.2;text-decoration:none;transition:all .2s;display:inline-block}.btn:disabled,.reusable-button:disabled{background-color:var(--disabled-bg);color:var(--disabled-text);cursor:not-allowed;border-color:var(--disabled-bg);transform:none}.btn,.btn-primary,.reusable-button{background-color:var(--btn-primary-bg);color:var(--btn-primary-text)}.btn:hover:not(:disabled),.btn-primary:hover:not(:disabled),.reusable-button:hover:not(:disabled){background-color:var(--btn-primary-hover);transform:translateY(-2px)}.btn-secondary,.reusable-button-secondary{padding:var(--btn-padding);background-color:var(--btn-secondary-bg);color:var(--btn-secondary-text);border:1px solid var(--btn-secondary-border);border-radius:var(--btn-radius);cursor:pointer;font-weight:500;transition:all .2s}.btn-secondary:hover:not(:disabled),.reusable-button-secondary:hover:not(:disabled){background-color:var(--btn-secondary-hover-bg);transform:translateY(-2px)}.btn-success{padding:var(--btn-padding);background-color:var(--btn-success-bg);color:var(--btn-success-text);border-radius:var(--btn-radius);cursor:pointer;border:none;font-weight:500;transition:all .2s}.btn-success:hover:not(:disabled){background-color:var(--btn-success-hover);transform:translateY(-2px)}.btn-danger,.reusable-button-danger{padding:var(--btn-padding);background-color:var(--btn-danger-bg);color:var(--btn-danger-text);border-radius:var(--btn-radius);cursor:pointer;border:none;font-weight:500;transition:all .2s}.btn-danger:hover:not(:disabled),.reusable-button-danger:hover:not(:disabled){background-color:var(--btn-danger-hover);transform:translateY(-2px)}.btn-neutral{padding:var(--btn-padding);background-color:var(--btn-neutral-bg);color:var(--btn-neutral-text);border:1px solid var(--btn-neutral-border);border-radius:var(--btn-radius);cursor:pointer;font-weight:500;transition:all .2s}.btn-neutral:hover:not(:disabled){background-color:var(--btn-neutral-hover);transform:translateY(-1px)}.btn-sm,.reusable-button-small{padding:var(--btn-padding-sm);background-color:var(--btn-primary-bg);color:var(--btn-primary-text);border-radius:var(--btn-radius);cursor:pointer;border:none;font-size:.875rem;font-weight:500;transition:all .2s}.btn-sm:hover:not(:disabled),.reusable-button-small:hover:not(:disabled){background-color:var(--btn-primary-hover);transform:translateY(-1px)}.btn-sm:disabled,.reusable-button-small:disabled{background-color:var(--disabled-bg);color:var(--disabled-text);cursor:not-allowed;transform:none}.btn-xs{padding:var(--btn-padding-xs);background-color:var(--btn-primary-bg);color:var(--btn-primary-text);border-radius:var(--btn-radius);cursor:pointer;border:none;font-size:.75rem;font-weight:500;transition:all .2s}.btn-xs:hover:not(:disabled){background-color:var(--btn-primary-hover);transform:translateY(-1px)}.btn-sm.btn-secondary{padding:var(--btn-padding-sm);background-color:var(--btn-secondary-bg);color:var(--btn-secondary-text);border:1px solid var(--btn-secondary-border)}.btn-sm.btn-success{padding:var(--btn-padding-sm);background-color:var(--btn-success-bg);color:var(--btn-success-text)}.btn-sm.btn-danger{padding:var(--btn-padding-sm);background-color:var(--btn-danger-bg);color:var(--btn-danger-text)}.btn-sm.btn-neutral{padding:var(--btn-padding-sm);background-color:var(--btn-neutral-bg);color:var(--btn-neutral-text);border:1px solid var(--btn-neutral-border)}.btn-block{width:100%;display:block}
.reusable-toggle-container{flex-direction:column;align-items:flex-start;margin-top:10px;display:inline-flex}.reusable-toggle-label{color:#555;text-align:left;margin-bottom:4px;font-size:.8rem}.reusable-toggle{width:50px;height:24px;display:inline-block;position:relative}.reusable-toggle input{opacity:0;width:0;height:0}.reusable-slider{cursor:pointer;background-color:#ccc;border-radius:24px;transition:all .4s;position:absolute;inset:0}.reusable-slider:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:all .4s;position:absolute;bottom:3px;left:3px}.reusable-toggle input:checked+.reusable-slider{background-color:#4caf50}.reusable-toggle input:checked+.reusable-slider:before{transform:translate(26px)}
.user-panel{border-radius:var(--mild-border-radius);background-color:#ffffff0d;border-top:1px solid #ffffff26;flex-shrink:0;align-items:center;gap:10px;margin-top:auto;margin-bottom:1.5rem;padding:12px;display:flex}.user-panel--loading{justify-content:center}.user-panel-loading-text{color:var(--dark-primary-text);opacity:.6;font-size:.875rem}.user-panel-avatar{border-radius:50%;flex-shrink:0;width:40px;height:40px;overflow:hidden}.user-panel-avatar img{object-fit:cover;width:100%;height:100%}.user-panel-avatar-placeholder{color:#000;background-color:var(--accent);justify-content:center;align-items:center;width:100%;height:100%;font-size:1.1rem;font-weight:600;display:flex}.user-panel-info{flex:1;min-width:0;overflow:hidden}.user-panel-name{color:var(--dark-primary-text);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.user-panel-email{color:var(--dark-primary-text);opacity:.6;white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.user-panel-settings-btn{cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:all .2s;display:flex}.user-panel-settings-btn:hover{background-color:#ffffff1a}.user-panel-settings-btn img{filter:invert()brightness(.7);transition:all .3s}.user-panel-settings-btn:hover img{filter:invert()brightness();transform:rotate(45deg)}.user-panel--logged-out{justify-content:flex-start;padding:8px 12px}.user-panel-login-link{color:var(--dark-primary-text);opacity:.7;font-size:.875rem;text-decoration:none;transition:opacity .2s}.user-panel-login-link:hover{opacity:1}
.user-settings-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.user-settings-modal{background:#fff;border-radius:12px;width:100%;max-width:420px;padding:24px;position:relative;box-shadow:0 8px 32px #0003}.user-settings-close{color:#666;cursor:pointer;background:0 0;border:none;padding:4px;font-size:24px;line-height:1;transition:color .2s;position:absolute;top:12px;right:16px}.user-settings-close:hover{color:#333}.user-settings-section{border-bottom:1px solid #eee;padding:16px 0}.user-settings-section:first-of-type{padding-top:0}.user-settings-section:last-of-type{border-bottom:none;padding-bottom:0}.user-settings-section-title{text-transform:uppercase;letter-spacing:.5px;color:#888;margin:0 0 12px;font-size:.75rem;font-weight:600}.user-settings-row{justify-content:space-between;align-items:center;padding:8px 0;display:flex}.user-settings-label{color:#555;font-size:.9rem}.user-settings-value{color:#333;font-size:.9rem;font-weight:500}.user-settings-value--muted{color:#999;font-weight:400}.user-settings-plan{align-items:center;gap:10px;display:flex}.user-settings-plan-badge{color:#666;background-color:#f0f0f0;border-radius:12px;padding:4px 10px;font-size:.75rem;font-weight:600}.user-settings-plan-badge--pro{background-color:var(--accent);color:#000}.user-settings-upgrade-btn{color:#fff;cursor:pointer;background-color:#1a1a2e;border:none;border-radius:8px;padding:6px 14px;font-size:.8rem;font-weight:500;transition:all .2s}.user-settings-upgrade-btn:hover{background-color:#2d2d44;transform:translateY(-1px)}.user-settings-logout-btn{color:#333;cursor:pointer;background-color:#f5f5f5;border:1px solid #ccc;border-radius:8px;width:100%;padding:10px 16px;font-size:.9rem;font-weight:500;transition:all .2s}.user-settings-logout-btn:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.user-settings-theme-picker{gap:8px;display:flex}.user-settings-theme-btn{color:#333;cursor:pointer;background-color:#f5f5f5;border:1px solid #ccc;border-radius:8px;padding:6px 14px;font-size:.8rem;font-weight:500;transition:all .2s}.user-settings-theme-btn:hover{background-color:#e8e8e8}.user-settings-theme-btn--active{color:#fff;background-color:#1a1a2e;border-color:#1a1a2e}.user-settings-theme-btn--active:hover{background-color:#2d2d44}.user-settings-theme-btn--pink{border-color:#d98cb3}.user-settings-theme-btn--pink.user-settings-theme-btn--active{color:#fff;background-color:#c63980;border-color:#c63980}.user-settings-theme-btn--pink.user-settings-theme-btn--active:hover{background-color:#936}
.article-container{background-color:var(--light-primary-bg);max-width:600px;color:var(--light-primary-text);border-radius:var(--default-border-radius);margin:0 auto;padding:50px 20px 20px;line-height:1.8;position:relative}.article-close-button{width:36px;height:36px;color:var(--light-secondary-text);cursor:pointer;background:0 0;border:none;border-radius:50%;font-size:28px;line-height:1;transition:background-color .2s,color .2s;position:absolute;top:10px;right:10px}.article-close-button:hover{color:var(--dark-primary-bg);background-color:#0000001a}.article-container h1,.article-container h2{color:var(--dark-primary-bg);text-align:center}.article-container p,.article-container ul{color:var(--light-secondary-text);line-height:1.6}.article-container ul{margin-left:20px;list-style-type:disc}.article-container ul li{margin-bottom:10px}.article-container img{max-width:100%;margin:20px 0}.article-container a{color:var(--primary-link-color);text-decoration:underline}.article-container a:hover{color:var(--hover-link-color);text-decoration:none}
.whiteboard-desktop-outer-wrapper{flex-direction:column;width:100%;display:flex}.whiteboard-desktop-scrollable-container{flex-direction:row;align-items:flex-start;padding:0 12px 8px;display:flex}.whiteboard-desktop-scrollable-controls{flex-direction:column;align-items:center;gap:8px;padding-top:20px;padding-right:16px;display:flex}.whiteboard-desktop-scrollable-controls>button{width:100%;max-width:150px}.whiteboard-desktop-scrollable-canvas-container{justify-content:center;align-items:center;display:flex;position:relative}.cartesian-grid-overlay{pointer-events:none;opacity:.4;background-image:linear-gradient(90deg,#ddd 1px,#0000 1px),linear-gradient(#ddd 1px,#0000 1px);background-size:60px 60px;width:100%;height:100%;position:absolute;top:0;left:0}.cursor-eraser{cursor:url(/eraser.png) 8 24,auto}.cursor-pan{cursor:grab}.cursor-pan:active{cursor:grabbing}.new-board-button-large{background-color:var(--btn-primary-bg);width:100%;color:var(--btn-primary-text);border-radius:var(--btn-radius);cursor:pointer;border:none;margin-bottom:24px;padding:20px 32px;font-size:1.4rem;font-weight:600;transition:all .2s}.new-board-button-large:hover{background-color:var(--btn-primary-hover);transform:translateY(-2px)}.new-board-button-large:active{transform:translateY(0)}.board-card-wrapper{margin-bottom:12px}.board-card{cursor:pointer;text-align:left;background-color:#d8f3dc;border:none;border-radius:8px;justify-content:space-between;align-items:center;width:100%;min-height:80px;padding:16px 16px 16px 24px;transition:transform .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 4px #00000014}.board-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.board-card-content{z-index:1;flex:1;min-width:0;position:relative}.board-card-name{color:#1b4332;white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:1.1rem;font-weight:600;overflow:hidden}.board-card-meta{color:#40916c;flex-wrap:wrap;gap:12px;font-size:.85rem;display:flex}.board-card-date{opacity:.9}.board-rename-button{z-index:2;padding:var(--btn-padding-xs);background-color:var(--btn-secondary-bg);border:1px solid var(--btn-secondary-border);border-radius:var(--btn-radius);color:var(--btn-secondary-text);cursor:pointer;flex-shrink:0;margin-left:12px;font-size:.75rem;font-weight:500;transition:all .2s;position:relative}.board-rename-button:hover{background-color:var(--btn-secondary-hover-bg);transform:translateY(-1px)}.board-card-actions{z-index:2;flex-shrink:0;gap:8px;margin-left:12px;display:flex;position:relative}.board-action-button{color:#1b4332;cursor:pointer;background-color:#ffffffb3;border:1px solid #40916c;border-radius:4px;padding:6px 12px;font-size:.8rem;transition:background-color .15s}.board-action-button:hover{background-color:#fffffff2}.board-actions-row{gap:12px;margin-bottom:24px;display:flex}.board-actions-row .new-board-button-large{flex:1;margin-bottom:0}.new-bundle-button{background-color:var(--btn-success-bg);color:var(--btn-success-text);border-radius:var(--btn-radius);cursor:pointer;border:none;padding:20px 32px;font-size:1.4rem;font-weight:600;transition:all .2s}.new-bundle-button:hover{background-color:var(--btn-success-hover);transform:translateY(-2px)}.new-lesson-button{color:#fff;border-radius:var(--btn-radius);cursor:pointer;background:linear-gradient(135deg,#8b5cf6,#6366f1);border:none;padding:20px 32px;font-size:1.4rem;font-weight:600;transition:all .2s}.new-lesson-button:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#4f46e5);transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf659}.new-lesson-button:disabled{opacity:.7;cursor:wait}.new-lesson-button.success{background:linear-gradient(135deg,#22c55e,#16a34a)}.bundles-section{margin-bottom:32px}.bundles-section h2{color:#1b4332;margin-bottom:16px;font-size:1.3rem}.bundles-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;display:grid}.bundle-stack{background-color:#e8f5e9;border-radius:12px;padding:16px;transition:box-shadow .2s;box-shadow:0 2px 8px #0000001a}.bundle-stack:hover{box-shadow:0 4px 16px #00000026}.bundle-stack.bundle-active{background-color:#d8f3dc;border:2px solid #2d6a4f}.bundle-header{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.bundle-name{color:#1b4332;font-size:1.1rem;font-weight:600}.bundle-count{color:#52796f;margin-left:auto;font-size:.85rem}.bundle-actions{flex-wrap:wrap;gap:6px;display:flex}.bundle-action-btn{color:#1b4332;cursor:pointer;background-color:#fffc;border:1px solid #74c69d;border-radius:4px;padding:4px 10px;font-size:.75rem;transition:background-color .15s}.bundle-action-btn:hover{background-color:#fff}.bundle-add-board-btn{color:#fff;background-color:#52b788;border-color:#40916c;font-weight:600}.bundle-add-board-btn:hover{background-color:#40916c}.bundle-active-indicator{color:#fff;background-color:#2d6a4f;border-color:#2d6a4f}.bundle-active-indicator:hover{background-color:#1b4332}.bundle-delete-btn{color:#b54545;border-color:#d97373}.bundle-delete-btn:hover{background-color:#fdeaea}.bundle-start-lesson-btn{color:#fff;background-color:#7b2cbf;border-color:#5a189a;font-weight:600}.bundle-start-lesson-btn:hover{background-color:#5a189a}.bundle-start-lesson-btn.success{background-color:#40916c;border-color:#2d6a4f}.bundle-start-lesson-btn:disabled{opacity:.7;cursor:wait}.bundle-resume-btn{color:#fff;cursor:pointer;background-color:#2196f3;border:1px solid #1976d2;border-radius:4px;padding:4px 12px;font-size:.75rem;font-weight:600;transition:background-color .15s}.bundle-resume-btn:hover{background-color:#1976d2}.bundle-boards{min-height:70px;margin-bottom:8px;position:relative}.bundle-board-preview{cursor:pointer;background-color:#d8f3dc;border-radius:6px;width:200px;padding:8px;transition:transform .15s,box-shadow .15s;position:absolute;top:0;left:0;overflow:hidden;box-shadow:0 1px 4px #0000001a}.bundle-board-preview:hover{box-shadow:0 2px 8px #00000026;z-index:10!important}.bundle-board-name{color:#1b4332;white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:.8rem;display:block;overflow:hidden}.bundle-more{color:#52796f;font-size:.85rem;font-style:italic;position:absolute;bottom:0;right:0}.bundle-expanded{margin-top:8px}.bundle-expanded summary{cursor:pointer;color:#40916c;padding:4px 0;font-size:.9rem}.bundle-expanded summary:hover{color:#2d6a4f}.bundle-board-list{margin:8px 0 0;padding:0;list-style:none}.bundle-board-list .board-card-wrapper{margin-bottom:8px}.bundle-board-list .board-card{min-height:60px;padding:12px}.standalone-boards-section{margin-bottom:24px}.standalone-boards-section h2{color:#1b4332;margin-bottom:16px;font-size:1.3rem}.no-boards-message{color:#666;padding:16px;font-style:italic}.add-to-bundle-picker{background-color:#f0f7f4;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;padding:12px;display:flex}.add-to-bundle-picker>span{color:#1b4332;font-weight:500}.bundle-picker-option{color:#fff;cursor:pointer;background-color:#74c69d;border:none;border-radius:4px;padding:6px 12px;font-size:.9rem;transition:background-color .15s}.bundle-picker-option:hover{background-color:#52b788}.bundle-picker-cancel{color:#333;cursor:pointer;background-color:#ccc;border:none;border-radius:4px;padding:6px 12px;font-size:.9rem}.bundle-picker-cancel:hover{background-color:#bbb}.bundle-controls-section{border-top:1px solid #ddd;flex-direction:column;gap:8px;margin-top:16px;padding-top:16px;display:flex}.current-bundle-badge{color:#1b4332;text-align:center;background-color:#d8f3dc;border:1px solid #74c69d;border-radius:4px;padding:6px 10px;font-size:.85rem}.bundle-next-btn{background-color:#52796f!important}.bundle-next-btn:hover{background-color:#3a5a4c!important}.bundle-picker-wrapper{position:relative}.bundle-picker-dropdown{z-index:100;background-color:#fff;border:1px solid #ccc;border-radius:6px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow:hidden;box-shadow:0 4px 12px #00000026}.bundle-picker-item{text-align:left;cursor:pointer;color:#1b4332;background:0 0;border:none;border-bottom:1px solid #eee;width:100%;padding:10px 12px;font-size:.9rem;transition:background-color .15s;display:block}.bundle-picker-item:last-child{border-bottom:none}.bundle-picker-item:hover{background-color:#e8f5e9}.next-question-controls{gap:6px;display:flex}.next-question-btn{flex:1;font-weight:600;background-color:#2d6a4f!important}.next-question-btn:hover{background-color:#1b4332!important}.next-question-btn:disabled{cursor:wait;background-color:#95d5b2!important}.harder-btn{font-weight:500;background-color:#9d4edd!important}.harder-btn:hover{background-color:#7b2cbf!important}.harder-btn:disabled{cursor:wait;background-color:#c77dff!important}.whiteboard-desktop-toolbar-col{flex-direction:column;align-self:stretch;gap:8px;display:flex}.whiteboard-desktop-canvas-col{flex-direction:column;justify-content:flex-start;align-items:center;display:flex}.whiteboard-linked-question-banner{background-color:#f0f7ff;border:1px solid #b8d4f0;border-radius:8px;margin-bottom:12px;padding:16px 20px}.whiteboard-linked-question-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.whiteboard-linked-question-nav{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.whiteboard-nav-group{align-items:center;gap:6px;display:flex}.whiteboard-nav-btn{cursor:pointer;border-radius:4px;padding:2px 6px;font-size:12px}.whiteboard-nav-btn--question{color:#2e7d32;background-color:#e8f5e9;border:1px solid #a5d6a7}.whiteboard-nav-btn--question:disabled{color:#999;cursor:not-allowed;background-color:#f5f5f5}.whiteboard-nav-btn--board{color:#1565c0;background-color:#e3f2fd;border:1px solid #b8d4f0}.whiteboard-nav-btn--board:disabled{color:#999;cursor:not-allowed;background-color:#f5f5f5}.whiteboard-nav-btn--legacy{color:#1565c0;background-color:#e3f2fd;border:1px solid #b8d4f0;border-radius:4px;padding:2px 8px;font-size:12px}.whiteboard-nav-btn--legacy:disabled{color:#999;cursor:not-allowed;background-color:#f5f5f5}.whiteboard-nav-label--question{color:#2e7d32;font-size:12px;font-weight:500}.whiteboard-nav-label--board{color:#4a6a8a;font-size:12px;font-weight:500}.whiteboard-header-actions{align-items:center;gap:8px;display:flex}.whiteboard-edit-btn{cursor:pointer;color:#e65100;background-color:#0000;border:1px solid #ffb74d;border-radius:4px;padding:4px 10px;font-size:12px}.whiteboard-edit-btn:hover{background-color:#fff3e0}.whiteboard-feedback-btn{cursor:pointer;color:#8a4a4a;background-color:#0000;border:1px solid #9b59b6;border-radius:4px;padding:4px 10px;font-size:12px}.whiteboard-homework-btn{cursor:pointer;color:#fff;background-color:#10b981;border:1px solid #10b981;border-radius:4px;padding:4px 10px;font-size:12px;font-weight:500}.whiteboard-homework-btn:hover{background-color:#059669;border-color:#059669}.whiteboard-question-footer{border-top:1px solid #e0e8f0;justify-content:flex-end;margin-top:12px;padding-top:10px;display:flex}.whiteboard-mark-scheme-btn{cursor:pointer;color:#555;background-color:#f8f8f8;border:1px solid #ddd;border-radius:4px;padding:5px 12px;font-size:12px;font-weight:500;transition:all .15s}.whiteboard-mark-scheme-btn:hover{background-color:#eee;border-color:#ccc}.whiteboard-mark-scheme-btn.active{color:#e65100;background-color:#fff8e1;border-color:#ffcc80}.whiteboard-mark-scheme-content{color:#333;background-color:#fff8e1;border:1px solid #ffcc80;border-radius:6px;margin-top:12px;padding:12px;font-size:14px;line-height:1.6}.whiteboard-mark-scheme-item{background:#fff9;border-radius:4px;gap:10px;margin-bottom:8px;padding:8px;display:flex}.whiteboard-mark-scheme-item:last-child{margin-bottom:0}.whiteboard-mark-scheme-mark{color:#fff;background:#e65100;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;min-width:32px;height:22px;font-size:.7rem;font-weight:600;display:flex}.whiteboard-mark-scheme-details{color:#333;flex:1;min-width:0;font-size:.85rem;line-height:1.4}.whiteboard-mark-scheme-expected{color:#666;margin-top:4px;font-style:italic}.whiteboard-question-container{align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.whiteboard-question-container .whiteboard-linked-question-banner{flex:1;margin-bottom:0}.whiteboard-question-text{color:#1a3a5a;font-size:18px;line-height:1.5}.whiteboard-new-board-btn{color:#2e7d32;cursor:pointer;background:#fff;border:2px solid #2e7d32;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:32px;font-weight:300;line-height:1;transition:all .15s;display:flex}.whiteboard-new-board-btn:hover{background:#32cd32;transform:scale(1.08)}.whiteboard-new-board-btn:active{transform:scale(.95)}.whiteboard-pasting-banner{text-align:center;background-color:#fff8e6;border:1px solid #e6d4a8;border-radius:8px;margin-bottom:12px;padding:16px 20px}.whiteboard-pasting-text{color:#8a6a2a;font-size:14px}.whiteboard-paste-error-banner{background-color:#fff0f0;border:1px solid #f0b8b8;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:12px;padding:12px 20px;display:flex}.whiteboard-paste-error-text{color:#8a2a2a;font-size:14px}.whiteboard-dismiss-btn{cursor:pointer;color:#8a2a2a;background-color:#0000;border:1px solid #d4a8a8;border-radius:4px;padding:4px 12px;font-size:12px}.whiteboard-canvas{touch-action:none;background-color:#fff;border:1px solid #ccc}.whiteboard-auto-generating{text-align:center;background-color:#f0f7ff;border:1px solid #b8d4f0;border-radius:8px;margin-bottom:12px;padding:32px 24px}.whiteboard-auto-generating-spinner{border:3px solid #e0e0e0;border-top-color:#667eea;border-radius:50%;width:48px;height:48px;margin:0 auto 16px;animation:1s linear infinite whiteboard-spin}@keyframes whiteboard-spin{to{transform:rotate(360deg)}}.whiteboard-auto-generating-text{color:#1a3a5a;margin-bottom:12px;font-size:18px;font-weight:500}.whiteboard-auto-generating-context{color:#667eea;margin-bottom:8px;font-size:16px;font-weight:600}.whiteboard-auto-generating-spec{color:#666;font-size:14px;line-height:1.4}.whiteboard-auto-generate-error{text-align:center;background-color:#fff0f0;border:1px solid #f0b8b8;border-radius:8px;margin-bottom:12px;padding:24px}.whiteboard-auto-generate-error-text{color:#8a2a2a;margin-bottom:16px;font-size:14px}.whiteboard-auto-generate-retry-btn{color:#fff;cursor:pointer;background-color:#667eea;border:none;border-radius:6px;padding:8px 20px;font-size:14px;font-weight:500}.whiteboard-auto-generate-retry-btn:hover{background-color:#5a6fd6}
.whiteboard-toolbar{z-index:100;width:120px;margin-left:12px;margin-right:12px;position:relative}.whiteboard-toolbar .reusable-button-small{margin-top:0}.whiteboard-toolbar-card{background:linear-gradient(140deg,var(--whiteboard-toolbar-surface),#fff);border:1px solid var(--whiteboard-toolbar-border);border-radius:var(--default-border-radius);flex-direction:column;gap:10px;padding:10px;display:flex;position:sticky;top:12px;box-shadow:0 12px 36px #0f172a1f}.toolbar-header{align-items:center;gap:4px;display:flex}.toolbar-title{border-radius:var(--mild-border-radius);border:1px solid var(--whiteboard-toolbar-border);min-width:0;color:var(--light-secondary-text);text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:#fff;flex:1;padding:4px 6px;font-size:11px;font-weight:700;transition:transform .1s,box-shadow .2s;overflow:hidden}.toolbar-title:hover{transform:translateY(-1px);box-shadow:0 6px 16px #2563eb26}.toolbar-rename-input{border:1px solid var(--whiteboard-toolbar-border);border-radius:var(--mild-border-radius);background:#fff;outline:none;flex:1;padding:8px 10px;font-size:14px}.toolbar-rename-input:focus{border-color:var(--whiteboard-toolbar-accent);box-shadow:0 0 0 2px #2563eb33}.toolbar-chip{border:1px solid var(--whiteboard-toolbar-accent);color:var(--whiteboard-toolbar-accent);cursor:pointer;white-space:nowrap;background:#2563eb14;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:600;transition:background .2s,transform .1s}.toolbar-chip:hover{background:#2563eb29;transform:translateY(-1px)}.toolbar-bundle{border:1px solid var(--whiteboard-toolbar-border);border-radius:var(--default-border-radius);background:linear-gradient(135deg,#f0fdf4,#ecfeff);flex-direction:column;gap:10px;padding:10px 12px;display:flex}.toolbar-bundle-meta{justify-content:space-between;align-items:center;display:flex}.toolbar-bundle-name{color:var(--light-secondary-text);font-weight:700}.toolbar-bundle-controls{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:8px;display:grid}.toolbar-bundle-index{text-align:center;color:var(--whiteboard-toolbar-accent);font-weight:700}.toolbar-bundle-compact{border:1px solid var(--whiteboard-toolbar-border);border-radius:var(--mild-border-radius);background:linear-gradient(135deg,#f0fdf4,#ecfeff);padding:6px}.toolbar-bundle-nav-row{justify-content:space-between;align-items:center;gap:4px;display:flex}.toolbar-bundle-arrow{border:1px solid var(--whiteboard-toolbar-border);width:24px;height:24px;color:var(--light-secondary-text);cursor:pointer;background:#fff;border-radius:4px;justify-content:center;align-items:center;font-size:10px;transition:all .15s;display:flex}.toolbar-bundle-arrow:hover:not(:disabled){background:var(--whiteboard-toolbar-accent);color:#fff;border-color:var(--whiteboard-toolbar-accent)}.toolbar-bundle-arrow:disabled{opacity:.4;cursor:not-allowed}.toolbar-bundle-index-compact{color:var(--whiteboard-toolbar-accent);font-size:11px;font-weight:700}.toolbar-lesson-btn{color:#fff;background:linear-gradient(135deg,#8b5cf6,#6366f1);border-color:#7c3aed;grid-column:1/-1;margin-top:4px}.toolbar-lesson-btn:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#4f46e5);transform:translateY(-1px);box-shadow:0 6px 20px #8b5cf659}.toolbar-lesson-btn:disabled{opacity:.7;cursor:wait}.toolbar-lesson-btn.success{background:linear-gradient(135deg,#22c55e,#16a34a);border-color:#16a34a}.toolbar-subtle{color:var(--light-tertiary-text);letter-spacing:.2px;font-size:11px}.toolbar-section{border-top:1px solid var(--borders-dividers);flex-direction:column;gap:10px;padding-top:12px;display:flex}.toolbar-section:first-of-type{border-top:none;padding-top:0}.toolbar-section-heading{color:var(--light-tertiary-text);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:700}.toolbar-subtext{color:var(--light-tertiary-text);font-size:10px}.toolbar-chip-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.toolbar-tool-stack{flex-direction:column;gap:4px;display:flex}.toolbar-tool-stack .reusable-button-small{text-align:left;border-radius:16px;min-height:28px;padding:6px 10px;font-size:12px}.toolbar-tool-stack .reusable-button-small:hover:not(:disabled){background-color:#3b5998}.toolbar-pill{border:1px solid var(--whiteboard-toolbar-border);color:var(--light-secondary-text);background:#fff;border-radius:999px;font-weight:600;transition:all .18s;box-shadow:0 2px 8px #0000000d}.toolbar-pill.is-active{background:var(--whiteboard-toolbar-accent);color:#fff;border-color:var(--whiteboard-toolbar-accent);box-shadow:0 10px 24px #2563eb40}.toolbar-thickness{position:relative}.toolbar-thickness-trigger{border:1px solid var(--whiteboard-toolbar-border);border-radius:var(--mild-border-radius);background:var(--light-primary-bg);width:100%;color:var(--light-secondary-text);cursor:pointer;justify-content:space-between;align-items:center;padding:6px 8px;font-size:12px;font-weight:600;transition:border-color .15s;display:flex}.toolbar-thickness-trigger:hover{border-color:var(--whiteboard-toolbar-accent)}.toolbar-thickness-indicator{background:var(--whiteboard-toolbar-accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:9px;display:flex}.toolbar-thickness-popup{border:1px solid var(--whiteboard-toolbar-border);border-radius:var(--mild-border-radius);z-index:10000;background:#fff;min-width:160px;margin-left:8px;padding:12px;position:absolute;top:0;left:100%;box-shadow:0 8px 24px #0000001f}.toolbar-thickness-popup-header{color:var(--light-tertiary-text);margin-bottom:8px;font-size:11px}.toolbar-thickness-controls{align-items:center;gap:8px;display:flex}.toolbar-mini-button{border-radius:6px;min-width:28px;padding:4px 8px;font-size:12px}.toolbar-thickness-rail{background:#2563eb26;border-radius:999px;flex:1;height:6px;overflow:hidden}.toolbar-thickness-fill{background:linear-gradient(90deg,var(--whiteboard-toolbar-accent),var(--whiteboard-toolbar-success));border-radius:999px;height:100%}.toolbar-actions-grid{flex-direction:column;gap:4px;display:flex}.toolbar-undo-redo-row{gap:4px;display:flex}.toolbar-undo-redo-row .toolbar-button{flex:1;min-width:0;padding:6px 4px;font-size:14px}.toolbar-button{border-radius:var(--mild-border-radius);border:1px solid var(--whiteboard-toolbar-border);background:var(--light-primary-bg);width:100%;color:var(--light-secondary-text);min-height:28px;padding:6px 8px;font-size:12px;font-weight:600;box-shadow:0 4px 12px #0000000f}.toolbar-button.secondary{color:#312e81;background:#eef2ff;border-color:#c7d2fe}.toolbar-button.success{background:var(--whiteboard-toolbar-success);color:#fff;border-color:var(--whiteboard-toolbar-success)}.toolbar-button.success:hover:not(:disabled){background:#16a34a}.toolbar-button.primary{background:var(--whiteboard-toolbar-accent);color:#fff;border-color:var(--whiteboard-toolbar-accent)}.toolbar-button.primary:hover:not(:disabled){background:#1d4ed8}.toolbar-button.warning{color:#fff;background:#f59e0b;border-color:#d97706}.toolbar-button.warning:hover:not(:disabled){background:#d97706}.toolbar-toggle-row{border:1px solid var(--whiteboard-toolbar-border);border-radius:var(--mild-border-radius);background:#f8fafc;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.toolbar-placeholder{border:1px dashed var(--whiteboard-toolbar-border);height:100%;color:var(--light-tertiary-text);border-radius:var(--mild-border-radius);place-items:center;font-size:12px;display:grid}.toolbar-status-line{color:var(--light-tertiary-text);text-align:right;font-size:12px}.toolbar-alert{color:#b91c1c;border-radius:var(--mild-border-radius);background:#fff1f2;border:1px solid #fecdd3;margin-top:6px;padding:10px 12px;font-size:12px}.toolbar-settings-btn{border:1px solid var(--whiteboard-toolbar-border);background:var(--light-primary-bg);cursor:pointer;opacity:.6;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;margin:auto auto 0;padding:0;transition:opacity .15s,transform .15s;display:flex}.toolbar-settings-btn:hover{opacity:1;transform:scale(1.1)}.toolbar-settings-btn img{opacity:.7}.toolbar-notes-btn{margin-top:8px;color:#666!important;background:#fffef0!important;border-color:#e8e4c8!important}.toolbar-notes-btn:hover{background:#fff9d4!important;border-color:#d4c88c!important}.toolbar-notes-btn.active{color:#8a6d00!important;background:#fff3b8!important;border-color:#c9a227!important}.whiteboard-toolbar{transition:width .2s ease-out}.whiteboard-toolbar--collapsed{width:48px;margin-right:8px}.whiteboard-toolbar-card--collapsed{flex-direction:column;align-items:center;gap:12px;min-height:280px;padding:8px;display:flex}.toolbar-collapse-toggle{border:1px solid var(--whiteboard-toolbar-border);width:32px;height:32px;color:var(--light-secondary-text);cursor:pointer;background:#fff;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:background-color .15s,transform .15s;display:flex}.toolbar-collapse-toggle:hover{background:#2563eb14;transform:scale(1.05)}.toolbar-collapse-toggle--expanded{margin-right:auto}.toolbar-collapse-icon{font-size:10px;line-height:1}.toolbar-quick-actions{flex-direction:column;gap:8px;display:flex}.toolbar-quick-btn{border:1px solid var(--whiteboard-toolbar-border);width:32px;height:32px;color:var(--light-secondary-text);cursor:pointer;background:#fff;border-radius:6px;justify-content:center;align-items:center;font-size:12px;font-weight:600;transition:all .15s;display:flex}.toolbar-quick-btn:hover{border-color:var(--whiteboard-toolbar-accent);background:#2563eb14}.toolbar-quick-btn.active{background:var(--whiteboard-toolbar-accent);color:#fff;border-color:var(--whiteboard-toolbar-accent)}.toolbar-quick-btn--assess{margin-top:auto}.toolbar-quick-btn--assess.success{background:var(--whiteboard-toolbar-success);color:#fff;border-color:var(--whiteboard-toolbar-success)}.toolbar-quick-btn--assess.warning{color:#fff;background:#f59e0b;border-color:#d97706}.toolbar-quick-btn--assess.primary{background:var(--whiteboard-toolbar-accent);color:#fff;border-color:var(--whiteboard-toolbar-accent)}.toolbar-connection-status{flex-shrink:0;align-items:center;display:flex}.toolbar-chip--connected{color:#16a34a;cursor:default;background:#22c55e1a;border:1px solid #22c55e;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600}.toolbar-chip--disconnected{color:#dc2626;cursor:pointer;background:#ef44441a;border:1px solid #ef4444;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600;transition:background .15s}.toolbar-chip--disconnected:hover{background:#ef444433}.toolbar-chip--share{color:#7c3aed;cursor:pointer;background:#8b5cf61a;border:1px solid #8b5cf6;border-radius:999px;flex-shrink:0;padding:4px 8px;font-size:11px;font-weight:600;transition:background .15s,transform .1s}.toolbar-chip--share:hover{background:#8b5cf633;transform:translateY(-1px)}.toolbar-chip--end{color:#dc2626;cursor:pointer;background:#ef44441a;border:1px solid #ef4444;border-radius:999px;margin-left:6px;padding:4px 10px;font-size:11px;font-weight:600;transition:background .15s,transform .1s}.toolbar-chip--end:hover:not(:disabled){background:#ef444433;transform:translateY(-1px)}.toolbar-chip--end:disabled{opacity:.7;cursor:wait}.toolbar-avatars{flex-shrink:0;align-items:center;display:flex}.toolbar-avatar{color:#fff;cursor:default;background:linear-gradient(135deg,#8b5cf6,#6366f1);border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin-left:-6px;font-size:11px;font-weight:600;display:flex}.toolbar-avatar:first-child{margin-left:0}.toolbar-avatar--overflow{background:#64748b;font-size:10px}@media (max-width:900px){.whiteboard-toolbar{width:100%;margin-left:0;margin-right:0}.whiteboard-toolbar--collapsed{width:100%}.whiteboard-toolbar-card--collapsed{flex-direction:row;justify-content:flex-start}.toolbar-quick-actions{flex-direction:row}.whiteboard-toolbar-card{position:relative;top:0}.toolbar-chip-row,.toolbar-bundle-controls{grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}.toolbar-thickness-popup{margin-top:8px;margin-left:0;top:100%;left:0}}
.question-picker{background:#fff;border-radius:12px;min-width:280px;max-width:320px;padding:16px;box-shadow:0 8px 32px #00000026}.question-picker-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.question-picker-header h3{color:var(--light-primary-text);margin:0;font-size:16px;font-weight:600}.question-picker-close{color:#9ca3af;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;font-size:20px;line-height:1}.question-picker-close:hover{color:#374151;background:#f3f4f6}.question-picker-quick-actions{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.question-picker-quick-btn{color:#374151;cursor:pointer;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;justify-content:space-between;align-items:center;padding:10px 12px;font-size:14px;font-weight:500;transition:all .15s;display:flex}.question-picker-quick-btn:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db}.question-picker-quick-btn:disabled{opacity:.5;cursor:not-allowed}.question-picker-badge{color:var(--whiteboard-toolbar-accent);background:#2563eb1a;border-radius:999px;padding:2px 6px;font-size:11px;font-weight:600}.question-picker-divider{background:#e5e7eb;height:1px;margin:12px 0}.question-picker-config{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.question-picker-option{flex-direction:column;gap:4px;display:flex}.question-picker-option label{color:#6b7280;text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.question-picker-option select{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:8px 10px;font-size:14px;transition:border-color .15s}.question-picker-option select:focus{border-color:var(--whiteboard-toolbar-accent);outline:none;box-shadow:0 0 0 2px #2563eb1a}.question-picker-primary-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:8px;width:100%;padding:12px;font-size:14px;font-weight:600;transition:all .15s}.question-picker-primary-btn:hover:not(:disabled){background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-1px);box-shadow:0 4px 12px #16a34a4d}.question-picker-primary-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.question-picker-hint{color:#9ca3af;text-align:center;margin:8px 0 0;font-size:11px}.question-picker-popup{z-index:100;position:absolute}.question-picker-popup--above{margin-bottom:8px;bottom:100%}.question-picker-popup--below{margin-top:8px;top:100%}.question-picker-popup--left{left:0}.question-picker-popup--center{left:50%;transform:translate(-50%)}.question-picker-popup--right{right:0}
.suggested-questions-panel{background:var(--secondary-background,#f8f9fa);border-radius:8px;margin-top:1rem;padding:1rem}.suggested-questions-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.suggested-questions-header h3{color:var(--text-color,#333);margin:0;font-size:1.1rem}.suggested-questions-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.generate-questions-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;transition:opacity .2s}.generate-questions-btn:hover:not(:disabled){opacity:.9}.generate-questions-btn:disabled{opacity:.6;cursor:not-allowed}.generate-chemistry-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#11998e 0%,#38ef7d 100%);border:none;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:opacity .2s}.generate-chemistry-btn:hover:not(:disabled){opacity:.9}.generate-chemistry-btn:disabled{opacity:.6;cursor:not-allowed}.suggested-questions-error{color:#c00;background:#fee;border-radius:4px;margin-bottom:1rem;padding:.5rem;font-size:.9rem}.suggested-questions-reasoning{color:var(--muted-text,#666);background:var(--tertiary-background,#eee);border-radius:4px;margin-bottom:1rem;padding:.5rem;font-size:.85rem}.suggested-questions-empty{text-align:center;color:var(--muted-text,#888);padding:2rem 1rem;font-style:italic}.suggested-questions-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.suggested-question-card{background:var(--card-background,white);border:1px solid var(--border-color,#ddd);border-radius:8px;padding:1rem;transition:box-shadow .2s}.suggested-question-card:hover{box-shadow:0 2px 8px #0000001a}.suggested-question-text{margin-bottom:.5rem;font-size:1rem;line-height:1.5}.suggested-question-hint{color:var(--muted-text,#666);margin-bottom:.75rem;font-size:.9rem}.hint-label{color:var(--accent-color,#667eea);font-weight:600}.suggested-question-actions{gap:.5rem;display:flex}.accept-question-btn,.dismiss-question-btn{cursor:pointer;border-radius:4px;padding:.4rem .8rem;font-size:.85rem;transition:background .2s}.accept-question-btn{background:var(--success-color,#28a745);color:#fff;border:none}.accept-question-btn:hover{background:#218838}.dismiss-question-btn{color:var(--muted-text,#666);border:1px solid var(--border-color,#ddd);background:0 0}.dismiss-question-btn:hover{background:var(--secondary-background,#f0f0f0)}.suggested-question-spec-badges{flex-wrap:wrap;gap:6px;margin-bottom:.75rem;display:flex}.spec-badge{color:#2d6a4f;cursor:help;text-overflow:ellipsis;white-space:nowrap;background:linear-gradient(135deg,#e8f5e9 0%,#c8e6c9 100%);border:1px solid #a5d6a7;border-radius:12px;max-width:200px;padding:3px 8px;font-size:.75rem;display:inline-block;overflow:hidden}
