/* Phase 20 extends the locked portal system without changing established screens. */
#p-notifications:checked~.app .view-notifications,#p-help:checked~.app .view-help{display:block}
#p-notifications:checked~.app [for=p-notifications],#p-help:checked~.app [for=p-help]{background:white;color:var(--navy)}
#p-notifications:checked~.app .page-name .t-notifications,#p-help:checked~.app .page-name .t-help{display:inline}
#a-communications:checked~.app .admin-communications,#a-help:checked~.app .admin-help{display:block;animation:sectionReveal 260ms var(--ease-out) both}
#a-communications:checked~.app .admin-tabs [for=a-communications],#a-help:checked~.app .admin-tabs [for=a-help]{background:var(--navy);color:white}
#a-communications:checked~.app .operations-nav [for=a-communications],#a-help:checked~.app .operations-nav [for=a-help]{border-color:rgba(168,131,61,.28);background:#fffdf8;color:var(--navy);box-shadow:inset 3px 0 0 var(--gold)}
#i-help:checked~.app .instructor-help{display:block;animation:sectionReveal 260ms var(--ease-out) both}
#i-help:checked~.app .instructor-tabs [for=i-help]{background:var(--instructor-blue);color:white}
#i-help:checked~.app .instructor-shell-nav [for=i-help]{border-color:rgba(168,131,61,.28);background:#fffdf8;color:var(--navy);box-shadow:inset 3px 0 0 var(--gold)}
.side-notification-badge,.notification-badge{min-width:18px;height:18px;display:grid;place-items:center;padding:0 5px;border-radius:999px;background:var(--gold);color:white;font-size:8px;font-weight:900}
.side-notification-badge{margin-left:auto}.notification-badge{position:absolute;right:-5px;top:-5px;border:2px solid var(--paper)}
.notify summary{position:relative}.notify-panel{width:min(360px,calc(100vw - 24px));max-height:440px;overflow:auto}.notification-view-all{display:flex;align-items:center;justify-content:center;min-height:42px;border-top:1px solid var(--line);color:var(--navy);font-size:10px;font-weight:850;cursor:pointer}
.phase20-page-head{margin-bottom:12px}.phase20-page-head h1{font-size:31px}.phase20-local-tabs{display:flex;gap:4px;max-width:100%;margin-bottom:12px;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--paper);overflow-x:auto;scrollbar-width:none}.phase20-local-tabs::-webkit-scrollbar{display:none}.phase20-local-tabs button{min-height:40px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--muted);font:inherit;font-size:9px;font-weight:850;white-space:nowrap;cursor:pointer}.phase20-local-tabs button.active{background:var(--navy);color:white}
.notification-center-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.43fr);gap:12px}.phase20-list-panel,.notification-settings{border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:0 10px 28px rgba(7,26,49,.03)}.notification-center-list{display:grid;padding:0 15px}.notification-record{display:grid;grid-template-columns:38px minmax(0,1fr);gap:11px;padding:15px 0;border-bottom:1px solid var(--line)}.notification-record:last-child{border-bottom:0}.notification-record.unread{background:#fffdf7}.notification-record.urgent{border-left:3px solid var(--red);padding-left:11px}.notification-record.important{border-left:3px solid var(--gold);padding-left:11px}.notification-icon{width:37px;height:37px;display:grid;place-items:center;border:1px solid var(--line);border-radius:11px;background:var(--paper2);color:var(--gold);font-size:11px;font-weight:900}.notification-record-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.notification-record-meta span{color:var(--gold);font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.notification-record-meta time{color:var(--muted);font-size:8px}.notification-record strong{display:block;margin-top:5px;font-size:11px}.notification-record p{margin:4px 0 0;color:var(--muted);font-size:9px;line-height:1.5}.notification-record-actions{display:flex;gap:14px;margin-top:8px}.notification-record-actions a,.notification-record-actions button{min-height:36px;display:inline-flex;align-items:center;padding:0;border:0;background:transparent;color:var(--navy);font:inherit;font-size:8px;font-weight:850;text-decoration:none;cursor:pointer}.notification-empty{padding:30px 16px;text-align:center;color:var(--muted)}.notification-empty strong,.notification-empty span{display:block}.notification-empty strong{color:var(--navy);font-size:11px}.notification-empty span{margin-top:5px;font-size:9px;line-height:1.45}
.phase20-panel-head{display:flex;align-items:center;justify-content:space-between;padding:14px 15px;border-bottom:1px solid var(--line)}.phase20-panel-head small,.phase20-panel-head strong{display:block}.phase20-panel-head small{margin-top:3px;color:var(--muted);font-size:8px}.notification-settings form{display:grid;gap:14px;padding:15px}.notification-settings fieldset{display:grid;gap:0;margin:0;padding:0;border:0}.notification-settings legend{margin-bottom:5px;color:var(--gold);font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.notification-settings label{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;border-bottom:1px solid var(--line)}.notification-settings label strong,.notification-settings label small{display:block}.notification-settings label strong{font-size:9px}.notification-settings label small{margin-top:3px;color:var(--muted);font-size:7px}.notification-settings input[type=checkbox],.phase20-switch input{width:19px;height:19px;accent-color:var(--navy)}.required-preferences{padding:11px;border-left:3px solid var(--gold);background:var(--paper2)}.required-preferences strong,.required-preferences span{display:block}.required-preferences strong{font-size:9px}.required-preferences span{margin-top:4px;color:var(--muted);font-size:8px;line-height:1.45}
.communications-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:12px}.communications-metrics article{padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--paper)}.communications-metrics small,.communications-metrics strong{display:block}.communications-metrics small{color:var(--muted);font-size:8px}.communications-metrics strong{margin-top:7px;font-size:23px}.communications-pane{display:none}.communications-pane.active{display:block}.communications-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.communications-line{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:0 15px;border-bottom:1px solid var(--line);font-size:9px}.communications-line:last-child{border-bottom:0}.communications-line strong{font-size:8px}.delivery-status{display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border-radius:999px;background:#eff3f6;color:#526879;font-size:8px;font-weight:850}.delivery-status.sent,.delivery-status.delivered{background:var(--greensoft);color:var(--green)}.delivery-status.failed{background:#f7e8e6;color:var(--red)}.table-action{min-height:38px;padding:0 9px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--navy);font:inherit;font-size:8px;font-weight:850;cursor:pointer}
.automation-rule-list{display:grid;gap:8px}.automation-rule{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(120px,.25fr) auto auto auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:13px;background:var(--paper)}.automation-rule>div small,.automation-rule>div strong,.automation-rule>div span{display:block}.automation-rule>div small{color:var(--gold);font-size:7px;font-weight:850;text-transform:uppercase}.automation-rule>div strong{margin-top:4px;font-size:10px}.automation-rule>div span{margin-top:3px;color:var(--muted);font-size:8px}.automation-rule>label>span{display:block;margin-bottom:4px;color:var(--muted);font-size:7px}.automation-rule input[type=number]{width:100%;min-height:40px;padding:0 8px;border:1px solid var(--line);border-radius:9px;background:white;font:inherit;font-size:9px}.phase20-switch{display:flex!important;align-items:center;gap:6px}.phase20-switch>span{margin:0!important;color:var(--navy)!important;font-size:8px!important}.template-library{display:grid;gap:8px}.communication-template{border:1px solid var(--line);border-radius:13px;background:var(--paper);overflow:hidden}.communication-template summary{display:flex;align-items:center;justify-content:space-between;min-height:64px;padding:10px 14px;list-style:none;cursor:pointer}.communication-template summary::-webkit-details-marker{display:none}.communication-template summary small,.communication-template summary strong{display:block}.communication-template summary small{color:var(--gold);font-size:7px;font-weight:850;text-transform:uppercase}.communication-template summary strong{margin-top:4px;font-size:10px}.communication-template[open] summary b{transform:rotate(90deg)}.communication-template form{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px;border-top:1px solid var(--line)}.communication-template form>label{display:grid;gap:5px}.communication-template form>label:nth-child(3),.template-preview,.template-safe-note{grid-column:1/-1}.communication-template label>span{color:var(--muted);font-size:8px}.communication-template input,.communication-template textarea{width:100%;min-height:42px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--navy);font:inherit;font-size:9px}.template-preview{padding:14px;border-left:3px solid var(--gold);background:var(--paper2)}.template-preview small,.template-preview strong{display:block}.template-preview small{color:var(--gold);font-size:7px;font-weight:850;text-transform:uppercase}.template-preview strong{margin-top:6px;font-size:13px}.template-preview p{margin:5px 0 10px;color:var(--muted);font-size:9px;line-height:1.5}.template-preview button{pointer-events:none}.template-safe-note{color:var(--muted);font-size:8px}
.help-center{max-width:1080px;margin:0 auto}.help-search{position:relative;display:block;margin-bottom:12px}.help-search>span{position:absolute;left:15px;top:14px;color:var(--gold);font-size:18px}.help-search input{width:100%;min-height:50px;padding:0 15px 0 44px;border:1px solid var(--line);border-radius:13px;background:var(--paper);color:var(--navy);outline:0;font:inherit;font-size:12px}.help-search input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(168,131,61,.14)}.help-category-list{display:flex;gap:5px;margin-bottom:12px;overflow-x:auto;scrollbar-width:none}.help-category-list::-webkit-scrollbar{display:none}.help-category-list button{min-height:38px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--muted);font:inherit;font-size:8px;font-weight:850;white-space:nowrap;cursor:pointer}.help-category-list button.active{border-color:var(--navy);background:var(--navy);color:white}.help-article-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.help-article{border:1px solid var(--line);border-radius:12px;background:var(--paper);overflow:hidden}.help-article summary{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-height:105px;padding:13px;list-style:none;cursor:pointer}.help-article summary::-webkit-details-marker{display:none}.help-article summary small,.help-article summary strong{display:block}.help-article summary small{color:var(--gold);font-size:7px;font-weight:850;text-transform:uppercase}.help-article summary strong{margin-top:5px;font-size:11px}.help-article summary p{margin:4px 0 0;color:var(--muted);font-size:8px;line-height:1.45}.help-article summary>b{margin-top:4px}.help-article[open] summary{min-height:0;border-bottom:1px solid var(--line)}.help-article[open] summary>b{transform:rotate(90deg)}.help-article ol{display:grid;gap:8px;margin:0;padding:14px 14px 5px 34px}.help-article li{padding-left:4px;color:var(--muted);font-size:9px;line-height:1.5}.help-article-support{margin:8px 14px 14px;color:var(--muted);font-size:8px}.help-empty{grid-column:1/-1;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.help-example,.help-contact{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:12px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}.help-example{border-left:4px solid var(--gold)}.help-example small,.help-contact small{color:var(--gold);font-size:8px;font-weight:850;text-transform:uppercase}.help-example h2,.help-contact h2{margin:5px 0 0;font-size:20px}.help-example p,.help-contact p{max-width:680px;margin:5px 0 0;color:var(--muted);font-size:9px;line-height:1.5}
.builder-communication-defaults{margin-top:16px;padding:14px;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:12px;background:var(--paper2)}.builder-communication-defaults>div:first-child small{color:var(--gold);font-size:8px;font-weight:850;text-transform:uppercase}.builder-communication-defaults>div:first-child h3{margin:4px 0 0}.builder-communication-defaults>div:first-child p{margin:5px 0 12px}.builder-communication-defaults input:disabled{opacity:.8}
.phase20-overlay,.tour-layer{position:fixed;inset:0;z-index:1000}.phase20-overlay[hidden],.tour-layer[hidden]{display:none}.phase20-overlay-backdrop{position:absolute;inset:0;background:rgba(7,26,49,.58)}.phase20-dialog{position:relative;width:min(510px,calc(100vw - 28px));max-height:calc(100dvh - 28px);overflow:auto;margin:50dvh auto 0;padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--paper);transform:translateY(-50%);box-shadow:0 24px 70px rgba(7,26,49,.22)}.phase20-dialog-mark{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:var(--navy);color:var(--gold);font-size:11px;font-weight:900}.phase20-dialog>small{display:block;margin-top:16px;color:var(--gold);font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.phase20-dialog h2{margin:6px 0 0;font-size:28px}.phase20-dialog>p{margin:8px 0 0;color:var(--muted);font-size:11px;line-height:1.6}.phase20-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.onboarding-payment-note{display:grid;gap:4px;margin-top:14px;padding:12px;border-left:3px solid var(--gold);background:var(--paper2)}.onboarding-payment-note strong{font-size:10px}.onboarding-payment-note span{color:var(--muted);font-size:9px;line-height:1.5}.phase20-modal-open,.tour-active{overflow:hidden}.tour-layer{pointer-events:none;background:rgba(7,26,49,.46)}.tour-focus{position:fixed;border:3px solid var(--gold);border-radius:14px;box-shadow:0 0 0 9999px rgba(7,26,49,.54);pointer-events:none}.tour-tooltip{position:fixed;z-index:2;padding:17px;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:0 20px 60px rgba(7,26,49,.22);pointer-events:auto;outline:0}.tour-tooltip>small{color:var(--gold);font-size:8px;font-weight:850;text-transform:uppercase}.tour-tooltip h2{margin:5px 0 0;font-size:21px}.tour-tooltip p{margin:6px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.tour-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:15px}.tour-actions>button{min-height:40px;border:0;background:transparent;color:var(--muted);font:inherit;font-size:8px;font-weight:850}.tour-actions>span{display:flex;gap:7px}.example-dialog{width:min(680px,calc(100vw - 28px))}.example-label{display:inline-flex;min-height:28px;align-items:center;padding:0 9px;border:1px solid #d9c99f;border-radius:999px;background:var(--goldsoft);color:#765d2b;font-size:8px;font-weight:900;text-transform:uppercase}.example-preview{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.example-preview article{padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--paper2)}.example-preview small,.example-preview strong{display:block}.example-preview small{color:var(--gold);font-size:7px;font-weight:850;text-transform:uppercase}.example-preview strong{margin-top:5px;font-size:10px}.example-boundary{padding:10px;border-left:3px solid var(--gold);background:var(--paper2)}
@media(max-width:900px){.notification-center-layout,.communications-overview-grid{grid-template-columns:1fr}.communications-metrics{grid-template-columns:1fr 1fr}.automation-rule{grid-template-columns:1fr 1fr 1fr}.automation-rule>div{grid-column:1/-1}.communication-template input,.communication-template textarea,.help-search input{font-size:16px}}
@media(max-width:600px){#p-notifications:checked~.app [for=p-more].mobile-tab,#p-help:checked~.app [for=p-more].mobile-tab{background:var(--navy);color:white}.phase20-page-head{display:block}.phase20-page-head .btn{width:100%;margin-top:10px}.notification-center-list{padding:0 12px}.notification-record{grid-template-columns:34px minmax(0,1fr)}.notification-record-actions a,.notification-record-actions button{min-height:44px}.communications-metrics{grid-template-columns:1fr 1fr}.automation-rule{grid-template-columns:1fr 1fr}.automation-rule>div{grid-column:1/-1}.automation-rule .btn{grid-column:1/-1}.communication-template form,.help-article-grid,.example-preview{grid-template-columns:1fr}.communication-template form>label{grid-column:1}.help-article summary{min-height:0}.help-example,.help-contact{display:block}.help-example .btn,.help-contact .btn{width:100%;margin-top:12px}.phase20-dialog{padding:19px}.phase20-dialog-actions{display:grid}.phase20-dialog-actions .btn{width:100%}.tour-focus{display:none}.tour-tooltip{max-height:52dvh;overflow:auto}.example-dialog .phase20-dialog-actions{display:block}.example-dialog .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.tour-focus,.tour-tooltip,.phase20-dialog{transition:none!important;animation:none!important}}
