/*
Theme Name: TodayCase Integrated Theme
Theme URI: https://todaycase.in/
Author: ProNextAi
Description: TodayCase presentation theme integrated with Auto TC Master.
Version: 0.8.2
Requires at least: 6.0
Tested up to: 6.9
License: GPL-2.0-or-later
Text Domain: todaycase-independent
*/

:root{
  --tc-navy:#062d52;
  --tc-blue:#0b4f86;
  --tc-blue2:#1676aa;
  --tc-gold:#f2c94c;
  --tc-gold-deep:#c99600;
  --tc-bg:#f2f7fb;
  --tc-card:#fff;
  --tc-text:#123f68;
  --tc-muted:#627b91;
  --tc-border:#d2e1eb;
  --tc-shadow:0 12px 34px rgba(6,45,82,.13);
  --tc-radius:18px;
  --tc-social:url("assets/todaycase-social.jpg");
}
*{box-sizing:border-box}
html,body{margin:0!important;padding:0!important;min-height:100%;background:var(--tc-bg)!important;color:var(--tc-text)}
body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.5}
a{color:var(--tc-blue)}
img{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid rgba(242,201,76,.95)!important;outline-offset:2px!important;
}
#wpadminbar{z-index:100000}

/* =========================================================
   SITE HEADER
   Master rule: blue surface = white letters.
   ========================================================= */
