/* ==========================================================================
   04. SOURCE: modules-v3.css
   ========================================================================== */
/* TDH Visual System Upgrade, Phase 3
   Final module-level visual pass. This file changes presentation only. */

/* Shared module frame */
.page > .main {
  width:min(100%, 1580px);
  min-height:calc(100vh - var(--tdh-appbar-height));
  margin:0 auto!important;
  padding:30px 32px 44px!important;
}
.page .head,
.dash46-head,
.adm-hero,
.dbt-hero {
  margin-bottom:20px!important;
  padding-bottom:16px;
  border-bottom:1px solid var(--tdh-line);
}
.page .head h1,.dash46-head h1,.adm-hero h1,.dbt-hero h1 { font-size:30px!important; }
.page .head .muted,.dash46-head p,.adm-hero p,.dbt-hero p { max-width:760px;color:var(--tdh-text-muted)!important; }

/* Home */
#home .main { display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);gap:18px;align-content:start; }
#home .homehero {
  grid-column:1/-1;position:relative;overflow:hidden;min-height:200px;padding:34px 36px!important;
  border:1px solid rgba(255,255,255,.24)!important;border-radius:22px!important;
  background:linear-gradient(125deg,#53106e 0%,#8619aa 52%,#c03acb 100%)!important;
  box-shadow:0 18px 48px rgba(84,12,105,.22)!important;
}
#home .homehero::after { content:"";position:absolute;right:-80px;top:-130px;width:360px;height:360px;border:70px solid rgba(255,255,255,.08);border-radius:50%; }
#home .homehero h1 { position:relative;z-index:1;margin:0 0 8px!important;color:#fff!important;font-size:38px!important; }
#home .homehero p { position:relative;z-index:1;max-width:620px;margin:0;color:#f3def7!important;font-size:14px; }
#home .homehero .btn { position:relative;z-index:1;border-color:#fff!important;background:#fff!important;color:#711488!important; }
#home .shortcut-grid { grid-column:1/-1;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))!important;gap:12px!important;margin-top:0!important; }
#home .shortcut { min-height:130px;padding:18px!important;transition:transform var(--tdh-transition),box-shadow var(--tdh-transition)!important; }
#home .shortcut:hover { transform:translateY(-2px);box-shadow:var(--tdh-shadow-md)!important; }

/* Tasks */
#tasks .kpis { gap:10px!important;margin-bottom:14px!important; }
#tasks .kpi { min-height:108px;padding:16px!important; }
#tasks .kpi b { font-size:25px!important; }
#tasks .selected-delivery { border:1px solid #d8c9dc!important;background:var(--tdh-accent-soft)!important;color:var(--tdh-text)!important;box-shadow:none!important; }
#tasks .filters { align-items:center;gap:8px!important; }
#tasks .tasks { gap:7px!important; }
#tasks .task { min-height:68px;padding:12px 14px!important;border-radius:12px!important;box-shadow:none!important; }
#tasks .task:hover { border-color:#c6a7cd!important;background:var(--tdh-brand-50)!important; }
#tasks .signal { height:38px!important;width:5px!important; }

/* Backlog */
#backlog .backlog-tools { grid-template-columns:minmax(280px,1fr) 190px 210px!important;gap:8px!important;margin-bottom:12px!important;padding:10px!important;border:1px solid var(--tdh-line)!important;border-radius:12px!important;box-shadow:var(--tdh-shadow-xs)!important; }
#backlog .backlog-compact-head-v40 { min-height:42px!important;padding:10px 14px!important;border-color:var(--tdh-line)!important;background:var(--tdh-surface-subtle)!important; }
#backlog .backlogrow { min-height:58px!important;border-color:var(--tdh-line)!important;background:var(--tdh-surface)!important; }
#backlog .backlogrow:hover { background:var(--tdh-brand-50)!important; }
#backlog .backlogrow>div:first-child b { font-size:12px!important;color:var(--tdh-text)!important; }

/* Order delivery */
#order .worklist-card,#order .panel { max-width:1080px;margin-inline:auto;padding:24px!important; }
#order .formgrid { gap:15px!important; }
#order .field>span { margin-bottom:6px!important;color:var(--tdh-text-secondary)!important;font-size:9px!important;letter-spacing:.04em; }
#order form .btn.primary { min-width:170px; }

