/* r9: password show/hide, support footer */
.pw-wrap{position:relative;display:block}
.pw-wrap input{width:100%;padding-right:4.75rem;box-sizing:border-box}
.pw-toggle{position:absolute;top:50%;right:.35rem;transform:translateY(-50%);min-width:3.9rem;min-height:2.25rem;
  padding:.25rem .6rem;border:1px solid var(--line,#c9cfd8);border-radius:4px;background:#fff;color:#142747;
  font:inherit;font-size:.82rem;font-weight:700;letter-spacing:.02em;cursor:pointer}
.pw-toggle:hover{background:#f3f5f8}
.pw-toggle:focus-visible{outline:3px solid #b8862b;outline-offset:2px}
.site-footer .support-line{display:flex;flex-wrap:wrap;gap:.35rem 1.1rem}
.site-footer .support-line a{color:inherit;text-decoration:underline;text-underline-offset:2px}
/* r10: campus photo with Kings navy accent */
.campus-visual{background-color:#142747;background-position:center 58%}
.campus-visual:after{background:linear-gradient(160deg,rgba(20,39,71,0) 45%,rgba(20,39,71,.42) 100%)}
.campus-visual:before{content:'';position:absolute;left:0;right:0;bottom:0;height:4px;background:#142747;z-index:1}
/* r10: admissions desk */
.desk .desk-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.5rem 2rem;margin-bottom:1rem}
.desk .desk-head h1{margin:0}
.funnel{list-style:none;margin:1.2rem 0 .4rem;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line,#ddd5c6);background:#fff;border-radius:10px;overflow:hidden}
.funnel li{padding:.9rem .8rem;border-right:1px solid var(--line,#ddd5c6);position:relative}
.funnel li:last-child{border-right:0}
.funnel strong{display:block;font-size:1.65rem;line-height:1.1;color:#142747;font-weight:700}
.funnel span{display:block;font-size:.74rem;letter-spacing:.04em;text-transform:uppercase;color:#526174;font-weight:700;margin-top:.25rem}
.funnel-note{font-size:.85rem;margin:.2rem 0 1.4rem}
.desk-tabs{display:flex;gap:.25rem;border-bottom:2px solid var(--line,#ddd5c6);margin:0 0 1.4rem;overflow-x:auto}
.desk-tabs a{padding:.7rem 1.1rem;text-decoration:none;color:#3c4b5c;font-weight:700;border-bottom:3px solid transparent;margin-bottom:-2px;white-space:nowrap}
.desk-tabs a[aria-current=page]{color:#142747;border-bottom-color:#b8862b}
.pill{display:inline-block;min-width:1.5em;padding:.05rem .45rem;border-radius:999px;background:#142747;color:#fff;font-size:.72rem;font-weight:700;text-align:center;vertical-align:middle}
.pill.muted{background:#e7e2d8;color:#4a5b6e}
.queue{border-left:4px solid #142747}
.queue-stuck{border-left-color:#b3261e;background:#fffaf9}
.queue-head h2{margin-bottom:.2rem}
.queue-head .muted{margin-top:0}
.desk-table{width:100%}
.desk-table td{vertical-align:top}
.desk-table td small{display:inline-block;margin-top:.15rem}
.desk-actions{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}
.desk-actions form{margin:0;display:inline}
.button.small{padding:.32rem .7rem;font-size:.78rem;min-height:0}
.warn{color:#9a3b00;font-weight:700}
.dim td{opacity:.55}
.desk-filters{display:flex;flex-wrap:wrap;gap:.8rem 1.2rem;align-items:flex-end}
.desk-filters label{min-width:12rem}
.checks{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.3rem 1.2rem}
.checks legend{font-weight:700;font-size:.85rem;margin-bottom:.3rem}
.check{display:flex!important;align-items:center;gap:.4rem;font-weight:500;min-width:0!important}
.contact-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.7rem;margin:1rem 0 1.4rem}
.contact-groups .counter.active{outline:3px solid #b8862b}
.muted-counter{opacity:.7}
.compose label{display:block;margin:.8rem 0}
.compose textarea,.compose input[type=email],.compose input[name=subject]{width:100%}
.case-actions{margin:.9rem 0 1.2rem}
.case-ref{font-size:.7rem;letter-spacing:.02em;text-transform:none;margin-left:.5rem}
.doc-change summary,.legend summary{cursor:pointer;color:#142747;font-weight:700;font-size:.85rem;margin:.4rem 0}
@media(max-width:760px){.funnel{grid-template-columns:repeat(4,minmax(0,1fr))}.funnel li{border-bottom:1px solid var(--line,#ddd5c6)}}
/* r10c: applicant case page */
.case-page{max-width:1080px}
.case-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem 2rem;margin:1rem 0 .4rem}
.case-head h1{margin:.2rem 0 .5rem}
.next-step{margin:0;font-size:1.02rem;color:#24364a;max-width:60ch}
.status.big{font-size:.82rem;padding:.45rem .9rem}
.case-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:1.2rem 0 1.6rem}
.tile{background:#fff;border:1px solid var(--line,#ddd5c6);border-top:4px solid #c9cfd8;border-radius:10px;padding:.8rem .95rem;min-width:0}
.tile.ok{border-top-color:#1f7a4d}.tile.wait{border-top-color:#b8862b}
.tile span{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:#526174}
.tile strong{display:block;font-size:1.05rem;color:#142747;margin:.2rem 0 .1rem}
.tile small{display:block;color:#5d6b7b;overflow-wrap:anywhere}
.case-panel{background:#fff;border:1px solid var(--line,#ddd5c6);border-radius:10px;margin:0 0 .8rem;overflow:hidden}
.case-panel.attention{border-left:4px solid #b8862b}
.case-panel>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.2rem}
.case-panel>summary::-webkit-details-marker{display:none}
.case-panel>summary:after{content:'+';font-size:1.3rem;line-height:1;color:#142747;margin-left:.6rem}
.case-panel[open]>summary:after{content:'\2212'}
.case-panel>summary:hover{background:#faf8f3}
.panel-title{font-family:var(--serif,Georgia,serif);font-size:1.25rem;color:#142747;font-weight:600}
.panel-badge{margin-left:auto;font-size:.82rem;color:#4a5b6e;background:#f2efe8;border-radius:999px;padding:.2rem .7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:55%}
.panel-body{padding:.2rem 1.2rem 1.2rem;border-top:1px solid #efeae0}
.panel-body h3{font-size:1rem;margin:1.2rem 0 .5rem;color:#142747}
.panel-body .review-item{border:0;border-bottom:1px solid #efeae0;padding:.9rem 0;margin:0}
.panel-body .review-item:last-child{border-bottom:0}
.details.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.2rem 2rem}
.details.two-col>div{padding:.55rem 0;border-bottom:1px solid #f1ede5}
.details.two-col dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#617082;font-weight:700}
.details.two-col dd{margin:.15rem 0 0;overflow-wrap:anywhere}
.file-meta{font-size:.8rem;margin:.2rem 0}
.small-print{font-size:.8rem;margin-top:1rem}
.mail-list li{display:flex;justify-content:space-between;gap:1rem;align-items:center}
.timeline{list-style:none;padding:0;margin:0}
.timeline li{padding:.45rem 0 .45rem 1rem;border-left:2px solid #e3ddd1;position:relative}
.timeline li:before{content:'';position:absolute;left:-5px;top:.85rem;width:8px;height:8px;border-radius:50%;background:#b8862b}
.timeline time{display:inline-block;min-width:10.5rem;color:#617082;font-size:.85rem}
@media(max-width:760px){.case-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.details.two-col{grid-template-columns:1fr}.panel-badge{max-width:45%}}
.panel-body .review-item .button{padding:.38rem .85rem;font-size:.8rem;min-height:0}
.panel-body .review-item>div:first-child>strong{font-size:1rem}
.panel-body .review-item .status{margin:.2rem 0 .4rem}
.panel-body .review-item form{display:grid;grid-template-columns:minmax(150px,200px) 1fr auto;gap:.5rem .8rem;align-items:end;margin-top:.6rem}
.panel-body .review-item form label{margin:0}
.panel-body .review-item form small{grid-column:1/-1;order:9}
.panel-body .review-item form .button{width:auto}
.action-card{background:#faf8f3;border:1px solid #ece6da;border-radius:8px;padding:1rem;margin:.4rem 0 1rem}
.action-card textarea{min-height:5rem}
@media(max-width:760px){.panel-body .review-item form{grid-template-columns:1fr}}
/* r10d: duplicate comparison */
.compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.2rem 0}
.compare-col{background:#fff;border:1px solid var(--line,#ddd5c6);border-top:4px solid #c9cfd8;border-radius:10px;padding:1rem 1.2rem}
.compare-col.newer{border-top-color:#142747}
.compare-col h2{margin:.2rem 0 .6rem}
.plain-list{list-style:none;margin:0;padding:0}.plain-list li{padding:.15rem 0}
.compare-table tr.differs td{background:#fff8ea}
@media(max-width:760px){.compare-grid{grid-template-columns:1fr}}
/* r11: rich bulk email composer and web version */
.strong-check{font-weight:700!important}
.editor-label{font-weight:700;margin:.8rem 0 .3rem}
.editor{border:1px solid #c9cfd8;border-radius:6px;background:#fff;overflow:hidden}
.editor-bar{display:flex;flex-wrap:wrap;gap:.25rem;padding:.4rem;background:#f3f5f8;border-bottom:1px solid #dfe3ea;position:sticky;top:0;z-index:2}
.editor-bar button{font:inherit;font-size:.82rem;padding:.3rem .55rem;border:1px solid #c9cfd8;border-radius:4px;background:#fff;color:#142747;cursor:pointer}
.editor-bar button:hover,.editor-bar button:focus-visible{background:#142747;color:#fff;border-color:#142747}
.editor-bar [data-pick],.editor-bar [data-cmd=youtube]{border-color:#b8862b}
.editor-sep{width:1px;background:#c9cfd8;margin:0 .3rem}
.editor-pop{display:flex;flex-wrap:wrap;gap:.6rem;align-items:flex-end;padding:.6rem;border-bottom:1px solid #dfe3ea;background:#fffaf0}
.editor-pop[hidden]{display:none}
.compose .editor-pop label{margin:0;flex:1 1 14rem}
.editor-pop input{width:100%}
.editor-status{min-height:0;padding:0 .7rem;font-size:.85rem;color:#24364a}
.editor-status:not(:empty){padding:.45rem .7rem;background:#eef4fb}
.editor-status.bad{background:#fdecea;color:#8a1c12}
.editor-area{min-height:18rem;max-height:70vh;overflow:auto;padding:1rem 1.2rem;line-height:1.55;outline:none}
.editor-area:focus{box-shadow:inset 0 0 0 2px #b8862b}
.editor-area h2{font-size:1.3rem;margin:1rem 0 .5rem}
.editor-area blockquote,.news-body blockquote{margin:0 0 1rem;padding:.6rem 1rem;border-left:4px solid #c9a24a;background:#faf6ec}
.editor-area a.btn,.news-body a.btn{display:inline-block;padding:.6rem 1.2rem;background:#142747;color:#fffdf8;border-radius:6px;text-decoration:none;font-weight:700}
.mblock{position:relative;margin:.8rem 0;padding:0;border:1px solid #dfe3ea;border-radius:6px;background:#f7f8fa;max-width:560px;user-select:none}
.mblock img{display:block;width:100%;height:auto;border-radius:6px 6px 0 0}
.mblock figcaption{padding:.45rem .7rem;font-size:.85rem;color:#24364a}
.mblock figcaption b{color:#142747;margin-right:.3rem}
.mblock[data-kind=FILE] figcaption,.mblock[data-kind=AUDIO] figcaption{border-top:0}
.mblock-tools{position:absolute;top:.4rem;right:.4rem;display:flex;gap:.25rem}
.mblock-tools button{width:2rem;height:2rem;border:0;border-radius:50%;background:rgba(20,39,71,.85);color:#fff;font-size:1rem;cursor:pointer}
.mblock-tools button:hover{background:#8a1c12}
.row-actions{white-space:nowrap}
.row-actions form{display:inline}
.row-actions .button{margin:0 .15rem .2rem 0}
.news-article h1{margin:.2rem 0 1rem}
.news-body{font-size:1.05rem;line-height:1.65}
.news-media{margin:1.2rem 0}
.news-media img,.news-media video{display:block;width:100%;height:auto;border-radius:8px;background:#142747}
.news-media audio{width:100%}
.news-media figcaption{font-size:.88rem;color:#4a5a6e;margin-top:.4rem}
.news-frame{position:relative;width:100%;aspect-ratio:16/9;border-radius:8px;overflow:hidden;background:#142747}
.news-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.news-frame.h5p{aspect-ratio:auto;background:#fff;border:1px solid #dfe3ea}
.news-frame.h5p iframe{position:static;height:560px}
.template-pick{display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:flex-end;padding:.8rem 1rem;margin:.6rem 0 1rem;background:#f3f5f8;border-radius:6px}
.template-pick label{flex:1 1 22rem;margin:0}
.template-pick select{width:100%}