.tc-independent-header{
  position:relative;z-index:9000;color:#fff;
  background:linear-gradient(110deg,var(--tc-navy),var(--tc-blue) 62%,var(--tc-blue2));
  border-bottom:4px solid var(--tc-gold);
  box-shadow:0 8px 24px rgba(6,45,82,.18);
}
.tc-independent-header-inner{
  max-width:1600px;margin:0 auto;padding:14px 24px;
  min-height:94px;display:flex;align-items:center;gap:18px;
}
.tc-brand{display:flex;align-items:center;gap:14px;min-width:max-content;color:#fff!important;text-decoration:none!important}
.tc-brand-mark{
  width:58px;height:58px;border-radius:15px;background:#fff;color:var(--tc-navy);
  display:grid;place-items:center;font-weight:1000;font-size:20px;
  border:2px solid rgba(242,201,76,.9);box-shadow:0 4px 16px rgba(0,0,0,.2)
}
.tc-brand-copy{display:flex;flex-direction:column}
.tc-brand-name{
  font-family:Georgia,"Times New Roman",serif;font-size:39px;
  font-weight:900;line-height:1;letter-spacing:-.6px;
}
.tc-brand-today{color:#fff}
.tc-brand-management{
  color:var(--tc-gold);
  text-shadow:0 1px 0 #7b5a00,0 0 10px rgba(242,201,76,.22);
}
.tc-brand-tagline{
  margin-top:7px;font-size:15px;font-weight:900;letter-spacing:1.5px;
  text-transform:uppercase;color:var(--tc-gold);
  font-family:Georgia,"Times New Roman",serif;font-style:italic;
  text-shadow:0 1px 0 rgba(0,0,0,.35)
}
.tc-user-tools{margin-left:auto;display:flex;align-items:center;gap:10px}
.tc-user-name{
  padding:10px 16px;border:1px solid rgba(255,255,255,.3);
  border-radius:999px;color:#fff;font-weight:850;background:rgba(255,255,255,.09)
}
.tc-logout{
  display:inline-block;padding:11px 17px;border-radius:11px;
  background:var(--tc-gold);color:#062d52!important;text-decoration:none!important;
  font-weight:950;border:1px solid rgba(255,255,255,.25)
}
.tc-logout:hover{background:#fff;color:var(--tc-blue)!important}

/* Header navigation */
.tc-header-nav{position:relative;z-index:8999;background:var(--tc-navy);border-bottom:1px solid rgba(255,255,255,.14)}
.tc-header-nav-inner{max-width:1600px;margin:0 auto;display:flex;align-items:stretch;padding:0 16px}
.tc-menu{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:stretch}
.tc-menu li{list-style:none;margin:0;padding:0;position:relative}
.tc-menu a{
  display:flex;align-items:center;min-height:52px;padding:0 16px;
  color:#fff!important;text-decoration:none!important;font-weight:900;font-size:14px;
  border-bottom:3px solid transparent
}
.tc-menu a:hover,.tc-menu a:focus,.tc-menu .current-menu-item>a,.tc-menu .current-menu-ancestor>a{
  background:#165784;color:#fff!important;border-bottom-color:var(--tc-gold)
}
.tc-menu .sub-menu{
  display:none;position:absolute;left:0;top:100%;min-width:225px;list-style:none;
  margin:0;padding:6px;background:#fff;border:1px solid var(--tc-border);
  border-top:3px solid var(--tc-gold);border-radius:0 0 12px 12px;box-shadow:var(--tc-shadow);z-index:10000
}
.tc-menu li:hover>.sub-menu,.tc-menu li:focus-within>.sub-menu{display:block}
.tc-menu .sub-menu a{min-height:42px;background:#fff;color:var(--tc-text)!important;border:0;border-radius:7px}
.tc-menu .sub-menu a:hover{background:#edf5f9;color:var(--tc-blue)!important}
.tc-menu-toggle{
  display:none;margin:0;padding:12px 16px;width:100%;border:0;
  background:var(--tc-navy);color:#fff!important;font-weight:900;cursor:pointer
}

/* =========================================================
   COMMON CONTENT / WHITE PAD = BLUE TEXT
   ========================================================= */
.tc-page-wrap{min-height:calc(100vh - 190px)}
.tc-content{max-width:1600px;margin:0 auto;padding:24px 22px 60px}
.entry-title,.page-title,.site-title{color:var(--tc-text)}
.tc-card{
  background:#fff;color:var(--tc-text);border:1px solid var(--tc-border);
  border-radius:var(--tc-radius);box-shadow:var(--tc-shadow);padding:20px
}

/* Plugin compatibility */
.tcm-shell{background:var(--tc-bg)!important;color:var(--tc-text)!important}
.tcm-app-header{
  background:linear-gradient(110deg,var(--tc-navy),var(--tc-blue) 62%,var(--tc-blue2))!important;
  color:#fff!important
}
.tcm-app-header *{color:#fff!important}
.tcm-brand-main{font-family:Georgia,"Times New Roman",serif!important}
.tcm-brand-main span{color:#fff!important}
.tcm-brand-main strong{color:var(--tc-gold)!important}
.tcm-brand-subtitle{color:var(--tc-gold)!important;font-family:Georgia,"Times New Roman",serif!important;font-style:italic!important}
.tcm-menu-shell,.tcm-nav{background:var(--tc-navy)!important;color:#fff!important}
.tcm-nav a,.tcm-nav button,.tcm-nav summary{color:#fff!important}
.tcm-nav a:hover,.tcm-nav a:focus,.tcm-nav summary:hover{background:#165784!important;color:#fff!important}
.tcm-panel,.tcm-card,.tcm-case-card,.tcm-dashboard-card{
  background:#fff!important;color:var(--tc-text)!important;border:1px solid var(--tc-border)!important;
  box-shadow:var(--tc-shadow)!important
}
.tcm-panel h1,.tcm-panel h2,.tcm-panel h3,.tcm-card h1,.tcm-card h2,.tcm-card h3{color:var(--tc-text)!important}
.tcm-blue-surface,.tc-blue-surface,.tcm-hero,.tcm-section-header{
  background:linear-gradient(110deg,var(--tc-navy),var(--tc-blue))!important;color:#fff!important
}
.tcm-blue-surface *,.tc-blue-surface *,.tcm-hero *,.tcm-section-header *{color:#fff!important}
.tcm-main{max-width:1600px!important;margin:0 auto!important}

/* Applicant role: restrict visible navigation to the five requested items.
   Actual access remains enforced by the master plugin. */
.tc-role-applicant .tc-menu li:nth-child(n+6){display:none}
.tc-role-applicant .tcm-nav > .tcm-top-link:nth-of-type(n+2){display:none!important}
.tc-role-applicant .tcm-nav .tcm-nav-group,
.tc-role-applicant .tcm-nav-search{display:none!important}

/* If the plugin renders its applicant menu, keep only Home / My Cases /
   My Profile / Request New Case and relabel them in the visual layer. */
.tc-role-applicant .tcm-nav .tcm-nav-home,
.tc-role-applicant .tcm-nav .tcm-top-link[href*="applicant-cases"],
.tc-role-applicant .tcm-nav .tcm-top-link[href*="applicant-profile"],
.tc-role-applicant .tcm-nav .tcm-top-link[href*="request-new-case"]{
  display:flex!important
}
.tc-role-applicant .tcm-nav .tcm-top-link[href*="applicant-cases"] span:last-child::after{content:""}
.tc-role-applicant .tcm-nav .tcm-top-link[href*="applicant-profile"] span:last-child::after{content:""}

/* =========================================================
   LOGIN PAGE
   Uploaded artwork is the page background.
   Login card is deliberately translucent (~20% transparent).
   ========================================================= */
body.tc-login-page{
  background:#061e35 var(--tc-social) center/cover fixed no-repeat!important;
  min-height:100vh;
}
body.tc-login-page::before{
  content:"";position:fixed;inset:0;z-index:-1;
  background:rgba(3,25,49,.22);
}
body.tc-login-page .tc-independent-header,
body.tc-login-page .tc-header-nav,
body.tc-login-page .tc-independent-footer{
  display:none!important;
}
body.tc-login-page .tc-page-wrap{
  min-height:100vh;background:transparent!important;
}
body.tc-login-page .tc-content{
  max-width:100%;min-height:100vh;padding:0;
  display:flex;align-items:center;justify-content:center;background:transparent!important;
}
body.tc-login-page .entry-title,
body.tc-login-page .page-title,
body.tc-login-page .wp-block-post-title{
  display:none!important;
}

/* Plugin login screen */
body.tc-login-page .tcm022-login-page,
body.tc-login-page .tcm022-gate-page{
  min-height:100vh!important;width:100%!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:35px 18px!important;background:transparent!important;
}
body.tc-login-page .tcm022-login-card,
body.tc-login-page .tcm022-gate-card,
body.tc-login-page .tcm022-welcome-card{
  width:min(570px,94vw)!important;
  background:rgba(255,255,255,.80)!important;
  border:1px solid rgba(255,255,255,.65)!important;
  box-shadow:0 25px 80px rgba(0,0,0,.40)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
  border-radius:24px!important;
  padding:30px!important;
}
body.tc-login-page .tcm022-login-brand{display:none!important}
body.tc-login-page .tcm022-login-card>h1{
  margin:0 0 22px!important;color:var(--tc-blue)!important;font-size:42px!important;
  font-weight:950!important
}
body.tc-login-page .tcm022-login-card label,
body.tc-login-page .tcm022-forgot-box label{color:var(--tc-text)!important;font-weight:850!important}
body.tc-login-page .tcm022-login-card input[type=text],
body.tc-login-page .tcm022-login-card input[type=password],
body.tc-login-page .tcm022-forgot-box input{
  background:rgba(255,255,255,.90)!important;color:var(--tc-text)!important;
  border:1px solid #aac3d6!important;border-radius:12px!important
}
body.tc-login-page .tcm022-login-card button,
body.tc-login-page .tcm022-forgot-box button,
body.tc-login-page #tcm022-enter-home{
  background:var(--tc-blue)!important;color:#fff!important;border:0!important;
  border-radius:12px!important;font-weight:950!important
}
body.tc-login-page .tcm022-login-links a{color:var(--tc-blue)!important;font-weight:850!important}
body.tc-login-page .tcm022-login-error{color:#8d1c1c!important}
body.tc-login-page .tcm022-login-success{color:#12652f!important}

/* Login registration modal: blue surface -> white letters */
body.tc-login-page .tcm022-reg-head{
  background:var(--tc-blue)!important;color:#fff!important
}
body.tc-login-page .tcm022-reg-head *,
body.tc-login-page .tcm022-reg-kicker{color:#fff!important}

/* Terms / welcome gate */
body.tc-login-page .tcm022-gate-card h1,
body.tc-login-page .tcm022-welcome-card h1{color:var(--tc-blue)!important}
body.tc-login-page .tcm022-gate-kicker{color:var(--tc-gold-deep)!important;font-weight:950!important}

/* =========================================================
   FOOTER
   ========================================================= */
.tc-independent-footer{
  background:linear-gradient(135deg,#061f35,#082a46 60%,#123f67);
  color:#fff;border-top:4px solid var(--tc-gold)
}
.tc-footer-inner{
  max-width:1600px;margin:0 auto;padding:30px 22px;
  display:grid;grid-template-columns:1fr 2fr 1fr;gap:25px;align-items:center
}
.tc-footer-brand strong{font:900 30px Georgia,"Times New Roman",serif;color:#fff}
.tc-footer-brand span{display:block;color:#dce8ef;font-size:12px;margin-top:4px}
.tc-footer-menu{
  list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;
  justify-content:center;gap:5px 16px
}
.tc-footer-menu li{list-style:none}
.tc-footer-menu a{
  color:#fff!important;text-decoration:none!important;font-weight:850;font-size:13px;
  padding:8px 9px;border-radius:7px
}
.tc-footer-menu a:hover,.tc-footer-menu a:focus{background:#165784;color:#fff!important}
.tc-footer-meta{text-align:right;color:#dce8ef;font-size:11px}
.tc-footer-meta strong{color:#fff}


/* =========================================================
   VER 0.3 — SINGLE FOOTER + APPLICANT NAVIGATION ORDER
   The Compatibility Master plugin emits .tcm-footer from its
   shortcode footer helper. The independent theme owns the final
   visible footer, so the duplicate white plugin footer is hidden.
   ========================================================= */
.tcm-footer{display:none!important}

/* Applicant navigation: Home -> Master List -> My Profile -> Request New Case.
   The menu is collapsed by default on portrait/tablet and opens only on tap. */
.tc-role-applicant .tc-menu{display:none!important}
.tc-role-applicant .tc-menu li{display:block!important}
.tc-role-applicant .tc-menu a{background:var(--tc-navy)!important;color:#fff!important}
.tc-role-applicant .tc-menu a:hover,.tc-role-applicant .tc-menu a:focus,.tc-role-applicant .tc-menu .current-menu-item>a{background:#165784!important;color:#fff!important;border-bottom-color:var(--tc-gold)!important}

/* Remove plugin footer spacing when its footer is hidden. */
.tcm-footer + .tcm-topbtn{display:block}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media(max-width:980px){
  .tc-independent-header-inner{padding:11px 15px;min-height:76px}
  .tc-brand-name{font-size:31px}
  .tc-brand-tagline{font-size:11px;letter-spacing:1px}
  .tc-user-name{display:none}
  .tc-menu-toggle{display:block}
  .tc-header-nav-inner{display:block;padding:0}
  .tc-menu{display:none;flex-direction:column}
  .tc-menu.tc-open{display:flex}
  .tc-menu li,.tc-menu a{width:100%}
  .tc-menu a{min-height:45px}
  .tc-menu .sub-menu{position:static;display:block;border-radius:0;box-shadow:none;padding-left:14px}
  .tc-footer-inner{grid-template-columns:1fr;text-align:center}
  .tc-footer-meta{text-align:center}
}
@media(max-width:560px){
  .tc-content{padding:14px 10px 45px}
  .tc-brand-mark{width:46px;height:46px}
  .tc-brand-name{font-size:25px}
  .tc-brand-tagline{display:block;font-size:9px}
  body.tc-login-page .tcm022-login-card,
  body.tc-login-page .tcm022-gate-card,
  body.tc-login-page .tcm022-welcome-card{padding:22px!important}
  body.tc-login-page .tcm022-login-card>h1{font-size:34px!important}
}

/* Auto TC 3.2.8 — canonical menu and login registration controls */
.tc022-open-applicant-registration,.tc022-open-advocate-registration{appearance:none!important;background:transparent!important;border:0!important;color:var(--tc-blue)!important;font:inherit!important;font-weight:850!important;text-decoration:underline!important;cursor:pointer!important;padding:6px 2px!important;min-height:44px!important}
.tc022-open-applicant-registration:hover,.tc022-open-advocate-registration:hover{color:var(--tc-gold-deep)!important}
.tc-login-links{align-items:center!important}
@media(max-width:760px){.tc-header-nav-inner{display:block}.tc-menu{display:none}.tc-header-nav.is-open .tc-menu{display:flex;flex-direction:column}.tc-menu a{min-height:48px;display:flex;align-items:center}.tc-menu-toggle{display:block;width:100%;text-align:left}}

/* Auto TC 3.3.1 — Applicant mobile presentation */
@media(max-width:980px){
  .tc-independent-header-inner{position:relative;padding-right:92px!important}
  .tc-user-tools{position:absolute;right:10px;top:50%;transform:translateY(-50%);margin:0;display:flex!important;z-index:5}
  .tc-user-name{display:none!important}
  .tc-logout{padding:8px 10px!important;min-width:68px;text-align:center;font-size:12px!important;line-height:1.1}
  .tc-header-nav-inner{display:block!important}
  .tc-menu{display:none!important}
  .tc-menu.tc-open{display:flex!important}
}
@media(max-width:560px){
  .tc-independent-header-inner{min-height:82px!important;padding:10px 82px 10px 12px!important;gap:9px!important}
  .tc-brand{min-width:0!important;max-width:100%!important;gap:9px!important}
  .tc-brand-mark{width:43px!important;height:43px!important;flex:0 0 43px!important;border-radius:13px!important;font-size:17px!important}
  .tc-brand-name{font-size:20px!important;letter-spacing:-.4px!important;white-space:nowrap!important}
  .tc-brand-tagline{font-size:7px!important;letter-spacing:.8px!important;margin-top:4px!important;white-space:nowrap!important}
  .tc-user-tools{right:7px!important}
  .tc-logout{min-width:62px!important;padding:7px 8px!important;font-size:11px!important;border-radius:9px!important}
  .tc-menu-toggle{padding:10px 14px!important;font-size:18px!important}
  .tc-menu a{min-height:46px!important;padding:0 16px!important}
}

/* Auto TC 3.3.1 — final applicant navigation correction */
.tc-role-applicant .tcm-nav .tcm-nav-home{display:flex!important}
.tc-role-applicant .tcm-nav .tcm-top-link[href*="master-list"]{display:flex!important}
.tc-role-applicant .tcm-nav .tcm-top-link[href*="applicant-profile"]{display:flex!important}
.tc-role-applicant .tcm-nav .tcm-top-link[href*="request-new-case"]{display:flex!important}
.tc-role-applicant .tcm-nav .tcm-top-link[href*="applicant-cases"]{display:none!important}
.tc-role-applicant .tcm-nav .tcm-top-link[href*="calendar"],
.tc-role-applicant .tcm-nav .tcm-top-link[href*="tcm_calendar_view"]{display:none!important}

/* Theme menu is always collapsed by default on touch/portrait sizes. */
@media(max-width:980px){
  .tc-header-nav-inner{display:block!important}
  .tc-header-nav-inner .tc-menu{display:none!important}
  .tc-header-nav-inner .tc-menu.tc-open{display:flex!important}
}



/* =========================================================
   TODAYCASE THEME HEADER / MENU — VER 0.8.0
   The theme is the single presentation-layer owner of the global header.
   The plugin header/menu is suppressed only visually; plugin business logic
   and all page/permission engines remain unchanged.
   ========================================================= */
.tcm-shell>.tcm-app-header,
.tcm-shell>.tcm-menu-shell{display:none!important}
.tc-header-nav{border-bottom:0;background:linear-gradient(180deg,#082f52,#062744)!important;box-shadow:0 8px 20px rgba(4,32,55,.16)}
.tc-header-nav-inner{max-width:1600px;margin:0 auto;padding:0 18px;display:block}
.tc-header-menu-panel{width:100%}
.tc-menu{display:flex;align-items:stretch;gap:5px;flex-wrap:wrap;width:100%;list-style:none;margin:0;padding:0}
.tc-menu>li{position:relative;list-style:none;margin:0;padding:0}
.tc-menu>li>a.tc-nav-link{min-height:54px;display:flex;align-items:center;gap:8px;padding:0 15px;border-bottom:3px solid transparent;border-radius:9px 9px 0 0;color:#fff!important;text-decoration:none!important;font-weight:900;font-size:13px;white-space:nowrap;transition:.18s ease}
.tc-menu>li>a.tc-nav-link:hover,.tc-menu>li>a.tc-nav-link:focus,.tc-menu>li>a.tc-nav-link.is-active{background:rgba(255,255,255,.12);border-bottom-color:var(--tc-gold);color:#fff!important}
.tc-nav-icon{width:22px;height:22px;display:inline-grid;place-items:center;border-radius:7px;background:rgba(255,255,255,.10);font-size:13px;line-height:1;flex:0 0 22px}
.tc-nav-link.is-active .tc-nav-icon{background:var(--tc-gold);color:#173f63}
.tc-menu-search-item{margin-left:auto;display:flex;align-items:stretch}
.tc-nav-group{position:relative;display:block;min-width:180px}
.tc-nav-group>summary{list-style:none;cursor:pointer;min-height:54px;display:flex;align-items:center;gap:8px;padding:0 15px;color:#fff;font-weight:900;font-size:13px;border-bottom:3px solid transparent;border-radius:9px 9px 0 0}
.tc-nav-group>summary::-webkit-details-marker{display:none}
.tc-nav-group>summary:hover,.tc-nav-group[open]>summary,.tc-nav-group.is-active>summary{background:rgba(255,255,255,.12);border-bottom-color:var(--tc-gold)}
.tc-nav-caret{margin-left:auto;font-size:12px;opacity:.8}
.tc-nav-submenu{position:absolute;right:0;top:calc(100% - 1px);z-index:10050;min-width:300px;padding:10px;background:#fff;border:1px solid var(--tc-border);border-top:3px solid var(--tc-gold);border-radius:0 0 14px 14px;box-shadow:0 18px 40px rgba(6,45,82,.20)}
.tc-sub-link{display:block;padding:11px 12px;border-radius:9px;color:var(--tc-text)!important;text-decoration:none!important;font-weight:850;font-size:13px}.tc-sub-link:hover,.tc-sub-link:focus,.tc-sub-link.is-active{background:#edf5f9;color:var(--tc-blue)!important}.tc-sub-link+.tc-sub-link{margin-top:3px}
.tc-search-panel form{margin:0}.tc-search-panel label{display:block;color:var(--tc-text);font-size:12px;font-weight:900;margin:2px 0 8px}.tc-search-row{display:flex;gap:7px}.tc-search-row input{min-width:0;flex:1;height:43px;border:1px solid #c7d8e4;border-radius:9px;padding:0 10px;color:var(--tc-text);background:#fff}.tc-search-row button{height:43px;border:0;border-radius:9px;padding:0 13px;background:var(--tc-gold);color:#173f63;font-weight:950;cursor:pointer}.tc-search-panel small{display:block;color:var(--tc-muted);font-size:10px;margin-top:7px}
.tc-brand-name{letter-spacing:-.7px}.tc-brand-tagline{letter-spacing:1.3px}

/* Application pages keep the theme header at the top; the old plugin chrome is
   visually removed so users never see two menus. */
body.tcm-application-page .tc-page-wrap{min-height:calc(100vh - 150px)}
body.tcm-messaging-page .tc-page-wrap{min-height:calc(100vh - 150px)!important}

@media(max-width:1180px){
  .tc-menu>li>a.tc-nav-link,.tc-nav-group>summary{padding:0 11px;font-size:12px}
  .tc-menu{gap:2px}.tc-nav-group{min-width:160px}.tc-menu-search-item{margin-left:0}
}
@media(max-width:980px){
  .tc-independent-header-inner{padding:10px 14px;min-height:78px}
  .tc-brand-name{font-size:30px}.tc-brand-tagline{font-size:10px}
  .tc-user-name{display:none!important}
  .tc-header-nav-inner{padding:0}
  .tc-menu-toggle{display:flex!important;align-items:center;justify-content:flex-start;gap:9px;min-height:48px;padding:0 16px;background:var(--tc-navy);color:#fff!important;font-size:16px;border:0;border-radius:0;cursor:pointer}
  .tc-header-menu-panel{display:none}.tc-header-nav.is-open .tc-header-menu-panel{display:block}
  .tc-menu{display:flex;flex-direction:column;gap:0}
  .tc-menu>li{width:100%;border-top:1px solid rgba(255,255,255,.09)}
  .tc-menu>li>a.tc-nav-link{width:100%;min-height:48px;border-radius:0;padding:0 17px}
  .tc-menu-search-item{width:100%;display:block;margin:0}.tc-nav-group{width:100%;min-width:0}.tc-nav-group>summary{min-height:48px;border-radius:0;padding:0 17px}.tc-nav-submenu{position:static;min-width:0;border-radius:0;border-left:0;border-right:0;box-shadow:none;padding:12px 15px;background:#f7fafc}.tc-search-panel form{width:100%}.tc-search-row{flex-direction:column}.tc-search-row input,.tc-search-row button{width:100%;height:46px}
  .tc-logout{padding:9px 12px;min-width:70px;text-align:center;font-size:12px}
}
@media(max-width:560px){
  .tc-independent-header-inner{min-height:74px;padding:9px 78px 9px 10px;position:relative}
  .tc-brand{gap:9px;min-width:0}.tc-brand-mark{width:43px;height:43px;flex:0 0 43px;border-radius:12px;font-size:16px}.tc-brand-name{font-size:20px;white-space:nowrap}.tc-brand-tagline{font-size:7px;letter-spacing:.7px;white-space:nowrap;margin-top:4px}.tc-user-tools{position:absolute;right:7px;top:50%;transform:translateY(-50%);margin:0}.tc-logout{min-width:62px;padding:7px 8px;border-radius:9px;font-size:11px}.tc-menu-toggle{min-height:46px;padding:0 14px}.tc-menu>li>a.tc-nav-link,.tc-nav-group>summary{min-height:46px;padding:0 14px}.tc-nav-submenu{padding:10px}
}


/* TodayCase Theme Ver 0.8.1 — navigation visibility hardening.
   The canonical theme menu must remain visible even when the plugin page
   registry has missing/incomplete entries. */
body:not(.tc-login-page) .tc-header-nav{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  min-height:54px;
}
body:not(.tc-login-page) .tc-header-nav .tc-header-menu-panel{
  visibility:visible!important;
}
@media(max-width:980px){
  body:not(.tc-login-page) .tc-header-nav{min-height:48px;}
}

/* TodayCase Theme Ver 0.8.2 — Applicant menu visibility repair.
   The legacy applicant rule hid .tc-menu with !important.  The canonical
   Theme navigation is now the sole visible menu, so explicitly restore it. */
body.tc-role-applicant .tc-header-nav .tc-menu{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
}
body.tc-role-applicant .tc-header-nav .tc-menu>li{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}
@media(max-width:980px){
  body.tc-role-applicant .tc-header-nav:not(.is-open) .tc-header-menu-panel{
    display:none!important;
  }
  body.tc-role-applicant .tc-header-nav:not(.is-open) .tc-menu{
    display:none!important;
  }
  body.tc-role-applicant .tc-header-nav.is-open .tc-header-menu-panel,
  body.tc-role-applicant .tc-header-nav.is-open .tc-menu{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }
  body.tc-role-applicant .tc-header-nav.is-open .tc-menu{
    display:flex!important;
    flex-direction:column!important;
  }
}
