/* Wolf Hack Academy — Phase 04 / Authority, Evidence, Academy & Knowledge */
.phase04-page{--p4-navy:#061426;--p4-navy-2:#0a1d34;--p4-navy-3:#0d2848;--p4-blue:#087cff;--p4-cyan:#19d4ff;--p4-ice:#f4f8fc;--p4-steel:#93a8bf;--p4-line:rgba(81,165,230,.24);--p4-shadow:0 24px 70px rgba(5,28,55,.14)}
.phase04-page .p4-kicker{display:inline-flex;align-items:center;gap:.55rem;font:700 .72rem/1.2 "IBM Plex Mono",monospace;letter-spacing:.15em;color:#159ddb;text-transform:uppercase}.phase04-page .p4-kicker:before{content:"";width:1.4rem;height:1px;background:linear-gradient(90deg,#087cff,#1ad4ff)}
.p4-authority-strip{position:relative;background:linear-gradient(180deg,#f8fbff,#edf5fb);border-block:1px solid rgba(39,107,165,.16)}.p4-authority-strip:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(19,97,160,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(19,97,160,.035) 1px,transparent 1px);background-size:32px 32px;pointer-events:none}.p4-authority-grid{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;padding:1.1rem 0}.p4-authority-grid>div{min-height:92px;padding:1.05rem 1.2rem;border-right:1px solid rgba(25,105,170,.14);display:flex;flex-direction:column;justify-content:center}.p4-authority-grid>div:last-child{border-right:0}.p4-authority-grid strong{font-family:"Chakra Petch",sans-serif;font-size:clamp(1.25rem,2vw,2.05rem);line-height:1;color:#061b36;letter-spacing:-.02em}.p4-authority-grid small{margin-top:.28rem;color:#4a6680;font-weight:700}.p4-authority-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.p4-section-heading{max-width:760px}.p4-section-heading h2{margin:.55rem 0 .65rem;font-size:clamp(1.85rem,3vw,3rem)}.p4-section-heading p{color:#536d84;font-size:1rem;line-height:1.7}
/* Evidence wall */
.p4-evidence-toolbar{margin:0 0 1.6rem;padding:1.45rem;border:1px solid rgba(36,125,193,.18);border-radius:22px;background:linear-gradient(135deg,#fff,#f4f9fd);box-shadow:0 18px 44px rgba(7,40,73,.08);display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.9fr);gap:1.3rem;align-items:end}.p4-toolbar-copy h2{margin:.45rem 0 .45rem;font-size:clamp(1.65rem,2.7vw,2.5rem)}.p4-toolbar-copy p{margin:0;color:#597188;line-height:1.65}.p4-toolbar-controls{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.p4-toolbar-controls label{font-size:.76rem;font-weight:800;color:#213d58;letter-spacing:.04em}.p4-toolbar-controls input,.p4-toolbar-controls select{width:100%;min-height:48px;margin-top:.42rem;padding:.72rem .85rem;border:1px solid rgba(35,111,173,.22);border-radius:12px;background:#fff;color:#09213c;font:600 .9rem "Manrope",sans-serif;outline:none}.p4-toolbar-controls input:focus,.p4-toolbar-controls select:focus{border-color:#168ff0;box-shadow:0 0 0 3px rgba(8,124,255,.12)}.p4-result-line{grid-column:1/-1;display:flex;align-items:center;gap:.45rem;padding-top:.85rem;border-top:1px solid rgba(28,108,170,.12);font-size:.85rem;color:#526a80}.p4-status-dot{width:8px;height:8px;border-radius:50%;background:#18c7a3;box-shadow:0 0 0 5px rgba(24,199,163,.12)}.p4-evidence-wall-page .testimonial-feature,.p4-evidence-wall-page .testimonial-row{transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}.p4-evidence-wall-page .testimonial-feature:hover,.p4-evidence-wall-page .testimonial-row:hover{transform:translateY(-3px);box-shadow:0 22px 50px rgba(5,31,59,.11);border-color:rgba(23,133,216,.35)}.p4-evidence-wall-page [data-p4-evidence-img],.p4-academic-archive-page [data-p4-course-img]{cursor:zoom-in;outline:none}.p4-evidence-wall-page [data-p4-evidence-img]:focus-visible,.p4-academic-archive-page [data-p4-course-img]:focus-visible{box-shadow:0 0 0 4px rgba(8,124,255,.24)}
/* Modal */
.p4-modal[hidden]{display:none}.p4-modal{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:1.1rem}.p4-modal-backdrop{position:absolute;inset:0;background:rgba(2,10,20,.82);backdrop-filter:blur(10px)}.p4-modal-panel{position:relative;z-index:1;width:min(960px,96vw);max-height:92vh;overflow:auto;border:1px solid rgba(86,188,255,.42);border-radius:22px;background:linear-gradient(180deg,#07172a,#0b2541);box-shadow:0 40px 120px rgba(0,0,0,.45);padding:1.05rem}.p4-modal-panel img{display:block;width:100%;height:auto;max-height:75vh;object-fit:contain;border-radius:14px;background:#f5f8fb}.p4-modal-close{position:absolute;z-index:2;right:1.1rem;top:1.1rem;width:44px;height:44px;border:1px solid rgba(111,202,255,.35);border-radius:50%;background:#07192d;color:white;font-size:1.6rem;cursor:pointer}.p4-modal-meta{display:flex;flex-direction:column;gap:.15rem;padding:.35rem 3.8rem .85rem .25rem;color:#eaf7ff}.p4-modal-meta span{font:700 .7rem "IBM Plex Mono",monospace;letter-spacing:.13em;color:#22d6ff}.p4-modal-meta strong{font:700 1.25rem "Chakra Petch",sans-serif}.p4-modal-caption{padding:.9rem .3rem .2rem;color:#bed3e5;line-height:1.55}
/* Case intelligence */
.p4-case-system{padding:1.7rem 0 2.2rem}.p4-flow{display:grid;gap:.75rem;margin-top:1.25rem}.p4-flow--4{grid-template-columns:repeat(4,minmax(0,1fr))}.p4-flow>div{position:relative;min-height:110px;padding:1.1rem;border:1px solid rgba(33,126,196,.18);border-radius:16px;background:linear-gradient(145deg,#fff,#eef6fb)}.p4-flow>div:not(:last-child):after{content:"→";position:absolute;right:-.65rem;top:50%;transform:translateY(-50%);z-index:2;color:#0a8cf2;font-weight:900}.p4-flow b{display:block;font:700 1rem "Chakra Petch",sans-serif;color:#092847;letter-spacing:.04em}.p4-flow span{display:block;margin-top:.35rem;color:#5d7388;font-size:.86rem}.p4-case-ribbon{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:.75rem 0 1rem;font:700 .66rem "IBM Plex Mono",monospace;letter-spacing:.08em;color:#2476ad}.p4-case-ribbon i{width:18px;height:1px;background:#9bc8e7}.p4-case-page .case-file{border-color:rgba(31,126,197,.2);box-shadow:0 16px 46px rgba(7,36,65,.07)}
/* Academic archive */
.p4-year-rail{display:grid;grid-template-columns:1fr auto;gap:.9rem 1.5rem;align-items:center;padding:1.35rem 0 1.6rem}.p4-year-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.p4-year-buttons button,.p4-filter-pills button{min-height:42px;padding:.62rem .9rem;border:1px solid rgba(23,110,177,.2);border-radius:999px;background:#fff;color:#143958;font:800 .76rem "Manrope",sans-serif;cursor:pointer;transition:.2s}.p4-year-buttons button:hover,.p4-year-buttons button.active,.p4-filter-pills button:hover,.p4-filter-pills button.active{background:#081b31;color:#fff;border-color:#0b7ee8;box-shadow:0 8px 20px rgba(7,68,117,.18)}.p4-archive-telemetry{grid-column:1/-1;display:grid;grid-template-columns:auto auto 1fr auto auto;gap:.55rem;align-items:center;padding:.7rem .85rem;border:1px solid rgba(30,116,180,.13);border-radius:12px;background:#f5f9fc;font:700 .68rem "IBM Plex Mono",monospace;color:#50697f}.p4-archive-telemetry b{color:#0d6fae}.p4-archive-telemetry i{height:1px;background:linear-gradient(90deg,#0b8cf0,#1dd4ff,transparent)}.p4-academic-archive-page .record{position:relative;overflow:hidden}.p4-academic-archive-page .record:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(#0c7dff,#1fd3ff);opacity:.75}.p4-academic-archive-page .archive-filter{position:sticky;top:92px;align-self:start}
/* Instructors */
.p4-instructor-intel{padding:1.6rem 0 2rem}.p4-expertise-matrix{margin-top:1.3rem;border:1px solid rgba(29,120,188,.18);border-radius:18px;overflow:hidden;background:#fff;box-shadow:var(--p4-shadow)}.p4-expertise-row{display:grid;grid-template-columns:minmax(180px,.55fr) 1.45fr;gap:1rem;padding:1rem 1.2rem;border-bottom:1px solid rgba(26,105,166,.11);align-items:center}.p4-expertise-row:last-child{border-bottom:0}.p4-expertise-row strong{font-family:"Chakra Petch",sans-serif;color:#0a2745;font-size:1.02rem}.p4-expertise-row>div{display:flex;flex-wrap:wrap;gap:.45rem}.p4-expertise-row span{padding:.42rem .68rem;border-radius:999px;background:#edf6fd;border:1px solid #cfe6f6;color:#12679f;font-size:.75rem;font-weight:800}
/* History */
.p4-era-map{padding:1.8rem 0 2.4rem}.p4-era-track{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-top:1.4rem}.p4-era-track:before{content:"";position:absolute;left:8%;right:8%;top:38px;height:2px;background:linear-gradient(90deg,#0a72dc,#1bd4ff,#5b9ed6)}.p4-era-track a{position:relative;z-index:1;text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:.35rem;color:#0b2845}.p4-era-track a:before{content:"";width:18px;height:18px;margin-top:29px;border-radius:50%;background:#fff;border:5px solid #087cff;box-shadow:0 0 0 6px rgba(8,124,255,.1)}.p4-era-track b{order:-1;font:700 1.2rem "Chakra Petch",sans-serif}.p4-era-track span{font:700 .69rem "IBM Plex Mono",monospace;letter-spacing:.09em;color:#5a7690}.p4-history-page .history-entry{scroll-margin-top:110px;position:relative}.p4-history-page .history-entry:target{outline:2px solid rgba(8,124,255,.35);outline-offset:6px}
/* Participations */
.p4-presence-controls{display:grid;grid-template-columns:1.3fr auto;gap:1rem;align-items:end;padding:1.6rem 0 2rem}.p4-presence-controls h2{margin:.5rem 0}.p4-presence-controls p{margin:0;color:#587188}.p4-filter-pills{display:flex;gap:.45rem;flex-wrap:wrap;justify-content:flex-end}.p4-participations-page .timeline-entry{transition:.22s}.p4-participations-page .timeline-entry[data-p4-type="Sponsorship"]{border-left:3px solid #087cff}.p4-participations-page .timeline-entry[data-p4-type="Participation"]{border-left:3px solid #19d4ff}
/* Alliances */
.p4-partner-network{padding:1.7rem 0 2.4rem}.p4-network-map{position:relative;min-height:390px;margin-top:1.4rem;border:1px solid rgba(54,151,214,.22);border-radius:24px;overflow:hidden;background:radial-gradient(circle at 50% 50%,rgba(8,124,255,.12),transparent 28%),linear-gradient(145deg,#061527,#0a2746);box-shadow:0 26px 70px rgba(4,24,46,.25)}.p4-network-map:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(56,168,232,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(56,168,232,.07) 1px,transparent 1px);background-size:42px 42px}.p4-network-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:180px;height:180px;border-radius:50%;display:grid;place-items:center;text-align:center;background:radial-gradient(circle,#0c2f52,#061526 67%);border:1px solid rgba(63,184,255,.5);box-shadow:0 0 0 16px rgba(8,124,255,.05),0 0 60px rgba(8,124,255,.17);color:white}.p4-network-core img{width:76px;height:76px;object-fit:contain}.p4-network-core strong{font:700 .9rem "Chakra Petch",sans-serif;letter-spacing:.09em}.p4-network-node{position:absolute;min-width:190px;padding:1rem 1.1rem;border-radius:15px;border:1px solid rgba(91,190,247,.35);background:rgba(7,28,50,.86);color:white;box-shadow:0 16px 34px rgba(0,0,0,.25)}.p4-network-node b{display:block;font:700 1rem "Chakra Petch",sans-serif}.p4-network-node span{display:block;margin-top:.3rem;color:#39d9ff;font:700 .65rem "IBM Plex Mono",monospace;letter-spacing:.08em}.p4-network-node.n1{left:8%;top:18%}.p4-network-node.n2{right:8%;top:18%}.p4-network-node.n3{left:50%;bottom:8%;transform:translateX(-50%)}.p4-alliances-page .evidence-card{position:relative}.p4-alliances-page .evidence-card:after{content:attr(data-p4-state);position:absolute;left:1rem;top:1rem;padding:.4rem .55rem;border-radius:8px;background:rgba(5,22,40,.9);color:#50dcff;font:700 .63rem "IBM Plex Mono",monospace;letter-spacing:.08em}
/* Knowledge graph */
.p4-knowledge-graph{padding:1.6rem 0 2.25rem}.p4-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-top:1.25rem}.p4-topic-grid button{min-height:100px;padding:1rem;text-align:left;border:1px solid rgba(34,123,191,.18);border-radius:16px;background:linear-gradient(145deg,#fff,#eef7fd);cursor:pointer;transition:.22s}.p4-topic-grid button:hover,.p4-topic-grid button.active{transform:translateY(-3px);border-color:#188ae2;box-shadow:0 18px 42px rgba(6,48,82,.12)}.p4-topic-grid span{display:block;font:700 .68rem "IBM Plex Mono",monospace;color:#168bd5}.p4-topic-grid b{display:block;margin-top:.42rem;font:700 1rem "Chakra Petch",sans-serif;color:#0a2a49}.p4-library-page .article-card{transition:.22s}.p4-library-page .article-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(7,44,76,.1)}
/* Articles */
.p4-article-page{background:linear-gradient(180deg,#f8fbfe 0,#fff 30%)}.p4-article-page .reading{position:relative}.p4-reading-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:9999;background:rgba(4,30,54,.08)}.p4-reading-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,#087cff,#19d4ff);box-shadow:0 0 12px rgba(25,212,255,.55)}.p4-article-visual{scroll-margin-top:96px;margin:1.55rem 0 1.9rem;padding:1.25rem;border:1px solid rgba(35,127,194,.2);border-radius:22px;background:linear-gradient(145deg,#f8fcff,#edf6fc);box-shadow:0 18px 44px rgba(6,43,74,.08)}.p4-article-visual-head h2{margin:.45rem 0 .45rem;font-size:clamp(1.45rem,2.4vw,2.15rem)}.p4-article-visual-head p{margin:0;color:#5a7287;font-size:.9rem;line-height:1.65}.p4-article-flow{display:flex;align-items:stretch;gap:.55rem;overflow-x:auto;padding:.95rem 0 .15rem;margin-top:.7rem;scrollbar-width:thin}.p4-article-node{position:relative;flex:1 0 122px;min-height:96px;padding:.85rem .8rem;border-radius:14px;background:#071b31;color:white;border:1px solid rgba(64,181,248,.32);display:flex;flex-direction:column;justify-content:center}.p4-article-node:not(:last-child):after{content:"→";position:absolute;right:-.5rem;top:50%;transform:translateY(-50%);z-index:2;color:#20d8ff;font-weight:900}.p4-article-node span{font:700 .62rem "IBM Plex Mono",monospace;color:#3bdcff}.p4-article-node b{margin-top:.3rem;font:700 .86rem "Chakra Petch",sans-serif;letter-spacing:.03em}.p4-related{margin:2.3rem 0 1.5rem;padding-top:1.6rem;border-top:1px solid rgba(29,105,165,.16)}.p4-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1rem}.p4-related-grid a{display:flex;flex-direction:column;min-height:150px;padding:1rem;border-radius:16px;border:1px solid rgba(27,115,181,.18);background:#f7fbfe;text-decoration:none;color:#0a2a47;transition:.22s}.p4-related-grid a:hover{transform:translateY(-3px);border-color:#1889dc;box-shadow:0 16px 36px rgba(7,46,78,.1)}.p4-related-grid span{font:700 .63rem "IBM Plex Mono",monospace;letter-spacing:.08em;color:#168cd9}.p4-related-grid b{margin:.45rem 0 auto;font-family:"Chakra Petch",sans-serif;line-height:1.3}.p4-related-grid small{margin-top:.7rem;color:#1779b8;font-weight:800}
/* Responsive */
@media(max-width:1100px){.p4-authority-grid{grid-template-columns:repeat(2,1fr)}.p4-authority-grid--three{grid-template-columns:repeat(3,1fr)}.p4-evidence-toolbar{grid-template-columns:1fr}.p4-topic-grid{grid-template-columns:repeat(2,1fr)}.p4-related-grid{grid-template-columns:1fr 1fr}.p4-flow--4{grid-template-columns:repeat(2,1fr)}.p4-flow>div:nth-child(2):after{display:none}.p4-network-node.n1{left:3%}.p4-network-node.n2{right:3%}.p4-presence-controls{grid-template-columns:1fr}.p4-filter-pills{justify-content:flex-start}}
@media(max-width:760px){.p4-authority-grid,.p4-authority-grid--three{grid-template-columns:1fr}.p4-authority-grid>div{min-height:72px;border-right:0;border-bottom:1px solid rgba(25,105,170,.12)}.p4-authority-grid>div:last-child{border-bottom:0}.p4-toolbar-controls{grid-template-columns:1fr}.p4-year-rail{grid-template-columns:1fr}.p4-archive-telemetry{grid-template-columns:auto auto;align-items:start}.p4-archive-telemetry i{display:none}.p4-academic-archive-page .archive-filter{position:static}.p4-expertise-row{grid-template-columns:1fr}.p4-era-track{grid-template-columns:1fr;padding-left:1.1rem}.p4-era-track:before{left:17px;right:auto;top:8%;bottom:8%;width:2px;height:auto}.p4-era-track a{align-items:flex-start;padding-left:1.8rem}.p4-era-track a:before{position:absolute;left:-.3rem;top:.2rem;margin:0}.p4-network-map{min-height:560px}.p4-network-core{width:150px;height:150px}.p4-network-node{left:50%!important;right:auto!important;transform:translateX(-50%)!important;width:min(86%,280px)}.p4-network-node.n1{top:5%}.p4-network-node.n2{top:auto;bottom:5%}.p4-network-node.n3{bottom:24%}.p4-topic-grid,.p4-related-grid,.p4-flow--4{grid-template-columns:1fr}.p4-flow>div:after{display:none!important}.p4-modal{padding:.5rem}.p4-modal-panel{width:100%;border-radius:16px}.p4-article-flow{padding-bottom:.55rem}.p4-article-node{flex-basis:132px}}
@media(max-width:430px){.p4-evidence-toolbar,.p4-article-visual{padding:1rem;border-radius:16px}.p4-year-buttons button,.p4-filter-pills button{min-height:44px}.p4-topic-grid button{min-height:88px}.p4-section-heading h2,.p4-toolbar-copy h2{font-size:1.55rem}.p4-network-core img{width:58px;height:58px}.p4-related-grid a{min-height:125px}}
@media(prefers-reduced-motion:reduce){.phase04-page *, .phase04-page *:before,.phase04-page *:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
/* Defensive mobile containment discovered during Phase 04 responsive QA */
.p4-authority-strip{overflow:hidden}.p4-authority-grid,.p4-authority-grid>div{min-width:0}.p4-authority-grid strong,.p4-authority-grid small,.p4-authority-grid .p4-kicker{overflow-wrap:anywhere;word-break:normal}
