#studyziip-app-root {
  --sz-bg: #f5f7fb;
  --sz-surface: #ffffff;
  --sz-text: #172033;
  --sz-muted: #647089;
  --sz-border: #dce2ed;
  --sz-primary: #3152cc;
  --sz-primary-strong: #243fa5;
  --sz-danger: #a82c3b;
  --sz-focus: #111827;
  --sz-radius: 14px;
  color: var(--sz-text);
  background: var(--sz-bg);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  min-height: 560px;
  border: 1px solid var(--sz-border);
  border-radius: var(--sz-radius);
  overflow: hidden;
  box-sizing: border-box;
}
#studyziip-app-root[data-mode="fullscreen"] { min-height: 100vh; border: 0; border-radius: 0; }
#studyziip-app-root *, #studyziip-app-root *::before, #studyziip-app-root *::after { box-sizing: border-box; }
#studyziip-app-root button, #studyziip-app-root input, #studyziip-app-root select, #studyziip-app-root textarea { font: inherit; }
#studyziip-app-root button { cursor: pointer; }
#studyziip-app-root button:disabled { cursor: not-allowed; opacity: .62; }
#studyziip-app-root a, #studyziip-app-root button { -webkit-tap-highlight-color: transparent; }
#studyziip-app-root :focus-visible { outline: 3px solid var(--sz-focus); outline-offset: 3px; }
#studyziip-app-root h1, #studyziip-app-root h2, #studyziip-app-root h3, #studyziip-app-root p { margin-top: 0; }
#studyziip-app-root h1 { font-size: clamp(1.8rem, 4vw, 2.5rem); line-height: 1.15; margin-bottom: .45rem; }
#studyziip-app-root h2 { font-size: 1.12rem; line-height: 1.3; margin-bottom: .4rem; }
#studyziip-app-root .sz-app { min-height: inherit; }
#studyziip-app-root .sz-skip-link { position: absolute; left: -9999px; z-index: 1000; background: var(--sz-text); color: white; padding: .65rem 1rem; }
#studyziip-app-root .sz-skip-link:focus { left: 1rem; top: 1rem; }
#studyziip-app-root .sz-header { display: flex; align-items: center; gap: 1rem; padding: .85rem 1rem; background: var(--sz-surface); border-bottom: 1px solid var(--sz-border); position: sticky; top: 0; z-index: 20; }
#studyziip-app-root .sz-brand { display: flex; align-items: center; gap: .55rem; font-weight: 750; white-space: nowrap; }
#studyziip-app-root .sz-brand__mark { display: grid; place-items: center; width: 2rem; height: 2rem; border-radius: .6rem; background: var(--sz-primary); color: white; }
#studyziip-app-root .sz-nav { display: flex; flex: 1; gap: .2rem; overflow-x: auto; }
#studyziip-app-root .sz-nav button { border: 0; background: transparent; color: var(--sz-muted); padding: .55rem .68rem; border-radius: .55rem; white-space: nowrap; }
#studyziip-app-root .sz-nav button:hover, #studyziip-app-root .sz-nav button.is-active { background: #edf1ff; color: var(--sz-primary-strong); }
#studyziip-app-root .sz-mobile-menu { display: none; border: 1px solid var(--sz-border); border-radius: .55rem; background: var(--sz-surface); padding: .5rem .65rem; }
#studyziip-app-root .sz-main { max-width: 1220px; margin: 0 auto; padding: clamp(1rem, 3vw, 2rem); }
#studyziip-app-root .sz-page-head { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; margin-bottom: 1.4rem; }
#studyziip-app-root .sz-page-head > div:first-child { max-width: 760px; }
#studyziip-app-root .sz-page-head p:last-child { color: var(--sz-muted); margin-bottom: 0; }
#studyziip-app-root .sz-eyebrow { color: var(--sz-primary); font-weight: 750; text-transform: uppercase; letter-spacing: .08em; font-size: .75rem; margin-bottom: .35rem; }
#studyziip-app-root .sz-button { border: 1px solid transparent; border-radius: .65rem; padding: .62rem .9rem; font-weight: 700; background: var(--sz-primary); color: white; }
#studyziip-app-root .sz-button:hover { background: var(--sz-primary-strong); }
#studyziip-app-root .sz-button--secondary { background: var(--sz-surface); color: var(--sz-text); border-color: var(--sz-border); }
#studyziip-app-root .sz-button--secondary:hover { background: #f3f5f9; }
#studyziip-app-root .sz-button--danger { background: transparent; color: var(--sz-danger); border-color: #efc9ce; }
#studyziip-app-root .sz-button--danger:hover { background: #fff0f2; }
#studyziip-app-root .sz-button--small { padding: .45rem .65rem; }
#studyziip-app-root .sz-inline-actions, #studyziip-app-root .sz-card-actions, #studyziip-app-root .sz-modal-actions { display: flex; gap: .5rem; flex-wrap: wrap; align-items: center; }
#studyziip-app-root .sz-metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: .8rem; margin-bottom: 1rem; }
#studyziip-app-root .sz-metric { background: var(--sz-surface); border: 1px solid var(--sz-border); border-radius: var(--sz-radius); padding: 1rem; display: flex; flex-direction: column; }
#studyziip-app-root .sz-metric strong { font-size: 1.8rem; }
#studyziip-app-root .sz-metric span { color: var(--sz-muted); font-size: .9rem; }
#studyziip-app-root .sz-muted { color: var(--sz-muted); }
#studyziip-app-root .sz-detail-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; }
#studyziip-app-root .sz-dashboard-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
#studyziip-app-root .sz-panel, #studyziip-app-root .sz-course-card, #studyziip-app-root .sz-goal-card, #studyziip-app-root .sz-task, #studyziip-app-root .sz-event, #studyziip-app-root .sz-study-row, #studyziip-app-root .sz-confidence-row { background: var(--sz-surface); border: 1px solid var(--sz-border); border-radius: var(--sz-radius); }
#studyziip-app-root .sz-panel { padding: 1rem; }
#studyziip-app-root .sz-card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
#studyziip-app-root .sz-course-card, #studyziip-app-root .sz-goal-card { padding: 1rem; position: relative; overflow: hidden; }
#studyziip-app-root .sz-course-color { position: absolute; inset: 0 auto 0 0; width: .35rem; }
#studyziip-app-root .sz-course-card > div:not(.sz-course-color) { margin-left: .4rem; }
#studyziip-app-root .sz-list { display: grid; gap: .65rem; }
#studyziip-app-root .sz-task, #studyziip-app-root .sz-event, #studyziip-app-root .sz-study-row, #studyziip-app-root .sz-confidence-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .9rem 1rem; }
#studyziip-app-root .sz-task.is-overdue { border-left: 4px solid var(--sz-danger); }
#studyziip-app-root .sz-event time { min-width: 7rem; color: var(--sz-muted); font-size: .88rem; }
#studyziip-app-root .sz-badge { display: inline-flex; padding: .18rem .45rem; border-radius: 999px; background: #eef2f8; color: #43506a; text-transform: capitalize; font-size: .75rem; font-weight: 700; }
#studyziip-app-root .sz-plain-list { list-style: none; margin: 0; padding: 0; }
#studyziip-app-root .sz-plain-list li { display: flex; justify-content: space-between; gap: .8rem; padding: .7rem 0; border-bottom: 1px solid var(--sz-border); }
#studyziip-app-root .sz-plain-list li:last-child { border-bottom: 0; }
#studyziip-app-root .sz-plain-list li > span, #studyziip-app-root .sz-plain-list li > div > span { color: var(--sz-muted); }
#studyziip-app-root .sz-empty { padding: 1.2rem; text-align: center; color: var(--sz-muted); background: #fafbfe; border: 1px dashed var(--sz-border); border-radius: var(--sz-radius); }
#studyziip-app-root .sz-empty h3 { color: var(--sz-text); margin-bottom: .3rem; }
#studyziip-app-root .sz-notice { padding: .75rem 1rem; border-radius: .65rem; margin: .75rem 0; border: 1px solid #c9d5ef; background: #f0f5ff; }
#studyziip-app-root .sz-notice--error { border-color: #e6b4ba; background: #fff1f2; color: #7b1723; }
#studyziip-app-root .sz-notice--success { border-color: #b5dbc5; background: #eefaf3; }
#studyziip-app-root .sz-loading { min-height: 220px; display: flex; justify-content: center; align-items: center; gap: .7rem; color: var(--sz-muted); }
#studyziip-app-root .sz-spinner { width: 1.2rem; height: 1.2rem; border: 2px solid var(--sz-border); border-top-color: var(--sz-primary); border-radius: 999px; animation: studyziip-spin .8s linear infinite; }
@keyframes studyziip-spin { to { transform: rotate(360deg); } }
#studyziip-app-root .sz-filters { display: flex; flex-wrap: wrap; gap: .8rem; margin-bottom: 1rem; }
#studyziip-app-root .sz-filters label { display: grid; gap: .3rem; color: var(--sz-muted); font-size: .85rem; }
#studyziip-app-root input, #studyziip-app-root select, #studyziip-app-root textarea { width: 100%; border: 1px solid #b9c3d3; border-radius: .55rem; padding: .6rem .65rem; background: var(--sz-surface); color: var(--sz-text); }
#studyziip-app-root .sz-field { display: grid; gap: .35rem; margin-bottom: .85rem; }
#studyziip-app-root .sz-field > label { font-weight: 700; }
#studyziip-app-root .sz-field__error { color: var(--sz-danger); font-size: .85rem; margin: 0; }
#studyziip-app-root .sz-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 .8rem; }
#studyziip-app-root .sz-check { display: flex; align-items: center; gap: .5rem; margin: .6rem 0 1rem; }
#studyziip-app-root .sz-check input { width: auto; }
/* Modal layer contract: .sz-main must not establish its own z-index stacking context,
   otherwise the sticky .sz-header (z-index:20) can paint above fixed dialogs. */
