/* B.E.A.R.S. V112 — Student Achievement Overview visual rebuild only.
   Scope is intentionally limited to the Student Achievement shell + Overview view. */
.v112-sa-shell{background:#f4f1eb!important;padding:10px 18px 22px!important;min-height:calc(100vh - 68px)}
.v112-sa-shell .v112-sa-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 8px}
.v112-sa-title h1{margin:0;font-size:34px;line-height:1.02;font-weight:950;letter-spacing:-1px;color:#111}
.v112-sa-title .brand-red{color:#a70e13;letter-spacing:3px}
.v112-sa-title p{margin:5px 0 0;font-size:15px;color:#626262;letter-spacing:.2px}
.v112-sa-import{border:0;border-radius:9px;background:#bc0c15;color:#fff;font-weight:950;padding:12px 18px;font-size:15px;box-shadow:none;white-space:nowrap;cursor:pointer}
.v112-sa-import:hover{background:#990911}
.v112-sa-shell .sa-tabs{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 9px}
.v112-sa-shell .sa-tabs button{display:inline-flex;align-items:center;gap:7px;border:1px solid #d0ceca;background:#fff;border-radius:9px;padding:9px 13px;font-weight:900;font-size:13px;color:#111;box-shadow:0 1px 2px #00000008}
.v112-sa-shell .sa-tabs button.active{background:linear-gradient(180deg,#c6151e,#a90910);border-color:#a90910;color:#fff}
.v112-sa-shell .sa-tabs button:hover{border-color:#b70d15}
.v112-tab-icon{width:17px;height:17px;display:inline-grid;place-items:center;font-size:15px;line-height:1}
.v112-sa-setup-row{margin-top:-2px;margin-bottom:8px}
.v112-sa-setup-row .sa-tabs{margin:0}

/* hero */
.v112-ach-hero{position:relative;display:grid;grid-template-columns:170px minmax(360px,1.1fr) minmax(330px,.92fr) minmax(245px,.7fr);align-items:center;min-height:208px;background:linear-gradient(105deg,#fffdfa 0%,#fff 57%,#fffdf6 100%);border:1.5px solid #d6a526;border-left:7px solid #d6a526;border-radius:14px;overflow:hidden;margin:6px 0 10px;padding:0 18px 0 8px}
.v112-ach-hero:after{content:"";position:absolute;right:145px;top:20px;width:170px;height:170px;background:radial-gradient(circle at 50% 65%,#ecdcae 0 23%,transparent 24%),radial-gradient(ellipse at 16% 32%,#ecdcae 0 12%,transparent 13%),radial-gradient(ellipse at 38% 13%,#ecdcae 0 11%,transparent 12%),radial-gradient(ellipse at 62% 13%,#ecdcae 0 11%,transparent 12%),radial-gradient(ellipse at 84% 32%,#ecdcae 0 12%,transparent 13%);opacity:.28;transform:rotate(-7deg);pointer-events:none}
.v112-lennie-wrap{height:205px;display:flex;align-items:flex-end;justify-content:center;overflow:visible;z-index:2}
.v112-lennie-wrap img{height:204px;width:auto;object-fit:contain;display:block;filter:drop-shadow(0 2px 2px #0001)}
.v112-hero-copy{padding:18px 18px 18px 8px;border-right:1px solid #ddd;z-index:2}
.v112-hero-copy h2{margin:0 0 8px;font-size:29px;line-height:1.12;letter-spacing:-.6px;color:#111}
.v112-hero-copy p{margin:0;max-width:540px;font-size:16px;line-height:1.38;color:#242424}
.v112-goals{display:grid;gap:7px;padding:18px 24px;z-index:2}
.v112-goal{display:grid;grid-template-columns:48px 1fr;align-items:center;min-height:58px;border-radius:999px;padding:0 18px 0 8px;color:#fff;box-shadow:inset 0 -2px 0 #0002}
.v112-goal .goal-icon{width:43px;height:43px;border-radius:50%;background:#fff2;display:grid;place-items:center;font-size:27px;font-weight:900}
.v112-goal b{font-size:21px;line-height:1.05;display:block}.v112-goal small{display:block;font-size:13px;color:#fff;opacity:.9;margin-top:2px}
.v112-goal.ha{background:linear-gradient(180deg,#c80f18,#a70810)}
.v112-goal.meets{background:linear-gradient(180deg,#09913e,#007b32)}
.v112-goal.masters{background:linear-gradient(180deg,#1b72c9,#0b57aa)}
.v112-nothing{position:relative;z-index:2;align-self:center;text-align:center;padding:15px 5px 10px;color:#ac0e15;font-family:"Segoe Script","Brush Script MT",cursive;font-size:34px;font-weight:700;transform:rotate(-4deg);white-space:nowrap}
.v112-nothing:after{content:"";display:block;width:150px;height:6px;margin:2px auto 0;background:linear-gradient(90deg,#c41118 0 65%,#d39a08 65%);transform:skewX(-28deg);border-radius:3px}

/* KPI row */
.v112-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 10px}
.v112-kpi{display:grid;grid-template-columns:66px 1fr;align-items:center;min-height:91px;background:#fff;border:1px solid #d6d4d0;border-radius:13px;padding:9px 14px;box-shadow:0 1px 2px #00000008}
.v112-kpi .kicon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:24px;font-weight:900}
.v112-kpi label{display:block;text-transform:uppercase;font-size:11px;font-weight:950;letter-spacing:.4px;color:#6a6a6a}
.v112-kpi strong{display:block;font-size:29px;line-height:1.06;margin-top:4px;color:#111}
.v112-kpi.cycle{background:linear-gradient(90deg,#fff,#fff4f4)}.v112-kpi.cycle .kicon{background:#bd0e16}.v112-kpi.cycle label{color:#a40b12}
.v112-kpi.tested .kicon{background:#7b7b7b}
.v112-kpi.opp{background:linear-gradient(90deg,#fff,#fff8e8)}.v112-kpi.opp .kicon{background:#dfa10a}.v112-kpi.opp label{color:#9b6500}
.v112-kpi.risk{background:linear-gradient(90deg,#fff,#fff1f2)}.v112-kpi.risk .kicon{background:#b70d15}.v112-kpi.risk label{color:#a40b12}

/* attainment */
.v112-attainment{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 10px}
.v112-attain{position:relative;display:grid;grid-template-columns:175px 1fr;align-items:center;min-height:190px;background:#fff;border-radius:12px;padding:12px 18px 12px 18px;border:1.5px solid #ddd;overflow:hidden}
.v112-attain.ha{border-color:#f28a12}.v112-attain.meets{border-color:#149246}.v112-attain.masters{border-color:#1d75ca}
.v112-donut{--p:0;--c:#f28a12;width:132px;height:132px;border-radius:50%;background:conic-gradient(var(--c) calc(var(--p)*1%),#ececec 0);display:grid;place-items:center;position:relative;margin:auto}
.v112-donut:after{content:"";position:absolute;inset:22px;border-radius:50%;background:#fff}.v112-donut span{position:relative;z-index:1;font-size:31px;font-weight:950;color:#111}
.v112-attain.ha .v112-donut{--c:#ff8500}.v112-attain.meets .v112-donut{--c:#07913c}.v112-attain.masters .v112-donut{--c:#1674cf}
.v112-attain-copy{padding-left:4px}.v112-attain-copy h3{margin:0 0 12px;font-size:22px;line-height:1.08}.v112-attain-copy .goal{font-size:16px;color:#333}.v112-attain-copy .goal b{font-size:26px}.v112-attain.ha .goal b{color:#ef7d00}.v112-attain.meets .goal b{color:#05873a}.v112-attain.masters .goal b{color:#126bc1}
.v112-needed{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:9px 14px;border-radius:999px;font-weight:900;font-size:14px}.v112-attain.ha .v112-needed{background:#fff0df;color:#9f3600}.v112-attain.meets .v112-needed{background:#e2f4e7;color:#136c31}.v112-attain.masters .v112-needed{background:#e3f0fb;color:#145c9b}

/* bottom panels */
.v112-bottom{display:grid;grid-template-columns:1.08fr .92fr;gap:10px}
.v112-panel{background:#fff;border:1px solid #d4d4d4;border-radius:12px;overflow:hidden}
.v112-panel-head{padding:10px 14px;color:#fff;font-size:18px;font-weight:950;display:flex;align-items:center;gap:9px}
.v112-panel.answers .v112-panel-head{background:linear-gradient(90deg,#bd0d15,#a40910)}
.v112-panel.rules .v112-panel-head{background:#565656}
.v112-answers-grid{display:grid;grid-template-columns:1fr 1fr;padding:0}
.v112-answer{border:0;background:#fff;text-align:left;padding:14px 17px;display:grid;grid-template-columns:34px 1fr;gap:9px;align-items:center;cursor:pointer;min-height:84px}
.v112-answer:nth-child(odd){border-right:1px solid #eee}.v112-answer:nth-child(-n+2){border-bottom:1px solid #eee}.v112-answer:hover{background:#fff8f5}
.v112-answer .aicon{color:#b20b13;font-size:23px}.v112-answer b{display:block;color:#b20b13;font-size:14px;margin-bottom:4px}.v112-answer span{display:block;font-size:13px;color:#333}
.v112-rules{list-style:none;margin:0;padding:10px 16px 12px;counter-reset:rule}.v112-rules li{counter-increment:rule;display:grid;grid-template-columns:27px 1fr;gap:9px;align-items:start;margin:7px 0;font-size:13px;line-height:1.33;color:#292929}.v112-rules li:before{content:counter(rule);width:21px;height:21px;border-radius:50%;background:#a9a9a9;color:#fff;font-weight:900;display:grid;place-items:center;font-size:11px}

@media(max-width:1280px){.v112-ach-hero{grid-template-columns:145px 1fr 330px}.v112-nothing{display:none}.v112-lennie-wrap img{height:185px}.v112-attain{grid-template-columns:145px 1fr}.v112-donut{width:118px;height:118px}.v112-donut:after{inset:20px}}
@media(max-width:980px){.v112-sa-head{align-items:flex-start!important}.v112-ach-hero{grid-template-columns:130px 1fr}.v112-goals{grid-column:1/-1;grid-template-columns:repeat(3,1fr);padding:8px 14px 14px}.v112-hero-copy{border-right:0}.v112-kpis{grid-template-columns:1fr 1fr}.v112-attainment{grid-template-columns:1fr}.v112-bottom{grid-template-columns:1fr}.v112-attain{grid-template-columns:160px 1fr}}
@media(max-width:650px){.v112-sa-shell{padding:10px!important}.v112-sa-head{flex-direction:column}.v112-sa-title h1{font-size:28px}.v112-sa-import{width:100%}.v112-ach-hero{grid-template-columns:100px 1fr;min-height:0}.v112-lennie-wrap{height:155px}.v112-lennie-wrap img{height:155px}.v112-hero-copy h2{font-size:22px}.v112-hero-copy p{font-size:13px}.v112-goals{grid-template-columns:1fr}.v112-kpis{grid-template-columns:1fr}.v112-attain{grid-template-columns:120px 1fr;padding:10px}.v112-donut{width:100px;height:100px}.v112-donut:after{inset:17px}.v112-donut span{font-size:24px}.v112-answers-grid{grid-template-columns:1fr}.v112-answer{border-right:0!important;border-bottom:1px solid #eee!important}}

/* V120 — remove the Nothing Wasted signature; keep only the Milne paw mark. */
.v112-paw-only{position:relative;z-index:2;align-self:center;justify-self:center;width:86px;height:86px;color:#8b8b8b;opacity:.18;display:grid;place-items:center}
.v112-paw-only svg{width:100%;height:100%;display:block}
@media(max-width:1280px){.v112-paw-only{display:grid}}
