:root{
  --ps-violet:#73518a;--ps-violet-dark:#5c3d71;--ps-violet-soft:#f6f0f8;--ps-violet-line:#dfcfe6;
  --ps-teal:#287f82;--ps-teal-dark:#1f6769;--ps-teal-soft:#edf8f8;--ps-teal-line:#c9e4e4;
  --ps-red:#c84d55;--ps-red-soft:#fff1f2;--ps-yellow:#b17b00;--ps-yellow-soft:#fff8df;--ps-green:#2d8055;--ps-green-soft:#edf8f1;
  --ps-neutral:#8b929a;--ps-neutral-soft:#f4f5f6;--ps-shadow:0 9px 28px rgba(38,44,52,.055)
}
html{scroll-behavior:smooth}.practical-page{background:linear-gradient(180deg,#f8f9fb 0,#fff 360px)}
.practical-shell{width:min(1320px,calc(100% - 56px));margin:0 auto;padding:30px 0 80px}.breadcrumb{margin:0 0 18px}.breadcrumb a{color:#6d7580;text-decoration:none;font-size:.9rem;font-weight:700}.breadcrumb a:hover{color:var(--ps-violet-dark)}
.practical-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:32px 36px;background:linear-gradient(90deg,var(--ps-violet-soft) 0,#fff 58%);border:1px solid var(--ps-violet-line);border-top:5px solid var(--ps-violet);border-radius:20px;box-shadow:var(--ps-shadow)}
.practical-hero__eyebrow,.section-eyebrow{margin:0 0 7px;color:var(--ps-violet-dark);font-size:.78rem;font-weight:900;letter-spacing:.10em;text-transform:uppercase}.practical-hero h2{margin:0;color:#292c31;font-size:clamp(2.8rem,5.6vw,5rem);line-height:.96;letter-spacing:-.045em}.practical-hero p.hero-copy{max-width:800px;margin:15px 0 0;color:#68707a;line-height:1.58;font-size:1.02rem}
.practical-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:20px 0 26px}.practical-nav a,.practical-nav .planned{display:flex;align-items:center;justify-content:center;gap:9px;min-height:54px;padding:9px 12px;color:#353a40;background:#fff;border:1px solid #dde2e7;border-radius:14px;box-shadow:0 3px 12px rgba(35,41,48,.04);text-decoration:none;font-size:.91rem;font-weight:800}.practical-nav a:hover{transform:translateY(-1px);border-color:var(--ps-violet-line);box-shadow:0 7px 18px rgba(35,41,48,.07)}.practical-nav .planned{color:#9399a0;background:#fafafa}.nav-icon{font-size:1.05rem}
.summary-panel,.content-panel{background:#fff;border:1px solid #e1e5e9;border-radius:20px;box-shadow:var(--ps-shadow);padding:26px;margin-bottom:22px}.summary-heading,.section-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}.summary-heading h3,.section-heading-row h3{margin:3px 0 5px;font-size:1.6rem}.section-intro{margin:0;color:#737b85;line-height:1.55}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0 14px}.summary-card{padding:16px;border-radius:15px;border:1px solid}.summary-card strong{display:block;font-size:1.85rem;line-height:1}.summary-card span{display:block;margin-top:7px;font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.summary-card.green{background:var(--ps-green-soft);border-color:#cce8d7;color:var(--ps-green)}.summary-card.yellow{background:var(--ps-yellow-soft);border-color:#f1dfae;color:var(--ps-yellow)}.summary-card.red{background:var(--ps-red-soft);border-color:#f0ccd0;color:#a73b44}.summary-card.neutral{background:var(--ps-neutral-soft);border-color:#e0e3e6;color:#687078}.stacked-bar{display:flex;overflow:hidden;height:10px;background:#eef0f2;border-radius:999px}.stacked-bar span{height:100%;transition:width .2s ease}.stacked-bar .green{background:var(--ps-green)}.stacked-bar .yellow{background:#d5a124}.stacked-bar .red{background:var(--ps-red)}.stacked-bar .neutral{background:#c7ccd1}.summary-note{margin:11px 0 0;color:#7b828b;font-size:.84rem}
.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.dashboard-card{display:block;min-height:170px;padding:24px;color:#30343a;background:#fff;border:1px solid #e1e5e9;border-top:4px solid var(--ps-teal);border-radius:20px;text-decoration:none;box-shadow:var(--ps-shadow);transition:.18s}.dashboard-card.violet{border-top-color:var(--ps-violet)}.dashboard-card h3{margin:10px 0 8px;font-size:1.3rem}.dashboard-card p{margin:0;color:#707984;line-height:1.5}.dashboard-card .card-link{display:inline-block;margin-top:14px;color:var(--ps-violet-dark);font-weight:850}.dashboard-card:hover{transform:translateY(-2px)}
.task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.task-card{position:relative;padding:20px;background:#fff;border:1px solid #e2e6ea;border-top:4px solid var(--ps-violet);border-radius:18px;box-shadow:0 5px 18px rgba(35,41,48,.045);transition:.18s}.task-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(35,41,48,.08)}.task-card .pag-pill,.pag-badge{display:inline-flex;padding:6px 9px;color:var(--ps-teal-dark);background:var(--ps-teal-soft);border:1px solid var(--ps-teal-line);border-radius:999px;font-size:.74rem;font-weight:900}.task-card h3{margin:12px 0 7px;font-size:1.08rem}.task-card p{margin:0;color:#717984;line-height:1.45;font-size:.93rem}.task-card .meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.skill-chip{display:inline-flex;padding:5px 8px;background:#f6f7f8;border:1px solid #e2e5e8;border-radius:999px;color:#646c75;font-size:.72rem;font-weight:800}.task-card__footer{display:flex;justify-content:space-between;gap:12px;margin-top:16px;padding-top:13px;border-top:1px solid #eceff1;color:#6d7580;font-size:.77rem;font-weight:800}.task-card__footer span:last-child{color:var(--ps-violet-dark)}.task-card a.full-link{position:absolute;inset:0;border-radius:inherit}
.legend{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 0}.legend-item{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid #e1e4e8;border-radius:999px;background:#fff;color:#626a74;font-size:.76rem;font-weight:800}.legend-dot{width:9px;height:9px;border-radius:50%}.legend-dot.green{background:var(--ps-green)}.legend-dot.yellow{background:#d5a124}.legend-dot.red{background:var(--ps-red)}.legend-dot.neutral{background:#b7bdc3}.legend-swatch{width:13px;height:13px;border-radius:3px;background:#dfe2e5;border:1px solid #cbd0d5}
.tracker-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:12px}.tracker-controls button{width:auto;margin:0;padding:9px 13px;background:#fff;color:var(--ps-violet-dark);border:1px solid var(--ps-violet-line);border-radius:999px;box-shadow:none;font-size:.82rem;font-weight:850}.tracker-controls button:hover{background:var(--ps-violet-soft)}
.tracker-wrap{overflow:auto;max-height:76vh;border:1px solid #dfe3e7;border-radius:15px;background:#fff}.tracker-table{border-collapse:separate;border-spacing:0;min-width:1205px;width:100%;font-size:.76rem}.tracker-table th,.tracker-table td{border-right:1px solid #d9dde1;border-bottom:1px solid #d9dde1}.tracker-table thead th{position:sticky;top:0;z-index:5;background:#f7f8fa}.tracker-table thead .date-row{display:none}.tracker-table.show-dates thead .date-row{display:table-row}.tracker-table.show-dates thead .date-row th{top:58px}.tracker-table .skill-heading{position:sticky;left:0;z-index:8;width:390px;min-width:390px;padding:9px 11px;text-align:left;background:#f7f8fa}.tracker-table .skill-heading span{display:block;font-size:.84rem}.tracker-table .skill-heading small{display:block;margin-top:2px;color:#858c94;font-size:.65rem;font-weight:700}.pag-heading{width:58px;min-width:58px;height:58px;padding:4px;text-align:center}.pag-heading a{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;color:#fff;background:var(--ps-violet);border-radius:9px;text-decoration:none;font-weight:900}.date-row th{height:44px;background:#fbfbfc!important}.date-row input{width:54px;border:1px solid #d5d9de;border-radius:6px;padding:3px 1px;font-size:.56rem}.section-row th{padding:7px 11px;color:#fff;background:var(--ps-teal)!important;text-align:left;font-size:.7rem;letter-spacing:.05em;text-transform:uppercase}.skill-cell{position:sticky;left:0;z-index:3;width:390px;min-width:390px;padding:7px 9px;text-align:left;border-left:5px solid;background:#fff}.skill-cell.status-neutral{border-left-color:#b7bdc3;background:#fafbfb}.skill-cell.status-red{border-left-color:var(--ps-red);background:var(--ps-red-soft)}.skill-cell.status-yellow{border-left-color:#d5a124;background:var(--ps-yellow-soft)}.skill-cell.status-green{border-left-color:var(--ps-green);background:var(--ps-green-soft)}.skill-line{display:flex;align-items:baseline;gap:8px}.skill-code{flex:0 0 64px;color:#5c6470;font-size:.68rem;font-weight:900}.skill-text{color:#30353a;font-size:.74rem;line-height:1.18}.skill-state{display:flex;align-items:center;gap:5px;margin-top:4px;color:#727981;font-size:.61rem;font-weight:850;text-transform:uppercase;letter-spacing:.02em}.state-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.status-red .skill-state{color:#a93c45}.status-yellow .skill-state{color:#a57600}.status-green .skill-state{color:#2c7b52}.status-neutral .skill-state{color:#80878e}.evidence-count{margin-left:auto;text-transform:none;letter-spacing:0}.tracker-table td{width:58px;min-width:58px;height:50px;text-align:center;background:#fff}.tracker-table td.not-applicable{background:#e1e4e7;color:#a8afb6;font-weight:800}.evidence-cycle{display:grid;place-items:center;width:27px;height:27px;margin:auto;padding:0;border:2px solid #bdc5cd;border-radius:7px;background:#fff;color:transparent;font-size:.82rem;font-weight:950;cursor:pointer;box-shadow:none;transition:.14s}.evidence-cycle:hover{border-color:var(--ps-violet)}.evidence-cycle[data-state="pass"]{color:#fff;background:var(--ps-green);border-color:var(--ps-green)}.evidence-cycle[data-state="fail"]{color:#fff;background:var(--ps-red);border-color:var(--ps-red)}.evidence-cycle:focus-visible{outline:3px solid rgba(115,81,138,.25);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.task-hero{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:start}.task-hero h2{margin:10px 0 8px;font-size:clamp(2.1rem,4.5vw,3.8rem);letter-spacing:-.035em}.task-hero p{max-width:800px;color:#6d7580;line-height:1.55}.task-date{display:flex;flex-direction:column;gap:6px;min-width:170px;padding:13px 15px;background:#fff;border:1px solid var(--ps-violet-line);border-radius:14px}.task-date label{color:var(--ps-violet-dark);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.task-date input{padding:8px;border:1px solid #d6dae0;border-radius:8px;font:inherit;font-size:.85rem}
.task-evidence-list{display:grid;gap:7px}.task-evidence-row{display:grid;grid-template-columns:34px minmax(0,1fr) 138px;gap:10px;align-items:center;padding:9px 11px;background:#fbfbfc;border:1px solid #e3e6e9;border-radius:11px}.task-evidence-box{width:28px;height:28px}.task-evidence-text{display:flex;gap:9px;align-items:baseline;min-width:0}.task-evidence-text strong{flex:0 0 72px;color:var(--ps-violet-dark);font-size:.71rem}.task-evidence-text span{color:#3b4046;font-size:.82rem;line-height:1.28}.task-evidence-status{text-align:right;color:#6d7580;font-size:.73rem;font-weight:850}.task-evidence-status span,.task-evidence-status small{display:block}.task-evidence-status small{margin-top:2px;color:#969ca3;font-size:.65rem;font-weight:750}
.practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.practice-card{padding:19px;border:1px solid #e2e5e8;border-radius:16px;background:#fff}.practice-card.planned{background:#fafafa;color:#8d939a}.practice-card .icon{font-size:1.4rem}.practice-card h4{margin:9px 0 6px;font-size:1rem}.practice-card p{margin:0;color:#747c86;line-height:1.45;font-size:.88rem}.practice-card .status{display:inline-flex;margin-top:12px;padding:5px 8px;border-radius:999px;background:#eceeef;color:#7a8189;font-size:.7rem;font-weight:900;text-transform:uppercase}
.resource-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.shared-resource{display:flex;gap:16px;align-items:flex-start;padding:20px;color:#343940;background:#fff;border:1px solid #e1e5e8;border-radius:17px;text-decoration:none;box-shadow:0 4px 14px rgba(35,41,48,.04)}.shared-resource:hover{transform:translateY(-1px);border-color:var(--ps-violet-line)}.shared-resource .big-icon{font-size:1.6rem}.shared-resource h3{margin:0 0 5px;font-size:1.05rem}.shared-resource p{margin:0;color:#717984;line-height:1.45;font-size:.9rem}
.threshold-note{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.threshold-note span{padding:8px 10px;border-radius:10px;font-size:.75rem;font-weight:800;text-align:center}.threshold-note .red{background:var(--ps-red-soft);color:#a73b44}.threshold-note .yellow{background:var(--ps-yellow-soft);color:#9a6d00}.threshold-note .green{background:var(--ps-green-soft);color:#28774e}
@media(max-width:1000px){.practical-nav{grid-template-columns:repeat(3,1fr)}.task-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.resource-list{grid-template-columns:1fr}.tracker-table{min-width:1180px}.practical-shell{width:min(100% - 34px,1320px)}}
@media(max-width:720px){.practical-shell{width:calc(100% - 24px);padding-top:18px}.practical-hero{padding:24px 22px}.practical-hero h2{font-size:2.8rem}.practical-nav{grid-template-columns:1fr 1fr}.summary-grid{grid-template-columns:1fr 1fr}.task-grid{grid-template-columns:1fr}.task-hero{grid-template-columns:1fr}.task-date{min-width:0;width:100%}.practice-grid{grid-template-columns:1fr}.summary-panel,.content-panel{padding:20px}.task-evidence-row{grid-template-columns:32px minmax(0,1fr)}.task-evidence-status{grid-column:2;text-align:left}.task-evidence-text{display:block}.task-evidence-text strong{display:block;margin-bottom:2px}.threshold-note{grid-template-columns:1fr}.practical-nav a,.practical-nav .planned{font-size:.82rem}}