#studyziip-app-root .sz-modal-backdrop { position: fixed; inset: 0; z-index: 999999; background: rgba(9,16,31,.58); display: grid; place-items: center; padding: 1rem; }
#studyziip-app-root .sz-modal { width: min(680px,100%); max-height: 90vh; overflow: auto; background: var(--sz-surface); color: var(--sz-text); border-radius: var(--sz-radius); padding: 1rem; box-shadow: 0 24px 80px rgba(0,0,0,.25); }
#studyziip-app-root .sz-modal__head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
#studyziip-app-root .sz-modal__head h2 { margin: 0; }
#studyziip-app-root .sz-icon-button { width: 2.2rem; height: 2.2rem; display: grid; place-items: center; border: 1px solid var(--sz-border); border-radius: .55rem; background: var(--sz-surface); color: var(--sz-text); font-size: 1.35rem; }
#studyziip-app-root .sz-modal-actions { justify-content: flex-end; margin-top: 1rem; }
#studyziip-app-root .sz-text-button { background: transparent; border: 0; color: var(--sz-danger); text-decoration: underline; }
#studyziip-app-root progress { width: 100%; margin: .6rem 0; }
#studyziip-app-root .sz-confidence-scale { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .4rem; margin-bottom: 1rem; }
#studyziip-app-root .sz-confidence-scale span { padding: .55rem; border: 1px solid var(--sz-border); border-radius: .55rem; background: var(--sz-surface); font-size: .8rem; text-align: center; }
#studyziip-app-root .sz-visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
@media (max-width: 900px) {
  #studyziip-app-root .sz-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #studyziip-app-root .sz-metric-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #studyziip-app-root .sz-mobile-menu { display: inline-flex; margin-left: auto; }
  #studyziip-app-root .sz-nav { display: none; position: absolute; left: 1rem; right: 1rem; top: 4.2rem; background: var(--sz-surface); border: 1px solid var(--sz-border); border-radius: var(--sz-radius); padding: .5rem; box-shadow: 0 10px 30px rgba(0,0,0,.12); flex-direction: column; }
  #studyziip-app-root .sz-nav.is-open { display: flex; }
  #studyziip-app-root .sz-nav button { text-align: left; }
}
@media (max-width: 640px) {
  #studyziip-app-root .sz-main { padding: 1rem; }
  #studyziip-app-root .sz-page-head { flex-direction: column; }
  #studyziip-app-root .sz-dashboard-grid, #studyziip-app-root .sz-card-grid, #studyziip-app-root .sz-form-grid, #studyziip-app-root .sz-detail-grid { grid-template-columns: 1fr; }
  #studyziip-app-root .sz-task, #studyziip-app-root .sz-event, #studyziip-app-root .sz-study-row, #studyziip-app-root .sz-confidence-row { align-items: flex-start; flex-direction: column; }
  #studyziip-app-root .sz-confidence-scale { grid-template-columns: 1fr; }
  #studyziip-app-root .sz-export { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  #studyziip-app-root .sz-spinner { animation: none; }
}

