:root{--brand-navy: #1b2a4a;--brand-gold: #c5962c;--accent-blue: #2e5090;--worked-bg: #eaf1fa;--confusion-bg: #fbf3df;--ink: #111111;--navy-tint: #eef1f6;--navy-shade: #142037;--worked-border: #cbdcf2;--confusion-border: #ecdcb0;--confusion-ink: #6b5212;--paper: #ffffff;--page-bg: #f6f7f9;--hairline: #d8dde6;--muted: #555555;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--page-bg);line-height:1.45;font-size:16px;-webkit-font-smoothing:antialiased}a{color:var(--accent-blue)}.app{display:flex;flex-direction:column;min-height:100vh}.page{flex:1 0 auto;width:100%}.page-inner{max-width:880px;margin:0 auto;padding:24px 24px 48px}.site-header{background:var(--brand-navy);border-bottom:3px solid var(--brand-gold)}.site-header .page-inner{padding-top:16px;padding-bottom:16px}.site-header__title{display:inline-block;color:#fff;text-decoration:none;font-weight:700;font-size:19px;letter-spacing:.3px}.site-header__title:hover{text-decoration:none;color:#fff}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:12px}.site-header__user{display:flex;align-items:center;gap:14px}.site-header__name{color:#fff;font-size:13px;opacity:.85}.site-header__signout{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:700;color:var(--brand-gold);background:transparent;border:1px solid var(--brand-gold);border-radius:4px;padding:5px 12px;cursor:pointer;white-space:nowrap}.site-header__signout:hover{background:var(--brand-gold);color:var(--brand-navy)}.site-footer{flex-shrink:0;background:var(--paper);border-top:1px solid var(--hairline)}.site-footer .page-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding-top:16px;padding-bottom:16px}.site-footer__copy{color:var(--muted);font-size:13px}.site-footer__link{color:var(--muted);font-size:13px;text-decoration:none}.site-footer__link:hover{color:var(--accent-blue);text-decoration:underline}.loading{max-width:880px;margin:0 auto;padding:48px 24px;color:var(--muted);font-size:16px}h1,.block-h1{color:var(--brand-navy);font-weight:700;font-size:28px;line-height:1.3;margin:0 0 16px}h2,.block-h2{color:var(--accent-blue);font-weight:700;font-size:21px;line-height:1.35;margin:28px 0 12px}.para{margin:0 0 14px;color:var(--ink);line-height:1.5}.day-tool{margin:0 0 18px;color:var(--accent-blue);font-weight:700;font-size:14px}.two-read{background:var(--brand-navy);color:#fff;font-weight:700;font-size:16px;line-height:1.45;padding:16px 20px;border-radius:4px;margin:20px 0;border-left:6px solid var(--brand-gold)}.tool-card{background:var(--paper);border:1px solid var(--hairline);border-radius:6px;padding:20px 22px;margin:20px 0}.tool-card__name{color:var(--brand-navy);font-weight:700;font-size:19px;padding-bottom:6px;margin:0 0 14px;border-bottom:3px solid var(--brand-gold)}.tool-card__rule{margin:0 0 14px;line-height:1.5}.tool-card__section{margin:0 0 14px}.tool-card__section:last-child{margin-bottom:0}.tool-card__label{display:block;color:var(--accent-blue);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.5px;margin:0 0 6px}.tool-card__section ul{margin:0;padding-left:20px}.tool-card__section li{margin:0 0 4px;line-height:1.45}.callout{border-radius:6px;padding:16px 18px;margin:18px 0;border:1px solid var(--hairline)}.callout--worked{background:var(--worked-bg);border-color:var(--worked-border)}.callout--confusion{background:var(--confusion-bg);border-color:var(--confusion-border)}.callout__title{font-weight:700;margin:0 0 8px}.callout--worked .callout__title{color:var(--accent-blue)}.callout--confusion .callout__title{color:var(--brand-gold)}.callout__body{margin:0;line-height:1.5}.glossary{width:100%;border-collapse:collapse;margin:18px 0}.glossary__term,.glossary__def{border:1px solid var(--hairline);padding:10px 12px;vertical-align:top;text-align:left;line-height:1.45}.glossary__term{width:32%;font-weight:700;color:var(--brand-navy);background:var(--navy-tint)}.plain-legal{width:100%;border-collapse:collapse;margin:18px 0}.plain-legal th,.plain-legal td{border:1px solid var(--hairline);padding:10px 12px;vertical-align:top;text-align:left;line-height:1.45}.plain-legal th{background:var(--brand-navy);color:#fff;font-weight:700}.plain-legal td:first-child{font-weight:700;color:var(--brand-navy);background:var(--navy-tint)}.record-recap{background:var(--navy-tint);border-left:4px solid var(--accent-blue);border-radius:4px;padding:14px 18px;margin:18px 0;line-height:1.5}.statement{border:1px solid var(--hairline);border-radius:6px;padding:14px 18px;margin:14px 0;background:var(--paper)}.statement__label{font-weight:700;color:var(--brand-navy);margin:0 0 6px}.statement__role{font-weight:400;color:var(--accent-blue);font-size:14px;margin-left:8px}.statement__body{margin:0;line-height:1.5}.stage-heading{display:flex;align-items:baseline;gap:10px;margin:30px 0 14px;padding-bottom:8px;border-bottom:2px solid var(--brand-gold)}.stage-heading__num{color:var(--brand-gold);font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:1px}.stage-heading__title{color:var(--brand-navy);font-weight:700;font-size:19px}.fill-table{width:100%;border-collapse:collapse;margin:18px 0}.fill-table th{background:var(--brand-navy);color:#fff;font-weight:700;text-align:left;padding:10px 12px;border:1px solid var(--hairline)}.fill-table__cell{border:1px solid var(--hairline);padding:8px 10px;vertical-align:top;line-height:1.45}.fill-table__cell--filled{background:var(--navy-tint);color:var(--ink)}.fill-table__input{width:100%;min-height:64px;padding:8px 10px;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.45;color:var(--ink);border:1px solid var(--accent-blue);border-radius:4px;background:var(--paper);resize:vertical}.fill-table__input:focus{outline:2px solid var(--accent-blue);outline-offset:1px}.fill-table__input:disabled{background:var(--navy-tint);color:var(--muted);border-color:var(--hairline)}.written-response{margin:18px 0}.written-response__prompt{display:block;font-weight:700;color:var(--brand-navy);margin:0 0 8px;line-height:1.45}.written-response__input{width:100%;padding:10px 12px;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.5;color:var(--ink);border:1px solid var(--accent-blue);border-radius:4px;background:var(--paper);resize:vertical}.written-response__input:focus{outline:2px solid var(--accent-blue);outline-offset:1px}.written-response__input:disabled{background:var(--navy-tint);color:var(--muted);border-color:var(--hairline)}.checkpoint{background:var(--worked-bg);border:1px solid var(--worked-border);border-left:4px solid var(--accent-blue);border-radius:4px;padding:14px 18px;margin:20px 0;line-height:1.5}.counsel-note{background:var(--navy-tint);border:1px solid var(--hairline);border-top:3px solid var(--brand-gold);border-radius:4px;padding:18px 20px;margin:24px 0;line-height:1.5}.reveal{margin-top:32px;padding-top:24px;border-top:2px solid var(--brand-gold)}.model-section{background:var(--paper);border:1px solid var(--hairline);border-radius:6px;padding:20px 22px;margin:18px 0}.model-h2{color:var(--accent-blue);font-weight:700;font-size:19px;margin:0 0 12px}.model-para{margin:0 0 12px;line-height:1.5}.model-sort{width:100%;border-collapse:collapse;margin:14px 0}.model-sort th,.model-sort td{border:1px solid var(--hairline);padding:10px 12px;text-align:left;vertical-align:top;line-height:1.45}.model-sort th{background:var(--brand-navy);color:#fff;font-weight:700}.self-grade{background:var(--paper);border:1px solid var(--hairline);border-radius:6px;padding:18px 20px;margin:18px 0}.self-grade__item{display:flex;align-items:flex-start;gap:10px;margin:0 0 12px;line-height:1.45}.self-grade__item:last-child{margin-bottom:0}.self-grade__item input[type=checkbox]{margin-top:3px;width:18px;height:18px;accent-color:var(--accent-blue);flex-shrink:0}.reflection{margin:18px 0}.reflection__prompt{display:block;font-weight:700;color:var(--brand-navy);margin:0 0 8px;line-height:1.45}.reflection__input{width:100%;padding:10px 12px;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.5;color:var(--ink);border:1px solid var(--accent-blue);border-radius:4px;background:var(--paper);resize:vertical}.reflection__input:focus{outline:2px solid var(--accent-blue);outline-offset:1px}.reflection__input:disabled{background:var(--navy-tint);color:var(--muted);border-color:var(--hairline)}.dashboard__greeting{color:var(--brand-navy);font-weight:700;font-size:28px;margin:0 0 20px}.day-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin:8px 0}.day-card{display:block;background:var(--paper);border:1px solid var(--hairline);border-left:4px solid var(--accent-blue);border-radius:6px;padding:18px 20px;text-decoration:none;color:var(--ink);transition:box-shadow .12s ease,transform .12s ease}a.day-card:hover{box-shadow:0 2px 8px #1b2a4a24;transform:translateY(-1px)}.day-card--current{border-left-color:var(--brand-gold);box-shadow:0 0 0 2px var(--brand-gold) inset}.day-card--done{border-left-color:var(--brand-navy)}.day-card--locked{opacity:.55;border-left-color:var(--hairline);background:var(--page-bg);cursor:not-allowed}.day-card__title{display:block;font-weight:700;color:var(--brand-navy);font-size:16px;margin:0 0 10px;line-height:1.35}.day-card__status{display:inline-block;font-size:13px;color:var(--accent-blue);font-weight:700}.day-card--locked .day-card__status{color:var(--muted)}.day-card--done .day-card__status{color:var(--brand-navy)}.login__help{margin:16px 2px 0;color:var(--muted);font-size:13px;line-height:1.5}.disclosure{margin:18px 2px 0;color:var(--muted);font-size:12px;line-height:1.5}.btn{display:inline-block;font-family:Arial,Helvetica,sans-serif;font-size:15px;font-weight:700;padding:11px 22px;border:1px solid transparent;border-radius:4px;cursor:pointer;text-decoration:none;line-height:1.2}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--brand-navy);color:#fff;border-color:var(--brand-navy)}.btn--primary:hover:not(:disabled){background:var(--navy-shade)}.btn--secondary{background:var(--paper);color:var(--brand-navy);border-color:var(--brand-navy)}.btn--secondary:hover:not(:disabled){background:var(--navy-tint)}.validation-msg{margin:12px 0;color:var(--muted);font-size:14px;line-height:1.45}.login{max-width:380px;margin:24px auto}.brand-seal{display:block;width:200px;max-width:70%;height:auto;margin:8px auto 18px}.login h1{text-align:center}.login__form{background:var(--paper);border:1px solid var(--hairline);border-top:3px solid var(--brand-gold);border-radius:6px;padding:24px}.field{margin:0 0 16px}.field__label{display:block;font-weight:700;color:var(--brand-navy);font-size:14px;margin:0 0 6px}.field__input{width:100%;padding:10px 12px;font-family:Arial,Helvetica,sans-serif;font-size:15px;color:var(--ink);border:1px solid var(--hairline);border-radius:4px;background:var(--paper)}.field__input:focus{outline:2px solid var(--accent-blue);outline-offset:1px;border-color:var(--accent-blue)}.field__hint{margin:0 0 16px;color:var(--muted);font-size:13px}.show-password{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:14px;color:var(--ink);cursor:pointer}.show-password input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent-blue)}.login__error{margin:0 0 16px;padding:10px 12px;background:var(--confusion-bg);border:1px solid var(--confusion-border);border-radius:4px;color:var(--confusion-ink);font-size:14px;line-height:1.45}.roster{width:100%;border-collapse:collapse;margin:16px 0}.roster th,.roster__row td{border:1px solid var(--hairline);padding:10px 12px;text-align:left;vertical-align:top;line-height:1.45}.roster th{background:var(--brand-navy);color:#fff;font-weight:700}.roster__row:hover td{background:var(--navy-tint)}.roster__status{font-weight:700;color:var(--accent-blue)}.admin-detail__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;align-items:start;margin:16px 0}.admin-col{background:var(--paper);border:1px solid var(--hairline);border-radius:6px;padding:18px 20px}.admin-col__title{color:var(--brand-navy);font-weight:700;font-size:17px;margin:0 0 14px;padding-bottom:8px;border-bottom:2px solid var(--brand-gold)}.instructor-material{margin:0}.instructor-material h3{color:var(--accent-blue);font-size:14px;text-transform:uppercase;letter-spacing:.5px;margin:16px 0 6px}.rubric-anchor{background:var(--confusion-bg);border:1px solid var(--confusion-border);border-radius:4px;padding:12px 14px;margin:8px 0;line-height:1.5}.answer-key{background:var(--navy-tint);border:1px solid var(--hairline);border-radius:4px;padding:12px 14px;margin:8px 0;line-height:1.5;font-family:Arial,Helvetica,sans-serif}.answer-key__entry{margin:0 0 12px}.answer-key__entry:last-child{margin-bottom:0}.answer-key__label{font-weight:700;color:var(--brand-navy);font-size:13px;margin:0 0 4px}.answer-key .para{margin:0 0 8px}.answer-key .model-sort{margin:4px 0 8px}.diagnostic-rows{margin:8px 0;padding-left:20px}.diagnostic-rows li{margin:0 0 6px;line-height:1.45}.instructor-note{width:100%;min-height:120px;padding:10px 12px;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.5;color:var(--ink);border:1px solid var(--hairline);border-radius:4px;background:var(--paper);resize:vertical;margin:8px 0}.instructor-note:focus{outline:2px solid var(--accent-blue);outline-offset:1px;border-color:var(--accent-blue)}@media (max-width: 600px){.page-inner{padding:18px 16px 36px}h1,.block-h1,.dashboard__greeting{font-size:24px}}
