/* Learning goals and native mobile time control; one source of truth. */
#ds-dashboard .dsg-goals,#ds-student-dashboard .dsg-goals{margin:18px 0;padding:18px;border:1px solid var(--dsdash-border);border-radius:24px;background:var(--dsdash-card);box-shadow:var(--dsdash-shadow)}
.dsg-goal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.dsg-goal-head span{color:var(--dsdash-accent);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}
.dsg-goal-head h2{margin:4px 0 0;color:var(--dsdash-text)}
.dsg-goal-head button{min-height:42px;padding:0 14px;border:1px solid var(--dsdash-border);border-radius:14px;background:var(--dsdash-soft);color:var(--dsdash-text);font-weight:800}
.dsg-goal-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.dsg-goal{padding:13px;border:1px solid var(--dsdash-border2);border-radius:16px;background:var(--dsdash-card2)}
.dsg-goal strong,.dsg-goal small{display:block}
.dsg-goal small{margin-top:5px;color:var(--dsdash-muted)}
.dsg-goal progress{width:100%;margin-top:10px;accent-color:var(--dsdash-accent)}
.dsg-goal-actions{display:flex;gap:6px;margin-top:8px}
.dsg-goal-actions button{border:0;background:transparent;color:var(--dsdash-accent);font-weight:800}
.dsg-goal-status{color:var(--dsdash-muted);font-size:11px}
@media(max-width:760px){.dsg-goal-list{grid-template-columns:1fr}
}
.dsg-activity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.dsg-activity>article,.dsg-activity>form{padding:13px;border:1px solid var(--dsdash-border2);border-radius:16px;background:var(--dsdash-card2);min-width:0;max-width:100%}
.dsg-activity strong,.dsg-activity small{display:block}
.dsg-activity strong{font-size:24px;color:var(--dsdash-text)}
.dsg-activity small{color:var(--dsdash-muted)}
.dsg-activity form{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,150px) auto;grid-column:1/-1;min-width:0;align-items:center;gap:10px;color:var(--dsdash-text);font-weight:800}
.dsg-activity input[type="time"],.dsg-activity button{min-height:38px;border:1px solid var(--dsdash-border);border-radius:11px;background:var(--dsdash-soft);color:var(--dsdash-text);padding:0 10px}
.dsg-reminder-toggle{position:relative;display:inline-flex;align-items:center;gap:10px;cursor:pointer;min-width:0}
.dsg-reminder-toggle input{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}
.dsg-reminder-toggle span{position:relative;flex:0 0 48px;width:48px;height:27px;border:1px solid var(--dsdash-border);border-radius:999px;background:var(--dsdash-soft);box-shadow:inset 0 1px 4px rgba(0,0,0,.2);transition:.2s}
.dsg-reminder-toggle span:after{content:"";position:absolute;left:3px;top:3px;width:19px;height:19px;border-radius:50%;background:var(--dsdash-muted);transition:.2s}
.dsg-reminder-toggle input:checked+span{border-color:var(--dsdash-accent);background:color-mix(in srgb,var(--dsdash-accent) 28%,var(--dsdash-soft))}
.dsg-reminder-toggle input:checked+span:after{transform:translateX(21px);background:var(--dsdash-accent)}
.dsg-reminder-toggle input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--dsdash-accent) 35%,transparent);outline-offset:2px}
.dsg-reminder-toggle em{font-style:normal;white-space:normal}
@media(max-width:760px){.dsg-activity form{grid-template-columns:minmax(0,1fr)}
.dsg-activity form>button{width:100%}
}
@media(max-width:480px){.dsg-activity{grid-template-columns:1fr}
.dsg-activity form{grid-template-columns:1fr}
.dsg-activity input[type="time"],.dsg-activity button{width:100%}
}
#ds-student-dashboard .dsg-activity,#ds-student-dashboard .dsg-activity *{box-sizing:border-box}
.dsg-reminder-time{min-width:0;max-width:100%;width:100%}
.dsg-reminder-time input[type="time"]{display:block;appearance:none;-webkit-appearance:none;inline-size:100%;min-inline-size:0;max-inline-size:100%;min-width:0;width:100%;height:44px;line-height:normal;margin:0}
.dsg-reminder-time input::-webkit-date-and-time-value{min-width:0;text-align:center}