#studyziip-app-root .sz-utility-nav { display: inline-flex; align-items: center; gap: .25rem; margin-left: auto; }
#studyziip-app-root .sz-utility-link { border: 0; background: transparent; padding: .5rem .65rem; border-radius: .45rem; cursor: pointer; color: inherit; font: inherit; }
#studyziip-app-root .sz-utility-link:hover,
#studyziip-app-root .sz-utility-link:focus-visible,
#studyziip-app-root .sz-utility-link[aria-current="page"] { background: var(--sz-surface-muted, #f4f6fb); outline: none; }
#studyziip-app-root .sz-onboarding { margin-bottom: 1.25rem; padding: 1rem 1.1rem; border: 1px solid var(--sz-border); border-radius: var(--sz-radius); background: var(--sz-surface); }
#studyziip-app-root .sz-onboarding h2 { margin-top: .15rem; }
#studyziip-app-root .sz-onboarding-steps { margin: .75rem 0 1rem 1.25rem; padding: 0; }
#studyziip-app-root .sz-onboarding-steps li { margin: .35rem 0; }
#studyziip-app-root .sz-inline-actions { display: flex; flex-wrap: wrap; gap: .5rem; }
#studyziip-app-root .sz-kb-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; margin-bottom: 1rem; }
#studyziip-app-root .sz-kb-card h2 { font-size: 1rem; margin-top: 0; }
@media (max-width: 900px) {
  #studyziip-app-root .sz-utility-nav { margin-left: 0; }
}
@media (max-width: 640px) {
  #studyziip-app-root .sz-kb-grid { grid-template-columns: 1fr; }
  #studyziip-app-root .sz-utility-nav { width: 100%; justify-content: flex-end; }
}


