:root{--navy:#071d3a;--coral:#ff4f5e;--cream:#f8f4ee;--white:#fff;--muted:#6d7787;--border:#ddd4cb;--teal:#1f9b8f;--gold:#d69b2d;--plum:#81568b;--green:#13845f;--red:#c74655;--shadow:0 16px 48px rgba(7,29,58,.07)}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--navy);font-family:Montserrat,Arial,sans-serif}.shell{width:min(1160px,calc(100% - 40px));margin:auto}.topbar{background:#fff;border-bottom:1px solid var(--border)}.nav{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font:700 30px/1 "Playfair Display",serif;text-decoration:none;color:var(--navy)}.brand span{color:var(--coral)}nav{display:flex;gap:24px;flex-wrap:wrap}nav a{color:var(--navy);text-decoration:none;font-weight:700;font-size:14px}.page{padding:52px 0 80px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.17em;color:var(--coral);margin-bottom:13px}.spaced{margin-top:30px}.title-row{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:28px}.title-row h1,.student>h1{font:700 clamp(38px,5vw,58px)/1.03 "Playfair Display",serif;margin:0 0 12px}.title-row p,.lead{color:var(--muted);line-height:1.65;margin:0}.panel{background:#fff;border:1px solid var(--border);border-radius:22px;padding:28px;box-shadow:var(--shadow);margin-bottom:22px}.panel h2{font:700 28px/1.1 "Playfair Display",serif;margin:0 0 18px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:block;font-size:13px;font-weight:700;margin:0 0 16px}input,textarea,select{width:100%;margin-top:7px;border:1px solid #d7cec4;border-radius:12px;padding:13px 14px;font:500 15px/1.4 Montserrat;background:#fff;color:var(--navy)}textarea{resize:vertical}.btn{appearance:none;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--navy);font:700 14px Montserrat;padding:12px 16px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.btn.coral{background:var(--coral);border-color:var(--coral);color:#fff}.btn.navy{background:var(--navy);border-color:var(--navy);color:#fff}.btn.danger{border-color:#efb1b6;color:#b62b39}.btn.full{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.actions{display:flex;flex-wrap:wrap;gap:10px}.notice{padding:13px 15px;border-radius:12px;background:#eef4fa;border:1px solid #dce7f1;margin:14px 0}.notice.good{background:#ebf8f2;border-color:#c6ead9;color:#146947}.notice.bad{background:#fff0f1;border-color:#ffd0d4;color:#9a2730}.ready{border-left:6px solid var(--coral)}.share-box{display:flex;gap:16px;align-items:center;margin-top:18px}.share-box input{margin:0}.qr{background:#fff;border:1px solid var(--border);padding:5px;border-radius:10px}.lab-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.lab-cards article{border:1px solid var(--border);border-radius:16px;padding:18px;background:#fbfaf8;display:grid;grid-template-columns:auto 1fr;column-gap:12px}.lab-cards b{color:var(--coral);grid-row:1/3}.lab-cards strong{font-size:15px}.lab-cards span{grid-column:2;color:var(--muted);font-size:13px;line-height:1.45;margin-top:5px}.callout{padding:18px;border-radius:16px;background:#0a2345;color:#e6edf5;line-height:1.6;margin:18px 0}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px}.section-head span{font-size:12px;color:var(--muted)}.activity{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-top:1px solid var(--border)}.activity:first-child{border-top:0}.activity h3{margin:0 0 8px;font-size:17px}.activity p,.muted{color:var(--muted);font-size:13px;line-height:1.6}.activity-side{display:flex;gap:8px;align-items:flex-start}.hero{display:grid;grid-template-columns:1.7fr .8fr;gap:48px;align-items:center;margin:38px 0 54px}.hero h1{font:700 clamp(42px,6vw,70px)/.98 "Playfair Display",serif;margin:0 0 18px}.hero h1 span{color:var(--coral)}.hero p{font-size:18px;color:var(--muted);line-height:1.65}.hero-card{background:var(--navy);color:#fff;border-radius:26px;padding:30px;display:flex;flex-direction:column;gap:14px}.hero-card b{font-size:12px;letter-spacing:.16em;color:#ff7a85}.hero-card strong{font:700 27px/1.25 "Playfair Display",serif}.hero-card span{line-height:1.6;color:#dce7f4}.lab-cards.public{grid-template-columns:repeat(4,1fr)}.student{max-width:1160px}.identity{max-width:650px}.exercise .table-wrap{overflow:auto}.ux-table{border-collapse:collapse;min-width:1080px;width:100%}.ux-table th,.ux-table td{padding:12px;border-bottom:1px solid var(--border);vertical-align:top;text-align:left}.ux-table th{font-size:12px}.ux-table input{min-width:70px}.ux-table textarea{min-width:180px}.micro{font-size:12px;color:var(--muted)}.rating-card,.task-card{border:1px solid var(--border);border-radius:16px;padding:20px;margin-bottom:14px;background:#fcfbfa}.rating-card h3,.task-card h3{margin:0 0 14px}.rating-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.rating-grid.five{grid-template-columns:repeat(5,1fr)}.sus-item{display:grid;grid-template-columns:1fr 110px;align-items:center;gap:18px;padding:12px 0;border-bottom:1px solid var(--border);margin:0}.sus-item select{margin:0}.heart-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.livebar{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--green);margin-bottom:20px}.live-dot{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px rgba(19,132,95,.1)}.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:18px 0 22px}.kpi{background:#fff;border:1px solid var(--border);border-radius:18px;padding:22px;box-shadow:var(--shadow);border-top:5px solid var(--navy)}.kpi.k2{border-top-color:var(--coral)}.kpi.k3{border-top-color:var(--teal)}.kpi small{display:block;color:var(--muted);margin-bottom:9px}.kpi strong{font:700 28px "Playfair Display",serif}.journey-results{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.journey-results article{border:1px solid var(--border);border-radius:16px;padding:16px;background:#fbfaf8}.journey-results h3{font-size:14px;min-height:36px}.metric{display:grid;grid-template-columns:105px 1fr 34px;gap:8px;align-items:center;margin:11px 0;font-size:11px}.metric i{height:9px;background:linear-gradient(90deg,var(--teal),var(--navy));border-radius:999px}.metric.dangerbar i{background:linear-gradient(90deg,#f2b2b7,var(--red))}.task-results{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.task-results article{border:1px solid var(--border);border-radius:16px;padding:20px}.task-results strong{font:700 36px "Playfair Display",serif;color:var(--coral)}.task-results span{display:block;color:var(--muted);font-size:12px}.task-results p{font-size:12px;line-height:1.6}.sus-wrap{display:grid;grid-template-columns:220px 1fr;gap:30px;align-items:center}.sus-score{width:180px;height:180px;border-radius:50%;border:16px solid #fde0e3;display:flex;flex-direction:column;align-items:center;justify-content:center}.sus-score strong{font:700 44px "Playfair Display",serif}.sus-score span,.sus-score small{color:var(--muted)}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.wordcloud{display:flex;gap:11px 16px;flex-wrap:wrap;align-items:center;min-height:220px}.wordcloud span{font-family:"Playfair Display",serif;color:var(--navy)}.wordcloud span:nth-child(3n){color:var(--coral)}.wordcloud span:nth-child(4n){color:var(--teal)}.strategy-list article{display:grid;grid-template-columns:46px 1fr;gap:14px;padding:16px 0;border-top:1px solid var(--border)}.strategy-list article:first-child{border-top:0}.strategy-list b{width:40px;height:40px;border-radius:50%;background:var(--coral);color:#fff;display:flex;align-items:center;justify-content:center}.strategy-list h3{margin:0 0 6px}.strategy-list p{margin:0;color:var(--muted);line-height:1.55;font-size:13px}@media(max-width:960px){.admin-grid,.hero,.result-grid{grid-template-columns:1fr}.lab-cards.public{grid-template-columns:1fr 1fr}.journey-results{grid-template-columns:1fr 1fr}.task-results{grid-template-columns:1fr 1fr}.rating-grid,.rating-grid.five,.heart-grid{grid-template-columns:1fr 1fr}.kpi-grid{grid-template-columns:1fr}.hero{gap:22px}.activity{flex-direction:column}.activity-side{align-self:flex-start}}@media(max-width:600px){.shell{width:min(100% - 24px,1160px)}.page{padding-top:34px}.title-row{flex-direction:column}.two,.lab-cards,.lab-cards.public,.journey-results,.task-results,.rating-grid,.rating-grid.five,.heart-grid{grid-template-columns:1fr}.sus-wrap{grid-template-columns:1fr}.sus-item{grid-template-columns:1fr}.share-box{flex-direction:column;align-items:flex-start}.nav{align-items:flex-start;padding:18px 0;flex-direction:column}}

/* Service Blueprint Live v2 */
.blueprint-board{display:grid;gap:16px;margin:20px 0}.blueprint-moment{border:1px solid var(--border);border-radius:20px;background:#fcfbfa;padding:20px}.bp-head{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:14px}.bp-head>b{font:700 20px/1.15 'Playfair Display',serif}.bp-risk{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:800;color:var(--red)}.bp-risk input{width:68px;margin:0;padding:8px}.bp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.bp-grid label{margin:0}.bp-grid textarea{min-height:92px}.bp-failure textarea{background:#fff7f8;border-color:#f0c5ca}.bp-recovery textarea{background:#f1fbf7;border-color:#c6e6d8}.bp-score-row{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-top:14px}.bp-score-row label{max-width:280px;margin:0}.bp-score-row span{font-size:11px;color:var(--muted)}.bp-close{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}.bp-close label:nth-child(2),.bp-close label:nth-child(3){grid-column:1/-1}.blueprint-live-results article{background:linear-gradient(180deg,#fff,#fbfaf8)}@media(max-width:900px){.bp-grid{grid-template-columns:1fr 1fr}.bp-close{grid-template-columns:1fr}}@media(max-width:600px){.bp-grid{grid-template-columns:1fr}.bp-head,.bp-score-row{align-items:flex-start;flex-direction:column}}

/* Public Service Blueprint */
.public-lab-link{display:block;text-decoration:none;color:inherit}
.public-lab-link article{height:100%;transition:.2s ease;position:relative;overflow:hidden}
.public-lab-link article:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(7,29,58,.10);border-color:#c9d3df}
.available-card{border-top:5px solid var(--coral)!important;background:#fff!important}
.available-card em{grid-column:2;font-style:normal;font-size:11px;font-weight:800;color:var(--green);margin-top:12px}
.public-blueprint-hero{display:grid;grid-template-columns:1.4fr .8fr;gap:28px;align-items:center;margin-bottom:24px}
.public-blueprint-hero h1{font:700 clamp(38px,5vw,58px)/1.03 'Playfair Display',serif;margin:0 0 14px}
.public-blueprint-hero p{color:var(--muted);line-height:1.65;margin:0}
.public-blueprint-hero .summary{background:var(--navy);color:#fff;border-radius:22px;padding:24px}
.public-blueprint-hero .summary strong{font:700 24px/1.2 'Playfair Display',serif;display:block;margin:8px 0}.public-blueprint-hero .summary span{color:#dce7f4;font-size:12px;line-height:1.6}
.public-results{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}
.public-result{background:#fff;border:1px solid var(--border);border-radius:16px;padding:16px}.public-result small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:.05em}.public-result strong{display:block;font:700 24px 'Playfair Display',serif;margin-top:7px}
.public-diagnosis{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.public-diagnosis .panel{margin:0}
@media(max-width:900px){.public-blueprint-hero,.public-diagnosis{grid-template-columns:1fr}.public-results{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.public-results{grid-template-columns:1fr}}