/* Planning */
#planning .main { max-width:none!important; }
#planning .plan-toolbar { padding:7px!important;border-color:var(--tdh-line)!important;background:var(--tdh-surface)!important;box-shadow:var(--tdh-shadow-xs); }
#planning .planning-lockbar { border-color:var(--tdh-line)!important;background:var(--tdh-surface)!important; }
#planning .planning-layout { gap:14px!important; }
#planning .planning-backlog { border:1px solid var(--tdh-line)!important;box-shadow:var(--tdh-shadow-sm)!important; }
#planning .planning-backlog-head { background:var(--tdh-surface-subtle)!important; }
#planning .planning-backlog-card { border-color:var(--tdh-line)!important;background:var(--tdh-surface)!important; }
#planning .planning-backlog-card:hover,#planning .planning-backlog-card.selected { border-color:var(--tdh-accent)!important;background:var(--tdh-accent-soft)!important;box-shadow:var(--tdh-focus)!important; }
#planning .plan-week { overflow:hidden;border:1px solid var(--tdh-line)!important;box-shadow:var(--tdh-shadow-sm)!important; }
#planning .plan-week-head { padding:10px 13px!important;background:linear-gradient(135deg,#391149,#581667)!important; }
#planning .plan-day { border-color:var(--tdh-line)!important;background:var(--tdh-surface)!important; }
#planning .plan-day-head { background:var(--tdh-surface-subtle)!important; }
#planning .plan-slot { border-color:var(--tdh-line)!important; }
#planning .plan-delivery { border-left-color:var(--tdh-accent)!important;border-radius:5px;background:var(--tdh-accent-soft)!important;padding:5px 6px!important; }
#planning .plan-add:hover { background:var(--tdh-accent-soft)!important;color:var(--tdh-accent)!important; }
.multi-plan-dialog-v473 { border-radius:22px!important; }
.multi-plan-order-v473,.multi-plan-progress-v473,.multi-plan-days-v473 { border-color:var(--tdh-line)!important;background:var(--tdh-surface)!important; }
.multi-plan-day-v473 { border-color:var(--tdh-line)!important;background:var(--tdh-surface-subtle)!important; }

/* Dashboard */
#dashboard .dash46-filter-card { padding:13px!important;border-color:var(--tdh-line)!important;border-radius:14px!important;box-shadow:var(--tdh-shadow-xs)!important; }
#dashboard .dash46-period button { border-color:var(--tdh-line)!important;background:var(--tdh-surface-subtle)!important;color:var(--tdh-text-secondary)!important; }
#dashboard .dash46-period button.active { border-color:var(--tdh-accent)!important;background:var(--tdh-accent)!important;color:#fff!important; }
#dashboard .dash46-kpis { gap:10px!important; }
#dashboard .dash46-kpis article { min-height:108px;padding:16px!important;border-radius:14px!important; }
#dashboard .dash46-kpis b { font-size:26px!important;color:var(--tdh-text)!important; }
#dashboard .dash46-grid { gap:12px!important; }
#dashboard .dash46-card { padding:18px!important; }
#dashboard .dash46-donut::after { background:var(--tdh-surface)!important;border-color:var(--tdh-line)!important; }
#dashboard .dash46-table-wrap { border-color:var(--tdh-line)!important; }