/* Studyziip Aura-inspired visual system: local-only, dependency-free, shortcode/block safe. */
#studyziip-app-root {
  --sz-bg: #eef4ff;
  --sz-bg-deep: #e7ebff;
  --sz-surface: rgba(255,255,255,.68);
  --sz-surface-strong: rgba(255,255,255,.88);
  --sz-surface-muted: rgba(238,243,255,.78);
  --sz-text: #11182a;
  --sz-muted: #66718a;
  --sz-border: rgba(106,122,164,.18);
  --sz-primary: #6757ff;
  --sz-primary-strong: #4f3ee8;
  --sz-accent-cyan: #25c9ed;
  --sz-accent-violet: #a66cff;
  --sz-accent-amber: #ffb84a;
  --sz-accent-emerald: #35d29a;
  --sz-danger: #d94f67;
  --sz-focus: #3d2ee9;
  --sz-shadow: 0 24px 60px rgba(65,76,125,.14);
  --sz-shadow-soft: 0 10px 28px rgba(70,82,128,.1);
  --sz-radius: 22px;
  background:
    radial-gradient(circle at 14% 8%, rgba(139,113,255,.22), transparent 28rem),
    radial-gradient(circle at 88% 18%, rgba(37,201,237,.18), transparent 26rem),
    linear-gradient(145deg,var(--sz-bg),var(--sz-bg-deep));
}
#studyziip-app-root .sz-app[data-theme="dark"] {
  --sz-bg: #070b16;
  --sz-bg-deep: #10152a;
  --sz-surface: rgba(18,24,45,.62);
  --sz-surface-strong: rgba(20,27,51,.86);
  --sz-surface-muted: rgba(28,35,64,.72);
  --sz-text: #f7f9ff;
  --sz-muted: #aab4cc;
  --sz-border: rgba(173,185,225,.14);
  --sz-primary: #8e7cff;
  --sz-primary-strong: #a99dff;
  --sz-danger: #ff7188;
  --sz-focus: #b8adff;
  --sz-shadow: 0 28px 70px rgba(0,0,0,.38);
  --sz-shadow-soft: 0 12px 34px rgba(0,0,0,.28);
}
#studyziip-app-root .sz-app {
  min-height: inherit;
  position: relative;
  isolation: isolate;
  color: var(--sz-text);
  background:
    radial-gradient(circle at 12% 8%, rgba(139,113,255,.2), transparent 27rem),
    radial-gradient(circle at 88% 20%, rgba(37,201,237,.14), transparent 24rem),
    linear-gradient(145deg,var(--sz-bg),var(--sz-bg-deep));
}
#studyziip-app-root .sz-ambient {
  position: absolute;
  z-index: -1;
  pointer-events: none;
  filter: blur(22px);
  opacity: .55;
  border-radius: 999px;
}
#studyziip-app-root .sz-ambient--one { width: 18rem; height: 18rem; top: 5rem; left: -6rem; background: rgba(132,99,255,.22); }
#studyziip-app-root .sz-ambient--two { width: 20rem; height: 20rem; top: 16rem; right: -7rem; background: rgba(37,201,237,.18); }
#studyziip-app-root .sz-header {
  margin: .8rem;
  padding: .7rem .8rem;
  border: 1px solid var(--sz-border);
  border-radius: 18px;
  background: var(--sz-surface-strong);
  backdrop-filter: blur(24px) saturate(150%);
  -webkit-backdrop-filter: blur(24px) saturate(150%);
  box-shadow: var(--sz-shadow-soft);
}
#studyziip-app-root .sz-brand__mark {
  background: linear-gradient(145deg,#7968ff,#3cc8ef);
  box-shadow: 0 8px 22px rgba(103,87,255,.34), inset 0 1px 0 rgba(255,255,255,.4);
}
#studyziip-app-root .sz-nav button,
#studyziip-app-root .sz-utility-link {
  color: var(--sz-muted);
  transition: background .18s ease,color .18s ease,transform .18s ease;
}
#studyziip-app-root .sz-nav button:hover,
#studyziip-app-root .sz-nav button.is-active,
#studyziip-app-root .sz-utility-link:hover,
#studyziip-app-root .sz-utility-link[aria-current="page"] {
  color: var(--sz-text);
  background: linear-gradient(135deg,rgba(124,103,255,.14),rgba(41,196,236,.1));
  transform: translateY(-1px);
}
#studyziip-app-root .sz-theme-toggle {
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 999px;
  border: 1px solid var(--sz-border);
  color: var(--sz-text);
  background: var(--sz-surface);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.24);
  display: grid;
  place-items: center;
  padding: 0;
}
#studyziip-app-root .sz-main { position: relative; max-width: 1280px; }
#studyziip-app-root .sz-page-head {
  padding: 1.15rem 1.2rem;
  border-radius: var(--sz-radius);
  border: 1px solid var(--sz-border);
  background: linear-gradient(135deg,var(--sz-surface-strong),var(--sz-surface));
  box-shadow: var(--sz-shadow-soft);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}
#studyziip-app-root .sz-page-head h1 {
  background: linear-gradient(100deg,var(--sz-text),var(--sz-primary),var(--sz-accent-cyan));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
