/* Extends the established V0.6 prototype tokens and controls. */
.study{background:var(--soft);font-size:14px;color:var(--ink)}.study-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 4%;background:white;border-bottom:1px solid var(--line)}.study-brand{font-size:25px;font-weight:850;letter-spacing:-1px}.study-brand span{font-size:14px;font-weight:600;letter-spacing:0;margin-left:12px;color:var(--ink)}.role-tabs{display:flex;border-radius:14px;background:var(--soft);padding:4px;gap:3px}.role-tabs button{padding:9px 18px;font-size:13px;border-radius:10px}.role-tabs .selected{background:var(--blue);color:white}.demo-notice{font-size:12px;color:var(--muted);padding:10px 4%;background:#eaf0fa}.study p{line-height:1.75}.study h1{font-size:28px;letter-spacing:-.8px}.study h2{margin-bottom:10px}.study h3{margin:0 0 8px}.study label{display:block;color:var(--muted);font-size:12px}.study input:not([type=checkbox]),.study select,.study textarea{display:block;width:100%;border:1px solid #d4deed;background:#fff;border-radius:10px;padding:10px 12px;color:var(--ink);margin-top:6px;min-width:0}.study input[type=checkbox]{min-height:0;accent-color:var(--blue)}.study textarea{font:inherit;min-height:90px;resize:vertical}.study .primary{width:auto}.study .full{width:100%}.study .card{border:1px solid var(--line);box-shadow:none;padding:22px}.study .muted{color:var(--muted)}.study .tiny{font-size:12px}.study .eyebrow{font-size:11px;letter-spacing:1.5px;margin-bottom:10px}.actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}.actions>*{flex:1}.pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}.rowline{display:flex;align-items:center;justify-content:space-between;gap:12px}.chip{font-size:11px;background:#eaf1ff;color:#315e9b;padding:5px 9px;border-radius:6px;display:inline-block}.chip.warn{background:#fff1db;color:#8c5914}.chip.good{background:#e5f3ec;color:#1d6f4c}.mobile-stage{max-width:1060px;margin:42px auto;display:grid;grid-template-columns:1fr 420px;gap:100px;padding:0 20px;align-items:start}.intro{padding:70px 0}.intro h1{font-size:44px;line-height:1.35;margin:20px 0}.intro h1 span{color:var(--blue)}.intro>p{font-size:16px;color:var(--muted);max-width:380px}.journey-mini{margin-top:38px;display:grid;gap:20px}.journey-mini div{display:flex;gap:14px;align-items:center}.journey-mini b{width:30px;height:30px;border:1px solid #c5d4e9;border-radius:50%;display:grid;place-items:center;color:var(--blue)}.device{background:#eef4ff;border:7px solid white;border-radius:32px;box-shadow:0 16px 50px #364f7614;overflow:hidden;min-width:0}.device-head{padding:20px 20px 16px;background:linear-gradient(125deg,#d9dfff,#d4ebff)}.device-head .rowline{margin-bottom:22px}.device-head h2{font-size:24px;margin:4px 0}.device-main{padding:18px 14px}.device-tabs{display:flex;gap:8px;margin:16px 0 0}.device-tabs button{flex:1;font-size:12px;background:#ffffff7a;border-radius:11px;padding:9px 4px}.device-tabs .active{background:white;color:var(--blue);font-weight:600}.upload-zone{border:1px dashed #91aede;background:#f5f8ff;min-height:170px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:14px;margin:16px 0;overflow:hidden}.upload-zone img{max-height:180px;width:100%;object-fit:contain}.camera-mark{font-size:38px;color:var(--blue)}.upload-zone p{font-size:12px;color:var(--muted);padding:6px}.sample-art{width:150px;height:120px;display:block}.file-label{cursor:pointer;border:1px solid #cad8ee;border-radius:10px;padding:12px;text-align:center;color:var(--blue)!important;font-size:13px!important;background:white}.file-label input{max-width:100%;font-size:11px}.receipt{background:#fff;text-align:center;padding:30px 20px;border-radius:20px;border:1px solid #c5e3d5}.receipt .check{width:60px;height:60px;border-radius:50%;background:#e4f4ec;color:#25815a;font-size:32px;margin:0 auto 18px;display:grid;place-items:center}.receipt h2{margin-bottom:8px}.receipt .reference{margin:22px 0;background:var(--soft);padding:12px;border-radius:10px;font-size:12px;overflow-wrap:anywhere}.history-item{border-top:1px solid var(--line);padding:15px 0}.history-item:last-child{padding-bottom:0}.design-note{margin:16px 0 0;font-size:11px;color:var(--muted);line-height:1.65}.error-note{background:#fff0ee;color:#a1382a;padding:12px;border-radius:10px;margin:12px 0}.success-note{background:#e8f5ef;color:#276b50;padding:12px;border-radius:10px;margin:12px 0}.admin-stage{display:grid;grid-template-columns:218px minmax(0,1fr);min-height:calc(100vh - 108px)}.admin-sidebar{background:#fff;border-right:1px solid var(--line);padding:28px 18px}.admin-sidebar h3{padding:0 12px;font-size:14px}.admin-sidebar nav{margin-top:25px}.admin-sidebar button{display:block;width:100%;text-align:left;padding:13px 14px;border-radius:10px;margin:5px 0;color:var(--muted)}.admin-sidebar button.active{background:#edf3ff;color:var(--blue);font-weight:600}.admin-sidebar small{display:block;padding:15px 12px;color:var(--muted)}.admin-main{padding:30px;min-width:0}.admin-heading{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:24px}.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.kpi{padding:20px;background:#fff;border:1px solid var(--line);border-radius:15px}.kpi b{font-size:28px;display:block;margin:4px 0}.kpi small{color:var(--muted)}.review-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px;align-items:start}.record-list{display:grid;gap:10px}.record-button{padding:16px;background:white;border:1px solid var(--line);border-radius:12px;display:block;width:100%;text-align:left}.record-button.active{border-color:#648de8;box-shadow:inset 3px 0 var(--blue)}.record-button strong{display:block;margin:8px 0;font-size:15px}.record-button small{display:block;line-height:1.8;color:var(--muted)}.record-button .rowline{font-size:11px}.record-photo{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:center;padding:12px;border-radius:12px;background:var(--soft);margin:18px 0}.record-photo img{max-width:140px;max-height:120px}.assignment{padding:16px;background:#f6f8fc;border-radius:12px;margin:18px 0}.food-item{padding:16px 0;border-top:1px solid var(--line)}.food-grid{display:grid;grid-template-columns:1.5fr .8fr 1fr 44px;gap:12px;align-items:end}.text-link{color:var(--blue);font-size:12px}.remove{color:#9e433e;border:1px solid var(--line);border-radius:10px;font-size:20px}.nutrient-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;border:1px solid var(--line);border-radius:12px;margin:18px 0;padding:16px}.nutrient-grid b{font-size:21px;display:block;margin:4px 0}.nutrient-grid small{display:block;color:var(--muted);font-size:10px}.toolbar{display:flex;gap:14px;flex-wrap:wrap;align-items:end;margin:18px 0}.toolbar>label{flex:1;min-width:150px}.table-scroll{overflow:auto}.study table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}.study th{color:var(--muted);font-weight:500;background:#f6f8fc}.study td,.study th{padding:13px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.empty{padding:45px 20px;text-align:center;color:var(--muted);background:#fff;border-radius:14px;border:1px solid var(--line)}.state-tools{margin-top:25px;border-top:1px solid var(--line);padding-top:14px;color:var(--muted);font-size:12px}.state-tools summary{cursor:pointer}.state-tools label{margin-top:10px}.state-tools .secondary{font-size:12px;padding:8px}.audit{padding:12px;background:#f6f8fc;border-radius:10px;font-size:11px;line-height:1.8;color:var(--muted);margin-top:15px;max-height:120px;overflow:auto}#notice{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);max-width:90vw;padding:12px 20px;border-radius:12px;background:#1d3155;color:#fff;z-index:30;display:none;box-shadow:0 6px 25px #0002}dialog{max-width:430px;width:90%;border:0;border-radius:20px;padding:28px;color:var(--ink)}dialog::backdrop{background:#15274666}.diagram-img{width:100%;display:block}.study button:focus-visible,.study a:focus-visible,.study textarea:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
@media(max-width:1100px){.mobile-stage{gap:45px}.review-layout{grid-template-columns:230px minmax(0,1fr)}.admin-main{padding:22px}.food-grid{grid-template-columns:1fr 1fr}.food-grid .remove{width:44px}.admin-stage{grid-template-columns:170px minmax(0,1fr)}}
@media(max-width:760px){.study-header{padding:14px 16px;flex-wrap:wrap;gap:12px}.study-header>a:last-child{font-size:11px}.study-brand{font-size:23px}.study-brand span{font-size:12px}.role-tabs{order:3;width:100%}.role-tabs button{flex:1;padding:8px}.demo-notice{font-size:10px;padding:9px 16px}.mobile-stage{display:block;margin:18px auto;padding:0 12px;max-width:450px}.intro{display:none}.device{border-width:4px;border-radius:24px}.admin-stage{display:block}.admin-sidebar{padding:12px 16px;border-right:0}.admin-sidebar h3,.admin-sidebar small{display:none}.admin-sidebar nav{display:flex;margin:0;gap:6px}.admin-sidebar button{text-align:center;padding:8px;font-size:12px;margin:0}.admin-main{padding:18px 14px}.admin-heading{align-items:start;margin-bottom:18px}.admin-heading h1{font-size:24px}.admin-heading .chip{max-width:110px}.kpis{gap:8px}.kpi{padding:12px}.kpi b{font-size:25px}.kpi small{font-size:10px}.review-layout{display:block}.record-list{grid-template-columns:1fr;margin-bottom:18px}.record-button{padding:12px}.record-button strong{font-size:14px}.record-photo{grid-template-columns:100px 1fr;gap:10px}.record-photo img,.sample-art{max-width:100%}.study .card{padding:17px}.food-grid{gap:10px}.nutrient-grid{padding:12px 8px;gap:5px}.nutrient-grid b{font-size:19px}.pair{gap:10px}.toolbar>label{min-width:120px}.actions{gap:7px}.actions .secondary,.actions .primary{font-size:12px;padding:10px}.admin-heading .secondary{font-size:11px}.study input,.study select,.study textarea{font-size:14px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
