/* Shared by the public site, account screens and student workspace. */
:root{color-scheme:light;--bg:#F7F3EA;--paper:#F7F3EA;--panel:#fffefa;--panel2:#edf3f1;--card:#fffefa;--card2:#edf3f1;--text:#11161A;--muted:#526267;--line:#b7c7c3;--accent:#0B6B70;--accent2:#0B6B70;--petrol:#0B6B70;--mist:#DCE7E5;--gold:#F2B84B;--success:#075b60;--pending:#765000;--warn:#765000;--danger:#a52929;--red:#a52929}
html{font-size:16px;background:var(--paper)}
body{color:var(--text);background:var(--paper);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:1rem;line-height:1.6}
button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}
button,input,select,textarea{min-height:44px}button,a,summary{-webkit-tap-highlight-color:#0b6b7020}
input,textarea,select{color:var(--text);background:var(--panel);border:1px solid #879d98;border-radius:10px;line-height:1.5}
input::placeholder,textarea::placeholder{color:#526267;opacity:1}
label{color:var(--text);font-weight:600}a{color:var(--petrol)}
:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--petrol)!important;outline-offset:4px!important;box-shadow:0 0 0 2px var(--paper)}
button:disabled,input:disabled,select:disabled,textarea:disabled{opacity:1;cursor:not-allowed;color:#526267;background:#e3e9e6}
input[type=checkbox],input[type=radio]{accent-color:var(--petrol)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Direct-sharing pages use the same readable surfaces as the workspace. */
.pack-dialog{width:min(820px,calc(100vw - 24px));max-height:90dvh;overflow:auto;box-sizing:border-box;color:var(--text);background:var(--panel);padding:24px;border:1px solid var(--line);border-radius:18px}
.pack-dialog-top,.pack-public-nav{display:flex;align-items:center;justify-content:space-between;gap:16px}
.pack-dialog input:not([type=checkbox]),.pack-dialog select,.pack-page input{width:100%;box-sizing:border-box;padding:10px}
.pack-dialog label,.pack-page label{display:block;margin:12px 0}.pack-dialog input[type=checkbox]{width:22px;height:22px;min-height:22px;margin-right:10px;flex-shrink:0}
.pack-dialog .pack-rights,.pack-unit-select label{display:flex;align-items:center;min-height:44px;font-weight:400}
.pack-unit-select{margin:16px 0;border-bottom:1px solid var(--line);padding-bottom:12px}.pack-unit-select summary,.pack-material summary,.pack-page summary{cursor:pointer;min-height:44px;font-weight:700}
.pack-preview-heading{margin:24px 0}.pack-preview-heading h2{font-size:1.6rem;margin:8px 0}
.pack-material dl{margin:0}.pack-material dl>div{padding:12px 0;border-bottom:1px solid var(--line)}.pack-material dt{font-weight:700}.pack-material dd{margin:0}.pack-material dd p{margin:6px 0}.pack-answer-rule{font-size:14px;color:var(--muted)}
.pack-material{overflow-wrap:anywhere}.pack-model{margin:24px 0}.pack-model-image{position:relative}.pack-model-image img{display:block;width:100%;height:auto}.pack-image-marker{position:absolute;transform:translate(-50%,-50%);border-radius:100%;background:var(--petrol);color:white;min-width:28px;height:28px;text-align:center;font-weight:700;border:2px solid white}
.pack-list-item{padding:14px 0;border-bottom:1px solid var(--line)}.pack-code{overflow-wrap:anywhere;font-family:monospace;font-size:14px}
.pack-page{margin:0}.pack-page main,.pack-page>header,.pack-page>footer{max-width:900px;margin:auto;padding:24px}.pack-page h1{font-size:clamp(1.8rem,5vw,3rem);line-height:1.15}.pack-page .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border:0;border-radius:10px;background:var(--gold);color:var(--text);font-weight:700;text-decoration:none;cursor:pointer;box-sizing:border-box}.pack-page .section-kicker{font-weight:700;color:var(--petrol)}.pack-page #pack-preview{margin:28px 0}.pack-page .pack-preview-heading{border-top:1px solid var(--line);padding-top:20px}
@media(max-width:480px){.pack-dialog{padding:16px}.pack-dialog-top h2{font-size:1.3rem}.pack-dialog .study-actions{flex-wrap:wrap}.pack-page main,.pack-page>header,.pack-page>footer{padding:16px}.pack-unit-select label{overflow-wrap:anywhere}}

.pack-dialog [data-pack-controls]{min-width:0;border:0;padding:0;margin:0}