#studyziip-app-root .sz-eyebrow { color: var(--sz-primary-strong); }
#studyziip-app-root .sz-button {
  border-radius: 999px;
  background: linear-gradient(135deg,#6d5cff,#4f8cff);
  box-shadow: 0 8px 24px rgba(94,86,234,.25), inset 0 1px 0 rgba(255,255,255,.32);
  transition: transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
#studyziip-app-root .sz-button:hover { transform: translateY(-1px); filter: brightness(1.04); box-shadow: 0 12px 28px rgba(94,86,234,.32); }
#studyziip-app-root .sz-button--secondary {
  color: var(--sz-text);
  background: var(--sz-surface);
  border-color: var(--sz-border);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.24);
}
#studyziip-app-root .sz-button--secondary:hover { background: var(--sz-surface-strong); }
#studyziip-app-root .sz-button--danger { background: rgba(217,79,103,.08); color: var(--sz-danger); border-color: rgba(217,79,103,.25); box-shadow: none; }

#studyziip-app-root .sz-panel,
#studyziip-app-root .sz-course-card,
#studyziip-app-root .sz-goal-card,
#studyziip-app-root .sz-task,
#studyziip-app-root .sz-event,
#studyziip-app-root .sz-study-row,
#studyziip-app-root .sz-confidence-row,
#studyziip-app-root .sz-onboarding,
#studyziip-app-root .sz-metric {
  background: linear-gradient(145deg,var(--sz-surface-strong),var(--sz-surface));
  border: 1px solid var(--sz-border);
  box-shadow: var(--sz-shadow-soft);
  backdrop-filter: blur(22px) saturate(145%);
  -webkit-backdrop-filter: blur(22px) saturate(145%);
}
#studyziip-app-root .sz-panel,
#studyziip-app-root .sz-course-card,
#studyziip-app-root .sz-goal-card {
  transition: transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
#studyziip-app-root .sz-panel:hover,
#studyziip-app-root .sz-course-card:hover,
#studyziip-app-root .sz-goal-card:hover { transform: translateY(-2px); box-shadow: var(--sz-shadow); border-color: rgba(119,104,255,.26); }
#studyziip-app-root .sz-panel { padding: 1.15rem; }
#studyziip-app-root .sz-panel h2 { letter-spacing: -.015em; }
#studyziip-app-root .sz-badge {
  background: linear-gradient(135deg,rgba(103,87,255,.14),rgba(37,201,237,.12));
  color: var(--sz-primary-strong);
  border: 1px solid rgba(103,87,255,.14);
}
#studyziip-app-root .sz-empty {
  background: linear-gradient(145deg,rgba(255,255,255,.22),rgba(124,103,255,.05));
  border-color: var(--sz-border);
}
#studyziip-app-root .sz-plain-list li { border-bottom-color: var(--sz-border); }
#studyziip-app-root input,
#studyziip-app-root select,
#studyziip-app-root textarea {
  background: var(--sz-surface-strong);
  border-color: var(--sz-border);
  color: var(--sz-text);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18);
}
#studyziip-app-root input:focus,
#studyziip-app-root select:focus,
#studyziip-app-root textarea:focus {
  border-color: rgba(103,87,255,.48);
  box-shadow: 0 0 0 4px rgba(103,87,255,.1);
  outline: 0;
}
#studyziip-app-root .sz-modal-backdrop {
  background: rgba(4,8,19,.64);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
#studyziip-app-root .sz-modal {
  background: var(--sz-surface-strong);
  border: 1px solid var(--sz-border);
  border-radius: 26px;
  box-shadow: 0 32px 90px rgba(0,0,0,.35);
  backdrop-filter: blur(28px) saturate(150%);
  -webkit-backdrop-filter: blur(28px) saturate(150%);
}
#studyziip-app-root .sz-notice { background: rgba(79,140,255,.09); border-color: rgba(79,140,255,.2); }
#studyziip-app-root .sz-notice--success { background: rgba(53,210,154,.09); border-color: rgba(53,210,154,.22); }
#studyziip-app-root .sz-notice--error { background: rgba(217,79,103,.09); border-color: rgba(217,79,103,.22); }