/* Worklist */
#worklist .worklist-card { max-width:1100px!important;margin:0 auto;padding:24px!important; }
#worklist .template-status { padding:14px!important;border-color:var(--tdh-line)!important;background:var(--tdh-surface-subtle)!important; }
#worklist .steps { gap:8px!important; }
#worklist .step { border:1px solid var(--tdh-line)!important;border-radius:10px!important;background:var(--tdh-accent-soft)!important;color:var(--tdh-text)!important; }
.worklist-auto-v48,.worklist-auto-v48 section { border-color:var(--tdh-line)!important; }
.worklist-drop-v491,.worklist-drop-v48 { border-color:#c9b6ce!important;background:var(--tdh-surface-subtle)!important; }
.worklist-drop-v491:hover,.worklist-drop-v48:hover { border-color:var(--tdh-accent)!important;background:var(--tdh-accent-soft)!important; }

/* SMS */
#sms .sms-generator-v49 { max-width:1160px;margin-inline:auto; }
#sms .sms-main-v49 { gap:14px!important; }
#sms .sms-form-v49,#sms .sms-preview-v49 { border:1px solid var(--tdh-line)!important;border-radius:16px!important;background:var(--tdh-surface)!important;box-shadow:var(--tdh-shadow-xs)!important; }
.sms-wl-v514 { margin-top:18px!important;border-radius:18px!important; }
.sms-wl-hero { background:linear-gradient(135deg,var(--tdh-brand-50),var(--tdh-accent-soft))!important; }
.sms-wl-drop { border-color:#c8b4cd!important;background:var(--tdh-surface-subtle)!important; }
.sms-wl-drop:hover,.sms-wl-drop.over { border-color:var(--tdh-accent)!important;background:var(--tdh-accent-soft)!important; }
.sms-mdu-group>summary { min-height:66px; }
.sms-mdu-group[open]>summary { background:var(--tdh-surface-subtle)!important; }
.sms-mdu-body { background:var(--tdh-surface-subtle)!important; }
.sms-date-card { border-color:var(--tdh-line)!important;background:var(--tdh-surface)!important; }

/* Development */
#development .dev-toolbar { padding:10px!important;border:1px solid var(--tdh-line)!important;border-radius:13px!important;background:var(--tdh-surface)!important;box-shadow:var(--tdh-shadow-xs)!important; }
#development .ticket-board { gap:10px!important; }
#development .ticket-column { border:1px solid var(--tdh-line)!important;border-radius:14px!important;background:var(--tdh-surface-muted)!important; }
#development .ticket-card { border-color:var(--tdh-line)!important;border-left-color:var(--tdh-accent)!important;border-radius:11px!important;background:var(--tdh-surface)!important;box-shadow:var(--tdh-shadow-xs)!important; }
#development .ticket-card:hover { transform:translateY(-1px);box-shadow:var(--tdh-shadow-sm)!important; }

/* Database tools */
#database-tools .main { max-width:none!important; }
#database-tools .dbt-shell { border-color:var(--tdh-line)!important;border-radius:16px!important;box-shadow:var(--tdh-shadow-sm)!important; }
#database-tools .dbt-sidebar { border-color:var(--tdh-line)!important;background:var(--tdh-surface-subtle)!important; }
#database-tools .dbt-sidebar nav button { min-height:46px; }
#database-tools .dbt-sidebar nav button.active { background:linear-gradient(135deg,#7920b4,#9e29d5)!important; }
#database-tools .dbt-toolbar { gap:14px!important; }
#database-tools .dbt-summary { gap:8px!important; }
#database-tools .dbt-summary article { min-height:91px;padding:13px!important;border-color:var(--tdh-line)!important;border-radius:11px!important;background:var(--tdh-surface-subtle)!important; }
#database-tools .dbt-table-frame { border-radius:12px!important; }
#database-tools .dbt-table-frame tbody tr:hover { background:var(--tdh-brand-50)!important; }
#database-tools .dbt-console-launch { border-color:rgba(255,255,255,.09)!important;background:linear-gradient(135deg,#231328,#43134a)!important; }

/* Admin panel */
#admin-panel .main { max-width:none!important; }
#admin-panel .adm-shell { border-color:var(--tdh-line)!important;border-radius:16px!important;box-shadow:var(--tdh-shadow-sm)!important; }
#admin-panel .adm-shell>aside { border-color:var(--tdh-line)!important;background:var(--tdh-surface-subtle)!important; }
#admin-panel .adm-shell>aside button { min-height:52px; }
#admin-panel .adm-shell>aside button.active { background:linear-gradient(135deg,#7920b4,#9e29d5)!important; }
#admin-panel .adm-content { padding:24px!important; }
#admin-panel .adm-two { border-color:var(--tdh-line)!important;border-radius:13px!important; }
#admin-panel .adm-list { background:var(--tdh-surface-subtle)!important; }
#admin-panel .adm-list button.active { background:var(--tdh-surface)!important;box-shadow:var(--tdh-shadow-sm)!important; }
#admin-panel .adm-card,#admin-panel .adm-mapping { padding:17px!important; }

/* FAQ and changelog */
#changelog .main { max-width:1250px!important; }
#changelog .help-shell-v46,#changelog .knowledge-shell-v51 { border:1px solid var(--tdh-line)!important;border-radius:18px!important;background:var(--tdh-surface)!important;box-shadow:var(--tdh-shadow-sm)!important; }
#changelog .help-tab-v46,#changelog [role="tab"] { min-height:40px;border-radius:9px!important; }
#changelog details { margin-bottom:8px;border:1px solid var(--tdh-line)!important;border-radius:11px!important;background:var(--tdh-surface)!important; }
#changelog summary { padding:13px 15px;cursor:pointer;font-weight:760; }
#changelog details>div,#changelog details>p { padding:0 15px 14px; }
#changelog .timeline-item { border-color:var(--tdh-line)!important;background:var(--tdh-surface)!important; }

/* Profile and auth surfaces */
.tdh-profile-modal section,.tdh-auth-card { border:1px solid var(--tdh-line)!important;border-radius:20px!important;background:var(--tdh-surface-raised)!important;box-shadow:var(--tdh-shadow-lg)!important; }
.tdh-profile-grid>div { border-color:var(--tdh-line)!important;background:var(--tdh-surface-subtle)!important; }

/* Final responsive module pass */
@media(max-width:1100px){
  #home .main{grid-template-columns:1fr}.dash46-grid{grid-template-columns:1fr!important}.dash46-card.wide{grid-column:auto!important}
  #backlog .backlog-tools{grid-template-columns:1fr 1fr!important}#backlog .backlog-tools>:first-child{grid-column:1/-1}
}
@media(max-width:760px){
  .page>.main{padding:20px 15px 34px!important}.page .head,.dash46-head,.adm-hero,.dbt-hero{align-items:flex-start!important;flex-direction:column!important}
  #home .homehero{min-height:180px;padding:26px 22px!important}#home .homehero h1{font-size:32px!important}
  #tasks .kpis,#dashboard .dash46-kpis{grid-template-columns:1fr 1fr!important}
  #backlog .backlog-tools{grid-template-columns:1fr!important}#backlog .backlog-tools>:first-child{grid-column:auto}
  #order .formgrid{grid-template-columns:1fr!important}#order .full{grid-column:auto!important}
  #database-tools .dbt-summary{grid-template-columns:1fr 1fr!important}
  #admin-panel .adm-content{padding:15px!important}
}
@media(max-width:480px){#tasks .kpis,#dashboard .dash46-kpis,#database-tools .dbt-summary{grid-template-columns:1fr!important}}
