/* Dedicated practical shell; normal page scrolling, shared visual language. */
body.ifd-phishing-active .md-header,body.ifd-phishing-active .md-tabs,body.ifd-phishing-active .md-sidebar,body.ifd-phishing-active .md-footer,body.ifd-phishing-active .ifd-modebar,body.ifd-phishing-active .ifd-mode-switcher,body.ifd-phishing-active .ifd-ask-launcher,body.ifd-phishing-active .md-top{display:none!important}
body.ifd-phishing-active .md-main,body.ifd-phishing-active .md-main__inner,body.ifd-phishing-active .md-content,body.ifd-phishing-active .md-content__inner{margin:0;padding:0;max-width:none}
body.ifd-phishing-active #ifd-main-content>h1,body.ifd-phishing-active .md-content__inner::before,body.ifd-phishing-active .md-content__inner>h1{display:none}
body.ifd-phishing-active{background:#f4f7fa}
#ifd-phishing-website{--ph-header:100px;--ph-offset:160px;--ph-footer:70px;--ph-task-top:116px;color:#1b232e;background:#f4f7fa;font:17px/1.6 'Source Serif 4',Georgia,serif;min-height:100vh}
#ifd-phishing-website *{box-sizing:border-box}
#ifd-phishing-website h1,#ifd-phishing-website h2,#ifd-phishing-website h3,#ifd-phishing-website button,#ifd-phishing-website label,#ifd-phishing-website summary,#ifd-phishing-website nav,#ifd-phishing-website .ph-meta{font-family:Inter,Arial,sans-serif}
#ifd-phishing-website h2{font-size:23px;line-height:1.3;letter-spacing:-.4px;margin:10px 0 20px;color:#152535;font-weight:700}
#ifd-phishing-website h3{font-size:18px;line-height:1.4;margin:24px 0 10px;font-weight:650}
#ifd-phishing-website p{font-size:17px;line-height:1.65;margin:12px 0;max-width:78ch}
#ifd-phishing-website a{color:#185fa5;text-decoration:underline}
#ifd-phishing-website code,#ifd-phishing-website pre{font:13px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;white-space:pre-wrap;color:#1b354a;background:#f0f4f7;padding:2px 4px}
#ifd-phishing-website pre{padding:18px;border:1px solid #cbd5df}
#ifd-phishing-website button,.ph-mode{font:14px/1.4 Inter,Arial,sans-serif;min-height:44px;padding:10px 14px;border:1px solid #a5b6c5;border-radius:4px;background:white;color:#173c60;cursor:pointer}
#ifd-phishing-website button:hover:not(:disabled){background:#eaf2f8;border-color:#185fa5}
#ifd-phishing-website button:disabled{opacity:.48;cursor:default}
#ifd-phishing-website :focus-visible{outline:3px solid #185fa5;outline-offset:4px}
#ifd-phishing-website [tabindex="-1"]:focus:not(:focus-visible){outline:none}
.ph-top{position:sticky;top:0;z-index:20;background:#071426;color:#e6ecf5;padding:16px 24px;display:flex;align-items:center;gap:14px;border-bottom:1px solid #223b51}
.ph-top>div{margin-right:auto;display:grid;gap:4px;min-width:0}.ph-top span{font:11px Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:.6px}
#ifd-phishing-website .ph-top h1{font-size:20px;color:#fff;margin:0;font-weight:650;letter-spacing:-.3px;line-height:1.3}
#ifd-phishing-website .ph-top a{color:#e6ecf5;font:14px Inter,Arial,sans-serif}
#ifd-phishing-website .ph-top button,#ifd-phishing-website .ph-top .ph-mode{background:transparent;color:#e6ecf5;border-color:#8396a9;text-decoration:none}
.ph-progress{font:22px Inter,Arial,sans-serif;white-space:nowrap}
.ph-content{max-width:1600px;margin:auto;padding:24px 24px calc(var(--ph-footer) + 28px)}
.ph-explore .ph-content{max-width:1300px;padding-bottom:32px}
#ph-material{max-width:1100px;margin:0 auto 24px;border:1px solid #cad5df;background:white}
#ifd-phishing-website summary{font-size:15px;font-weight:600;cursor:pointer;padding:14px 18px;background:#edf3f8;list-style-position:inside}
.ph-material-body{padding:20px 28px}.ph-material-body article{border-top:1px solid #d1dbe3;margin-top:24px;padding-top:6px}
.ph-meta{font-size:12px!important;line-height:1.6!important;color:#526674}
.ph-explorer{padding:0 0 18px}.ph-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:16px 0}
.ph-toolbar label{display:grid;gap:6px;font-size:14px;min-width:240px}
.ph-tabs{position:sticky;top:var(--ph-header);z-index:15;background:#f4f7fa;padding:10px 0;display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
#ifd-phishing-website .ph-tabs [aria-pressed=true]{background:#185fa5;color:white;border-color:#185fa5}
.ph-workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(360px,1fr);align-items:start;gap:24px}
.ph-explore .ph-workspace{display:block}
.ph-surface,.ph-task,.ph-debrief{background:white;border:1px solid #cad5df;border-radius:4px;padding:22px;min-width:0}
.ph-task{position:sticky;top:var(--ph-task-top)}
.ph-task progress{width:100%;height:5px;accent-color:#185fa5;margin:12px 0}
.ph-kicker{font:11px/1.5 Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:.5px;color:#526674}
.ph-comparison{display:grid;gap:20px}.ph-explore .ph-comparison{grid-template-columns:1fr 1fr}
.ph-browser{border:1px solid #9aabba;border-radius:6px;overflow:hidden;margin:14px 0;background:#f6f8fa}
.ph-address{padding:12px 14px;background:#e8edf2;border-bottom:1px solid #bccad5;display:grid;gap:6px}
.ph-address>span{font:11px Inter,Arial,sans-serif;color:#526674;text-transform:uppercase}.ph-address code{background:#fff!important;border:1px solid #c5d0db;border-radius:3px;padding:8px!important}
.ph-page{background:white;margin:24px auto;padding:24px;max-width:440px;width:calc(100% - 32px);box-shadow:0 3px 14px #16355310;border:1px solid #e0e6ec}
.ph-brand{display:flex;align-items:center;gap:12px;color:#185fa5;font:700 26px Inter,Arial,sans-serif}.ph-brand span{font-size:20px;color:#142b40}
.ph-page label{display:grid;gap:5px;font-size:14px;margin:16px 0}.ph-page>button{width:100%;margin-top:10px}
.ph-fakebutton{display:block;background:#185fa5;color:white;text-align:center;padding:10px;font:14px Inter,Arial,sans-serif;border-radius:4px}
#ifd-phishing-website .ph-field{display:grid;gap:8px;margin:18px 0;font-size:14px}
#ifd-phishing-website input:not([type=radio]):not([type=checkbox]),#ifd-phishing-website select{font:14px/1.5 Inter,Arial,sans-serif;padding:10px;min-height:44px;width:100%;min-width:0;color:#1b232e;background:white;border:1px solid #91a8ba;border-radius:4px}
#ifd-phishing-website input[readonly]{background:#f6f8fa}
#ifd-phishing-website fieldset{border:0;padding:0;margin:20px 0;min-width:0}
#ifd-phishing-website legend{font-weight:600;font-size:17px;margin-bottom:12px}
#ifd-phishing-website .ph-choice{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid #ccd7e1;border-radius:4px;margin:10px 0;font-size:14px;line-height:1.5;cursor:pointer}
#ifd-phishing-website input[type=radio],#ifd-phishing-website input[type=checkbox]{width:19px;height:19px;min-width:19px;accent-color:#185fa5;margin:2px 0 0}
.ph-task h3{border-top:1px solid #ced8e1;padding-top:22px}
.ph-feedback,.ph-notice,.ph-response{padding:16px;background:#edf3f8;border-left:3px solid #185fa5;margin:18px 0}.ph-feedback.correct{background:#eef5f1;border-color:#577363}
.ph-notice{font-size:16px}.ph-empty{padding:22px;background:#f4f7fa}
#ifd-phishing-website dl{margin:20px 0;display:grid;gap:0}#ifd-phishing-website dl>div{padding:12px 0;border-bottom:1px solid #d4dfe8;display:grid;grid-template-columns:130px minmax(0,1fr);gap:16px}
#ifd-phishing-website dt{font:13px Inter,Arial,sans-serif;color:#526674}#ifd-phishing-website dd{margin:0;font-size:15px;overflow-wrap:anywhere}
.ph-support{border:1px solid #cbd6df;margin:20px 0}.ph-support>p{margin:16px!important}
.ph-table{overflow-x:auto;width:100%;border:1px solid #cbd6df;margin:20px 0}
#ifd-phishing-website .ph-table table{display:table;width:100%;min-width:620px;max-width:none;border-collapse:collapse;border:0;margin:0;font:13px/1.6 Inter,Arial,sans-serif}
#ifd-phishing-website .ph-table th,#ifd-phishing-website .ph-table td{padding:12px 8px!important;min-width:0!important;vertical-align:top;border-bottom:1px solid #d1dbe4;overflow-wrap:normal;word-break:normal;white-space:normal}
#ifd-phishing-website .ph-table th{background:#102b46;color:white;white-space:nowrap}
#ifd-phishing-website .ph-table td:nth-child(-n+3){white-space:nowrap}#ifd-phishing-website .ph-table td:last-child{overflow-wrap:anywhere}
.ph-bottom{position:fixed;bottom:0;left:0;right:0;background:white;border-top:1px solid #cbd6df;display:flex;justify-content:space-between;align-items:center;padding:12px 24px;z-index:21;gap:16px}
.ph-bottom>div{display:flex;gap:24px;font-size:14px}
#ifd-phishing-website #ph-assessment>button,#ifd-phishing-website .ph-bottom button[data-action=next]{background:#185fa5;color:white;border-color:#185fa5}
#ph-workspace,#ph-surface,#ph-title,#ph-material,.ph-feedback{scroll-margin-top:calc(var(--ph-offset) + 16px);scroll-margin-bottom:calc(var(--ph-footer) + 16px)}
.ph-debrief{max-width:1050px;margin:auto;padding:28px}
@media(max-width:1000px){.ph-workspace{display:flex;flex-direction:column}.ph-task{position:static;order:-1;width:100%}.ph-surface{width:100%}.ph-top{flex-wrap:wrap}.ph-top>div{flex-basis:50%}.ph-explore .ph-comparison{grid-template-columns:1fr}}
@media(max-width:650px){.ph-content{padding:16px 12px calc(var(--ph-footer) + 20px)}.ph-top{padding:12px;gap:10px}.ph-top>div{flex-basis:calc(100% - 65px)}.ph-surface,.ph-task,.ph-material-body{padding:16px}.ph-bottom{padding:10px 12px}.ph-bottom>div{display:grid;gap:4px}.ph-page{padding:18px}#ifd-phishing-website dl>div{grid-template-columns:1fr;gap:4px}}
@media print{.ph-top,.ph-task,.ph-bottom{position:static}.ph-workspace{display:block}.ph-content{padding-bottom:0}}