#studyziip-app-root .sz-command-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 1rem;
  margin: 0 0 1rem;
}
#studyziip-app-root .sz-gauge-card {
  position: relative;
  overflow: hidden;
  min-height: 15rem;
  padding: 1rem;
  border-radius: 26px;
  border: 1px solid var(--sz-border);
  background: linear-gradient(145deg,var(--sz-surface-strong),var(--sz-surface));
  box-shadow: var(--sz-shadow);
  backdrop-filter: blur(24px) saturate(150%);
  -webkit-backdrop-filter: blur(24px) saturate(150%);
}
#studyziip-app-root .sz-gauge-card::after {
  content: "";
  position: absolute;
  width: 7rem;
  height: 7rem;
  right: -2.3rem;
  bottom: -2.5rem;
  border-radius: 999px;
  background: currentColor;
  filter: blur(38px);
  opacity: .14;
  pointer-events: none;
}
#studyziip-app-root .sz-gauge-card--cyan { color: var(--sz-accent-cyan); }
#studyziip-app-root .sz-gauge-card--violet { color: var(--sz-accent-violet); }
#studyziip-app-root .sz-gauge-card--amber { color: var(--sz-accent-amber); }
#studyziip-app-root .sz-gauge-card--emerald { color: var(--sz-accent-emerald); }
#studyziip-app-root .sz-gauge-wrap { position: relative; max-width: 10rem; margin: 0 auto .25rem; }
#studyziip-app-root .sz-gauge-wrap svg { display: block; width: 100%; overflow: visible; }
#studyziip-app-root .sz-gauge-track { fill: none; stroke: var(--sz-border); stroke-width: 8; stroke-linecap: round; }
#studyziip-app-root .sz-gauge-value {
  fill: none;
  stroke: currentColor;
  stroke-width: 8;
  stroke-linecap: round;
  filter: drop-shadow(0 0 5px currentColor);
}
#studyziip-app-root .sz-gauge-needle { stroke: var(--sz-text); stroke-width: 2.2; stroke-linecap: round; }
#studyziip-app-root .sz-gauge-hub { fill: var(--sz-text); stroke: currentColor; stroke-width: 2; }
#studyziip-app-root .sz-gauge-wrap strong {
  position: absolute;
  inset: auto 0 .25rem;
  display: block;
  text-align: center;
  color: var(--sz-text);
  font-size: 1.35rem;
  letter-spacing: -.04em;
}
#studyziip-app-root .sz-gauge-copy { display: grid; gap: .15rem; color: var(--sz-text); }
#studyziip-app-root .sz-gauge-copy span { font-weight: 800; }
#studyziip-app-root .sz-gauge-copy small { color: var(--sz-muted); }

#studyziip-app-root .sz-analytics-strip {
  display: grid;
  grid-template-columns: minmax(0,1.2fr) minmax(0,1.8fr);
  gap: 1rem;
  margin-bottom: 1rem;
}
#studyziip-app-root .sz-spark-panel {
  min-height: 10rem;
  padding: 1rem 1.1rem;
  border-radius: 24px;
  border: 1px solid var(--sz-border);
  background: linear-gradient(145deg,var(--sz-surface-strong),var(--sz-surface));
  box-shadow: var(--sz-shadow-soft);
  display: grid;
  grid-template-columns: minmax(8rem,.75fr) minmax(12rem,1.25fr);
  gap: 1rem;
  align-items: end;
}
#studyziip-app-root .sz-chart-kicker { color: var(--sz-muted); font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; font-weight: 800; }
#studyziip-app-root .sz-spark-panel h2 { margin: .25rem 0 0; }
#studyziip-app-root .sz-spark-bars { height: 7rem; display: flex; gap: .35rem; align-items: flex-end; }
#studyziip-app-root .sz-spark-bars span {
  position: relative;
  flex: 1;
  min-width: .55rem;
  border-radius: 999px 999px .35rem .35rem;
  background: linear-gradient(to top,#6c5cff,#28c8eb);
  box-shadow: 0 5px 16px rgba(103,87,255,.22);
}
#studyziip-app-root .sz-spark-bars i {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
}
#studyziip-app-root .sz-mini-kpis {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: .75rem;
}
#studyziip-app-root .sz-mini-kpis .sz-metric { min-height: 100%; justify-content: center; padding: .9rem; }
#studyziip-app-root .sz-mini-kpis .sz-metric strong {
  background: linear-gradient(135deg,var(--sz-primary),var(--sz-accent-cyan));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

#studyziip-app-root progress {
  appearance: none;
  height: .65rem;
  overflow: hidden;
  border-radius: 999px;
  background: var(--sz-border);
}
#studyziip-app-root progress::-webkit-progress-bar { background: var(--sz-border); border-radius: inherit; }
#studyziip-app-root progress::-webkit-progress-value { background: linear-gradient(90deg,var(--sz-primary),var(--sz-accent-cyan)); border-radius: inherit; }
#studyziip-app-root progress::-moz-progress-bar { background: linear-gradient(90deg,var(--sz-primary),var(--sz-accent-cyan)); border-radius: inherit; }

@media (max-width: 1060px) {
  #studyziip-app-root .sz-command-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #studyziip-app-root .sz-analytics-strip { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  #studyziip-app-root .sz-header { margin: .45rem; }
  #studyziip-app-root .sz-utility-nav { display: none; }
  #studyziip-app-root .sz-theme-toggle { margin-left: auto; }
  #studyziip-app-root .sz-mini-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 560px) {
  #studyziip-app-root .sz-command-grid { grid-template-columns: 1fr 1fr; gap: .7rem; }
  #studyziip-app-root .sz-gauge-card { min-height: 12.8rem; padding: .75rem; }
  #studyziip-app-root .sz-gauge-wrap { max-width: 7.5rem; }
  #studyziip-app-root .sz-spark-panel { grid-template-columns: 1fr; }
  #studyziip-app-root .sz-page-head { padding: 1rem; }
}
@media (max-width: 420px) {
  #studyziip-app-root .sz-command-grid { grid-template-columns: 1fr; }
  #studyziip-app-root .sz-gauge-card { min-height: 13.5rem; }
}
@media (prefers-reduced-motion: reduce) {
  #studyziip-app-root .sz-panel,
  #studyziip-app-root .sz-course-card,
  #studyziip-app-root .sz-goal-card,
  #studyziip-app-root .sz-button,
  #studyziip-app-root .sz-nav button,
  #studyziip-app-root .sz-utility-link { transition: none; transform: none; }
}


.sz-today-planner{margin:18px 0}.sz-quick-add{display:grid;gap:10px;margin:12px 0}.sz-quick-add input{min-width:240px;flex:1}.sz-inline-actions input{border:1px solid var(--sz-border);border-radius:10px;padding:10px 12px;background:var(--sz-surface);color:var(--sz-text)}


/* Public guest preview: visual shell only; authenticated APIs remain gated. */
#studyziip-app-root[data-auth-state="guest"] .sz-nav button:disabled,
#studyziip-app-root[data-auth-state="guest"] .sz-utility-link:disabled {
  opacity: .48;
  cursor: not-allowed;
}

#studyziip-app-root .sz-guest-preview {
  display: grid;
  gap: 1.2rem;
}

#studyziip-app-root .sz-guest-gate,
#studyziip-app-root .sz-guest-bottom-cta {
  display: flex;
  justify-content: space-between;
  gap: 1.2rem;
  align-items: center;
  padding: clamp(1.1rem, 3vw, 1.8rem);
  background: var(--sz-surface-strong);
  border: 1px solid var(--sz-border);
  border-radius: var(--sz-radius);
  box-shadow: var(--sz-shadow-soft);
}

#studyziip-app-root .sz-guest-gate > div:first-child,
#studyziip-app-root .sz-guest-bottom-cta > div:first-child {
  max-width: 760px;
}

#studyziip-app-root .sz-guest-gate p:last-child,
#studyziip-app-root .sz-guest-bottom-cta p {
  color: var(--sz-muted);
  margin-bottom: 0;
}

#studyziip-app-root .sz-guest-preview-card {
  min-height: 190px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: .55rem;
  padding: 1rem;
  background: var(--sz-surface);
  border: 1px solid var(--sz-border);
  border-radius: var(--sz-radius);
  box-shadow: var(--sz-shadow-soft);
}

#studyziip-app-root .sz-guest-preview-card strong {
  font-size: 1.08rem;
}

#studyziip-app-root .sz-guest-preview-card small {
  color: var(--sz-muted);
  line-height: 1.55;
}

#studyziip-app-root .sz-guest-login-header {
  text-decoration: none;
  white-space: nowrap;
}

#studyziip-app-root .sz-guest-bottom-cta .sz-button,
#studyziip-app-root .sz-guest-gate .sz-button {
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 760px) {
  #studyziip-app-root .sz-guest-gate,
  #studyziip-app-root .sz-guest-bottom-cta {
    flex-direction: column;
    align-items: flex-start;
  }

  #studyziip-app-root .sz-guest-gate .sz-inline-actions,
  #studyziip-app-root .sz-guest-bottom-cta .sz-button {
    width: 100%;
  }

  #studyziip-app-root .sz-guest-gate .sz-button {
    width: 100%;
  }
}


/* Shared task-course context */
#studyziip-app-root .sz-course-chip {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  width: fit-content;
  margin: 0 0 .45rem;
  padding: .28rem .62rem;
  border: 1px solid color-mix(in srgb, var(--sz-accent) 28%, var(--sz-border));
  border-radius: 999px;
  background: color-mix(in srgb, var(--sz-accent) 8%, var(--sz-surface));
  color: var(--sz-text);
  font-size: .75rem;
  font-weight: 750;
  line-height: 1.25;
  letter-spacing: .015em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#studyziip-app-root .sz-course-chip--compact {
  margin-bottom: .28rem;
  padding: .2rem .5rem;
  font-size: .7rem;
}

#studyziip-app-root .sz-course-chip.is-unavailable {
  border-style: dashed;
  color: var(--sz-muted);
  background: var(--sz-surface);
}

#studyziip-app-root .sz-task-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
  align-items: center;
}

#studyziip-app-root .sz-recommendation-line {
  display: grid;
  gap: .3rem;
}

#studyziip-app-root .sz-quick-add select {
  min-width: 180px;
}

@media (max-width: 640px) {
  #studyziip-app-root .sz-course-chip {
    max-width: min(100%, 260px);
    font-size: .7rem;
  }

  #studyziip-app-root .sz-quick-add .sz-inline-actions {
    align-items: stretch;
  }

  #studyziip-app-root .sz-quick-add input,
  #studyziip-app-root .sz-quick-add select,
  #studyziip-app-root .sz-quick-add .sz-button {
    width: 100%;
  }
}


/* Phase 4C syllabus blueprint */
#studyziip-app-root .sz-syllabus-steps {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin-bottom: 1rem;
}

#studyziip-app-root .sz-syllabus-items {
  display: grid;
  gap: .85rem;
  margin: .8rem 0;
}

#studyziip-app-root .sz-syllabus-item {
  padding: 1rem;
  border: 1px solid var(--sz-border);
  border-radius: var(--sz-radius);
  background: var(--sz-surface);
}

#studyziip-app-root .sz-syllabus-item .sz-form-grid {
  margin-top: .7rem;
}

#studyziip-app-root .sz-syllabus-plan-list li {
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
}

#studyziip-app-root .sz-syllabus-plan-list .sz-check {
  margin: 0;
}

#studyziip-app-root details {
  margin-top: .8rem;
  color: var(--sz-text);
}

#studyziip-app-root details > summary {
  cursor: pointer;
  color: var(--sz-muted);
  font-weight: 650;
}

@media (max-width: 640px) {
  #studyziip-app-root .sz-syllabus-plan-list li {
    grid-template-columns: auto 1fr;
  }
  #studyziip-app-root .sz-syllabus-plan-list li > span:last-child {
    grid-column: 2;
  }
}


/* Phase 4D weekly review + student-controlled family sharing */
#studyziip-app-root .sz-weekly-review {
  display: grid;
  gap: 1rem;
}

#studyziip-app-root .sz-review-trend {
  display: grid;
  gap: .55rem;
}

#studyziip-app-root .sz-review-trend p {
  margin: 0;
  color: var(--sz-muted);
  line-height: 1.6;
}

#studyziip-app-root .sz-review-proposal-list li {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  gap: .65rem;
  align-items: center;
}

#studyziip-app-root .sz-review-ai-summary {
  margin-top: .9rem;
  padding: 1rem;
  border: 1px solid var(--sz-border);
  border-radius: var(--sz-radius);
  background: var(--sz-surface);
}

#studyziip-app-root .sz-review-ai-summary p {
  margin-bottom: 0;
  white-space: pre-wrap;
}

#studyziip-app-root .sz-share-field-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(210px,1fr));
  gap: .55rem;
  margin: .85rem 0 1rem;
}

#studyziip-app-root .sz-share-grants {
  margin-top: 1.2rem;
}

#studyziip-app-root .sz-share-grants small {
  display: block;
  color: var(--sz-muted);
  overflow-wrap: anywhere;
}

@media (max-width: 640px) {
  #studyziip-app-root .sz-review-proposal-list li {
    grid-template-columns: auto minmax(0,1fr);
  }

  #studyziip-app-root .sz-review-proposal-list li > span:last-child {
    grid-column: 2;
  }

  #studyziip-app-root .sz-share-field-grid {
    grid-template-columns: 1fr;
  }
}


/* Phase 4E review history + shared-summary portal */
#studyziip-app-root .sz-review-history {
  display: grid;
  gap: .85rem;
  margin-top: .8rem;
}

#studyziip-app-root .sz-review-history-card {
  display: grid;
  gap: .85rem;
  padding: 1rem;
  border: 1px solid var(--sz-border);
  border-radius: var(--sz-radius);
  background: var(--sz-surface);
}

#studyziip-app-root .sz-review-history-card h3,
#studyziip-app-root .sz-review-history-card p {
  margin: .25rem 0 0;
}

#studyziip-app-root .sz-share-audit-row {
  display: grid;
  gap: .7rem;
}

#studyziip-app-root .sz-share-audit-row a {
  display: inline-block;
  margin-top: .3rem;
  overflow-wrap: anywhere;
}

#studyziip-app-root .sz-shared-summary-portal {
  width: min(960px, calc(100% - 2rem));
  margin: 2rem auto;
}

.studyziip-shared-summary-page {
  margin: 0;
  background: #f4f6fb;
}

@media (max-width: 640px) {
  #studyziip-app-root .sz-review-history-card,
  #studyziip-app-root .sz-share-audit-row {
    grid-template-columns: 1fr;
  }

  #studyziip-app-root .sz-shared-summary-portal {
    width: min(100% - 1rem, 960px);
    margin: .5rem auto 1.5rem;
  }
}


/* Phase 4F Term Review + student data portability */
#studyziip-app-root .sz-term-review {
  display: grid;
  gap: 1rem;
}

#studyziip-app-root .sz-term-timeline {
  display: grid;
  gap: .65rem;
  margin: .8rem 0 1rem;
}

#studyziip-app-root .sz-term-week {
  display: grid;
  grid-template-columns: minmax(120px,.7fr) minmax(0,1fr) minmax(0,1fr);
  gap: .75rem;
  align-items: center;
  padding: .8rem 1rem;
  border: 1px solid var(--sz-border);
  border-radius: var(--sz-radius);
  background: var(--sz-surface);
}

#studyziip-app-root .sz-term-week span {
  color: var(--sz-muted);
}

#studyziip-app-root .sz-portability-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(210px,1fr));
  gap: .55rem;
  margin: .8rem 0 1rem;
}

@media (max-width: 640px) {
  #studyziip-app-root .sz-term-week {
    grid-template-columns: 1fr;
  }

  #studyziip-app-root .sz-portability-grid {
    grid-template-columns: 1fr;
  }
}
