:root{
 --dark:#071C53;--blue:#0C45B8;--orange:#F45B08;--light:#F7F8FB;--graphite:#111827;--border:#E3E8F0;
 --muted:#667085;--soft:#EEF4FB;--green:#0A8F5A;--sidebar:224px;--right:356px;--radius:18px;
 --shadow:0 14px 40px rgba(7,28,83,.08);--shadow-sm:0 6px 20px rgba(7,28,83,.06)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--graphite);background:#edf2f7;font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.app-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr) var(--right);max-width:1600px;min-height:100vh;margin:0 auto;background:#fff;box-shadow:0 0 0 1px rgba(7,28,83,.05)}
.sidebar{position:sticky;top:0;height:100vh;padding:18px 14px 20px;background:linear-gradient(180deg,#071C53 0%,#08275e 65%,#0b386d 100%);color:#fff;display:flex;flex-direction:column;z-index:70}.brand{display:flex;align-items:center;justify-content:center;height:106px}.brand img{width:88px;height:88px;object-fit:contain;border-radius:50%}.side-primary{display:flex;align-items:center;justify-content:center;min-height:46px;margin:4px 6px 16px;border-radius:12px;background:var(--orange);font-size:15px;font-weight:800;box-shadow:0 8px 22px rgba(244,91,8,.25)}.side-nav{display:grid;gap:5px}.side-nav a{display:flex;align-items:center;gap:11px;min-height:44px;padding:9px 12px;border-radius:11px;font-size:14px;font-weight:650;color:#eef5ff}.side-nav a span{width:22px;text-align:center;font-size:17px;color:#bdd2ec}.side-nav a:hover,.side-nav a.active{background:rgba(255,255,255,.10)}.side-nav a.active{box-shadow:inset 3px 0 0 var(--orange)}.side-bottom{margin-top:auto;padding:16px 10px 4px;border-top:1px solid rgba(255,255,255,.12)}.side-bottom a{display:block;margin:8px 0;color:#c2d2e6;font-size:13px}.side-bottom small{color:#92abc8;font-size:12px}.side-bottom p{margin:24px 0 18px;font-size:19px;line-height:1.2;color:#9db9d9;font-style:italic}
.center-col{min-width:0;background:#fff}.topbar{position:sticky;top:0;z-index:55;height:72px;padding:0 22px;display:grid;grid-template-columns:minmax(280px,1fr) auto auto;gap:16px;align-items:center;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.mobile-logo{display:none}.searchbox{max-width:620px;height:46px;border:1px solid #dbe4ef;border-radius:12px;background:#f5f8fc;display:flex;align-items:center;padding:0 14px}.searchbox span{margin-right:8px;font-size:20px;color:#48617d}.searchbox input{width:100%;border:0;outline:0;background:transparent;font-size:14px;color:#263d59}.location,.watch-link{font-size:14px;font-weight:700;color:#52657c;white-space:nowrap}.watch-link{color:var(--blue)}.main-col{padding:22px 22px 34px;background:#fff}.footer{display:flex;gap:26px;flex-wrap:wrap;align-items:center;padding:22px;border-top:1px solid var(--border);font-size:13px;color:#667085;background:#fff}.footer a{color:#53657b}
.events-side{min-width:0;border-left:1px solid var(--border);background:#f8fafc}.right-top{position:sticky;top:0;z-index:56;height:72px;padding:0 16px;display:flex;align-items:center;background:#fff;border-bottom:1px solid var(--border)}.add-event{width:100%;min-height:44px;border-radius:12px;background:var(--orange);color:#fff;font-size:14px;font-weight:800;display:flex;align-items:center;justify-content:center}.events-scroll{position:sticky;top:72px;max-height:calc(100vh - 72px);overflow:auto;padding:16px}.month-button{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #d8e1ec;border-radius:12px;background:#fff;color:var(--dark);font-size:14px;font-weight:800;margin-bottom:12px}.event-section{padding:14px 0;border-top:1px solid var(--border)}.event-section:first-of-type{border-top:0}.event-section-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px}.event-section-head b{font-size:16px;color:#173255}.event-section-head span{font-size:13px;color:#7a8798}.side-event{display:grid;grid-template-columns:70px 1fr;gap:11px;padding:11px 0;border-bottom:1px solid #e4e9ef}.side-event img{width:70px;height:66px;object-fit:cover;border-radius:10px}.side-event small{display:block;font-size:12px;font-weight:800;color:#397bb8;text-transform:uppercase}.side-event b{display:block;font-size:14px;line-height:1.3;color:#142a47;margin:2px 0 4px}.side-event span{display:block;font-size:13px;line-height:1.35;color:#66778b}.calendar{margin-top:14px;padding:14px;border:1px solid var(--border);border-radius:14px;background:#fff}.calendar-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:14px}.calendar-head a{font-size:13px;color:var(--blue);font-weight:700}.week,.days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.week span{font-size:12px;color:#8d98a7;padding:4px 0}.days b,.days i{font-style:normal;font-size:13px;padding:6px 0;border-radius:50%;color:#4e627a}.days .hot{background:#eaf2ff;color:#1a62b4}.days .today{background:var(--orange);color:#fff}
/* V9 homepage */
.v9-hero{position:relative;overflow:hidden;min-height:470px;border-radius:24px;background:linear-gradient(100deg,rgba(7,28,83,.97) 0%,rgba(7,28,83,.88) 45%,rgba(7,28,83,.30) 100%),url('/assets/hero-approved.jpg') 62% center/cover no-repeat;color:#fff;padding:44px 42px;box-shadow:var(--shadow)}.v9-hero:after{content:"";position:absolute;right:-70px;bottom:-90px;width:300px;height:300px;border:1px solid rgba(255,255,255,.18);border-radius:50%}.hero-content{position:relative;z-index:2;max-width:720px}.eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.eyebrow.orange{color:#ffb183}.v9-hero h1{margin:13px 0 15px;max-width:720px;font-size:clamp(52px,4vw,64px);line-height:1.02;letter-spacing:-.045em}.v9-hero .lead{max-width:680px;margin:0 0 24px;font-size:18px;line-height:1.55;color:#e7edf7}.audience-switch{display:grid;grid-template-columns:repeat(2,minmax(0,260px));gap:12px;margin:22px 0}.audience-card{position:relative;min-height:108px;padding:16px 17px;border:1px solid rgba(255,255,255,.24);border-radius:16px;background:rgba(255,255,255,.11);color:#fff;text-align:left;cursor:pointer;transition:.18s}.audience-card:hover,.audience-card.active{background:#fff;color:var(--dark);transform:translateY(-2px)}.audience-card b{display:block;font-size:18px}.audience-card span{display:block;margin-top:5px;font-size:14px;line-height:1.4;color:inherit;opacity:.78}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border:1px solid transparent;border-radius:12px;font-size:15px;font-weight:800;cursor:pointer;transition:.16s}.btn.orange{background:var(--orange);color:#fff}.btn.blue{background:var(--dark);color:#fff}.btn.light{background:#fff;color:var(--dark);border-color:#d7e1ec}.btn.ghost{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.28)}.btn:hover{transform:translateY(-1px)}.hero-stats{display:flex;gap:32px;flex-wrap:wrap;margin-top:32px;padding-top:22px;border-top:1px solid rgba(255,255,255,.18)}.hero-stat b{display:block;font-size:24px}.hero-stat span{font-size:13px;color:#dbe5f3}
.home-block{padding:36px 0 0}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px}.section-head h2{margin:0;font-size:36px;line-height:1.12;letter-spacing:-.035em;color:var(--dark)}.section-head p{max-width:640px;margin:7px 0 0;font-size:16px;color:var(--muted)}.section-head a{font-size:14px;font-weight:800;color:var(--blue)}
.ai-home{padding:24px;border:1px solid #dce6f2;border-radius:20px;background:linear-gradient(135deg,#f1f7ff,#fff 62%,#fff5ee);box-shadow:var(--shadow-sm)}.ai-home-grid{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:end}.ai-home h2{margin:0 0 7px;font-size:34px;color:var(--dark);letter-spacing:-.03em}.ai-home p{margin:0 0 15px;font-size:16px;color:#607087}.ai-prompt{width:100%;min-height:104px;padding:15px 16px;border:1px solid #ccd9e8;border-radius:14px;background:#fff;resize:vertical;font-size:16px;line-height:1.5;color:#243b57;outline:0}.ai-prompt:focus{border-color:#8bb8e9;box-shadow:0 0 0 3px rgba(12,69,184,.08)}.ai-hint{margin-top:8px;font-size:13px;color:#7d8998}.ai-home .btn{min-width:180px;height:52px}
.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.method-card{min-height:164px;padding:20px;border:1px solid var(--border);border-radius:17px;background:#fff;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;align-items:flex-start;text-align:left;transition:.18s}.method-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.method-icon{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;background:#eff5ff;color:var(--blue);font-size:22px;margin-bottom:17px}.method-card.primary .method-icon{background:#fff0e7;color:var(--orange)}.method-card h3{margin:0 0 6px;font-size:21px;line-height:1.2;color:#173255}.method-card p{margin:0;font-size:14px;line-height:1.45;color:#69788b}.method-card .arrow{margin-top:auto;padding-top:13px;color:var(--blue);font-size:14px;font-weight:800}
.scenario-chips{display:flex;flex-wrap:wrap;gap:9px}.scenario-chip{min-height:44px;padding:0 15px;border:1px solid #dbe5ef;border-radius:999px;background:#fff;color:#30475f;font-size:14px;font-weight:750;display:inline-flex;align-items:center}.scenario-chip:hover{border-color:#9fc3e9;background:#f1f7ff}.scenario-chip.active{background:var(--dark);border-color:var(--dark);color:#fff}
.home-cats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.home-cat{overflow:hidden;border:1px solid var(--border);border-radius:15px;background:#fff;box-shadow:var(--shadow-sm)}.home-cat img{width:100%;height:118px;object-fit:cover}.home-cat span{display:block;padding:12px 13px 14px;font-size:15px;font-weight:800;color:#1b3452}
.preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.preview-card{padding:18px;border:1px solid var(--border);border-radius:17px;background:#fff;box-shadow:var(--shadow-sm)}.preview-card img{width:100%;height:150px;object-fit:cover;border-radius:12px;margin-bottom:13px}.preview-card small{font-size:13px;font-weight:800;color:#3b7bb7}.preview-card h3{margin:5px 0 8px;font-size:22px;line-height:1.25;color:#173255}.preview-card p{margin:0 0 12px;font-size:15px;color:#6a788c}.preview-card .meta{display:flex;flex-wrap:wrap;gap:6px}.preview-card .meta span{font-size:13px;padding:5px 8px;border-radius:999px;background:#f1f5f9;color:#53657c}.feature-band{margin-top:36px;padding:28px;border-radius:21px;background:linear-gradient(125deg,#071C53,#0a488d);color:#fff}.feature-band h2{margin:0 0 9px;font-size:34px}.feature-band p{max-width:700px;margin:0 0 17px;font-size:16px;color:#d7e6f6}.dual-promo{display:grid;grid-template-columns:1fr 1fr;gap:14px}.promo-card{min-height:210px;padding:24px;border:1px solid var(--border);border-radius:19px;background:#fff;box-shadow:var(--shadow-sm)}.promo-card h3{font-size:25px;margin:4px 0 9px;color:var(--dark)}.promo-card p{font-size:15px;color:#68788d}.promo-card.orange-top{border-top:4px solid var(--orange)}
/* General pages */
.page-hero{margin-bottom:22px;padding:32px;border:1px solid var(--border);border-radius:20px;background:linear-gradient(135deg,#eef5ff,#fff 62%,#fff5ed)}.page-hero .eyebrow{color:#56718e}.page-hero h1{margin:8px 0 11px;font-size:52px;line-height:1.04;letter-spacing:-.04em;color:var(--dark)}.page-hero p{max-width:780px;margin:0;font-size:17px;color:#667085}.page-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.content-card{margin-bottom:16px;padding:22px;border:1px solid var(--border);border-radius:18px;background:#fff}.content-card h2{margin:0 0 12px;font-size:34px;line-height:1.15;color:var(--dark)}.content-card h3{margin:18px 0 8px;font-size:22px;color:#1b3452}.content-card p,.content-card li{font-size:16px;line-height:1.6;color:#667085}.content-card ul{padding-left:21px}.list-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.list-card{padding:16px;border:1px solid var(--border);border-radius:14px;background:#fff}.list-card b{display:block;font-size:16px;color:#193553}.list-card span,.list-card p{display:block;margin:4px 0 0;font-size:14px;line-height:1.5;color:#6b798d}.list-card a{font-size:14px;color:var(--blue);font-weight:800}.filter-panel{margin:16px 0;padding:18px;border:1px solid var(--border);border-radius:16px;background:#fff}.filter-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.filter-head h2{margin:0;font-size:28px;color:var(--dark)}.filter-head button{border:0;background:transparent;color:var(--blue);font-size:14px;font-weight:800}.filter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.filter-grid label{font-size:13px;font-weight:800;color:#66778b}.filter-grid input,.filter-grid select,.filter-grid textarea{width:100%;min-height:44px;margin-top:5px;padding:9px 11px;border:1px solid #d9e3ee;border-radius:10px;background:#fafcff;font-size:14px;color:#2b405a}.results-head{display:flex;justify-content:space-between;align-items:center;margin:22px 0 12px}.results-head h2{margin:0;font-size:32px;color:var(--dark)}.results-head span{font-size:14px;color:#718094}.hobby-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.hobby-card{position:relative;display:flex;flex-direction:column;min-height:220px;padding:18px;border:1px solid var(--border);border-radius:16px;background:#fff}.hobby-card .badge{width:max-content;padding:5px 8px;border-radius:999px;background:#eef5ff;color:#2b6fae;font-size:13px}.hobby-card h3{margin:10px 36px 7px 0;font-size:21px;line-height:1.25;color:#173255}.hobby-card p{margin:0 0 10px;font-size:14px;color:#69788c}.hobby-card .meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}.hobby-card .meta span{padding:5px 8px;border-radius:999px;background:#f2f5f8;font-size:13px;color:#56677e}.fav{position:absolute;right:12px;top:12px;width:36px;height:36px;border:1px solid #dae3ed;border-radius:50%;background:#fff;color:#5d7189;font-size:18px;display:grid;place-items:center}.fav.active{color:var(--orange);border-color:#ffc9a8;background:#fff6f0}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.category-card{display:grid;grid-template-columns:50px 1fr;gap:12px;align-content:start;min-height:132px;padding:17px;border:1px solid var(--border);border-radius:16px;background:#fff}.category-card .icon{width:50px;height:50px;border-radius:13px;background:linear-gradient(135deg,#eef5ff,#fff2e8);display:grid;place-items:center;font-size:24px}.category-card b{font-size:17px;color:#193553}.category-card p{margin:4px 0;font-size:14px;color:#6c7b8f}.category-card span{grid-column:2;font-size:13px;color:var(--blue)}.find-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.find-methods .method-card{min-height:150px}.collection-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.collection-row a{min-height:40px;padding:0 13px;border-radius:999px;background:#edf4fb;color:#315d84;font-size:13px;font-weight:750;display:inline-flex;align-items:center}.detail-top{display:grid;grid-template-columns:1.25fr .75fr;gap:14px}.detail-summary{padding:24px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(135deg,#fff,#eef5ff)}.detail-summary h1{margin:8px 0 12px;font-size:48px;line-height:1.04;letter-spacing:-.04em;color:var(--dark)}.detail-summary p{font-size:16px;color:#667085}.detail-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.detail-tags span{padding:6px 9px;border-radius:999px;background:#eff4f8;font-size:13px;color:#56677d}.detail-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:17px}.detail-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.metric{padding:15px;border:1px solid var(--border);border-radius:14px;background:#fff}.metric b{display:block;font-size:18px;color:#173255}.metric span{font-size:13px;color:#758296}.search-results{display:grid;gap:11px}.search-result{padding:16px;border:1px solid var(--border);border-radius:14px;background:#fff}.search-result small{font-size:13px;color:#2c79bd;text-transform:uppercase;font-weight:800}.search-result b{display:block;margin:3px 0;font-size:17px}.search-result span{font-size:14px;color:#6a798d}.empty-state{padding:28px;border:1px dashed #cbd8e5;border-radius:14px;text-align:center;font-size:15px;color:#748296}
/* AI V9 */
.ai-shell{display:grid;grid-template-columns:1fr;gap:14px}.ai-mode{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ai-mode button{min-height:86px;padding:16px;border:1px solid #d6e1ed;border-radius:15px;background:#fff;text-align:left;font-size:16px;color:#263f5d;cursor:pointer}.ai-mode button strong{display:block;font-size:19px;color:var(--dark)}.ai-mode button.active{border-color:#88b4e6;background:#eef6ff}.ai-chat{min-height:430px;padding:18px;border:1px solid var(--border);border-radius:18px;background:#f8fafc}.chat-log{display:grid;gap:10px;max-height:520px;overflow:auto;padding:2px}.bubble{max-width:82%;padding:13px 15px;border-radius:15px;font-size:15px;line-height:1.5}.bubble.bot{background:#fff;border:1px solid #dce5ef;color:#263e5a}.bubble.user{justify-self:end;background:var(--dark);color:#fff}.ai-compose{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:13px}.ai-compose textarea{min-height:74px;padding:13px;border:1px solid #d5e0ec;border-radius:13px;resize:vertical;font-size:15px}.ai-compose button{min-width:140px}.ai-results{display:grid;gap:12px;margin-top:15px}.match-card{padding:18px;border:1px solid #dbe4ed;border-radius:16px;background:#fff}.match-card-head{display:flex;justify-content:space-between;gap:10px}.match-card h3{margin:0;font-size:22px;color:var(--dark)}.match{font-size:18px;font-weight:800;color:var(--orange)}.match-card p{font-size:15px;color:#667085}.match-meta{display:flex;gap:7px;flex-wrap:wrap}.match-meta span{padding:5px 8px;border-radius:999px;background:#f1f5f9;font-size:13px;color:#53657c}.school-mini{margin-top:12px;padding-top:11px;border-top:1px solid var(--border)}.school-mini b{font-size:14px}.school-mini a{display:block;margin-top:5px;font-size:14px;color:var(--blue);font-weight:700}.quick-refine{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.quick-refine button{min-height:39px;padding:0 11px;border:1px solid #d8e2ec;border-radius:999px;background:#fff;font-size:13px;color:#3f5772}.phone-save{margin-top:16px;padding:17px;border:1px solid #f0d7c7;border-radius:15px;background:#fff8f3}.phone-save h3{margin:0 0 7px;font-size:20px;color:var(--dark)}.phone-save p{font-size:14px;color:#6a7788}.consent-line{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:#667085}.consent-line input{margin-top:4px}
/* Mobile */
.mobile-nav{display:none}
@media(max-width:1260px){:root{--sidebar:205px;--right:320px}.method-grid{grid-template-columns:repeat(3,1fr)}.home-cats{grid-template-columns:repeat(4,1fr)}.side-nav a{font-size:13px}.v9-hero{padding:38px 34px}.v9-hero h1{font-size:52px}}
@media(max-width:1040px){body{padding-bottom:72px;background:#fff;font-size:16px}.app-shell{display:block;max-width:none}.sidebar,.events-side{display:none}.topbar{height:68px;grid-template-columns:auto 1fr auto;padding:0 13px}.mobile-logo{display:block}.mobile-logo img{width:48px;height:48px;object-fit:contain;border-radius:50%}.searchbox{height:44px}.searchbox input{font-size:13px}.location{display:none}.watch-link{font-size:0}.watch-link:after{content:"⌕";font-size:22px}.main-col{padding:12px 13px 28px}.v9-hero{min-height:auto;padding:28px 20px;border-radius:18px;background:linear-gradient(135deg,#071C53,#0b4384)}.v9-hero h1{font-size:40px}.v9-hero .lead{font-size:16px}.audience-switch{grid-template-columns:1fr;gap:9px}.audience-card{min-height:86px}.hero-stats{gap:17px}.hero-stat b{font-size:21px}.home-block{padding-top:28px}.section-head h2{font-size:30px}.section-head p{font-size:15px}.ai-home{padding:18px}.ai-home-grid{grid-template-columns:1fr}.ai-home h2{font-size:29px}.ai-home .btn{width:100%}.method-grid{grid-template-columns:1fr 1fr}.method-card{min-height:150px;padding:17px}.method-card h3{font-size:20px}.home-cats{grid-template-columns:1fr 1fr}.home-cat img{height:125px}.preview-grid{grid-template-columns:1fr}.preview-card img{height:190px}.dual-promo{grid-template-columns:1fr}.page-hero{padding:24px 19px}.page-hero h1{font-size:38px}.page-hero p{font-size:16px}.content-card h2{font-size:29px}.filter-grid{grid-template-columns:1fr 1fr}.category-grid{grid-template-columns:1fr 1fr}.hobby-grid{grid-template-columns:1fr 1fr}.detail-top{grid-template-columns:1fr}.list-grid{grid-template-columns:1fr 1fr}.footer{display:none}.mobile-nav{position:fixed;left:0;right:0;bottom:0;z-index:120;height:68px;display:grid;grid-template-columns:repeat(5,1fr);background:rgba(255,255,255,.98);border-top:1px solid var(--border);box-shadow:0 -6px 18px rgba(7,28,83,.05)}.mobile-nav a{min-height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;color:#51647b}.mobile-nav a b{font-size:18px}.mobile-nav a span{font-size:11px;font-weight:750}.mobile-nav a.active{color:var(--blue)}.ai-mode{grid-template-columns:1fr}.ai-compose{grid-template-columns:1fr}.ai-compose button{width:100%}}
@media(max-width:620px){.topbar{grid-template-columns:auto 1fr auto;gap:8px}.searchbox{padding:0 9px}.section-head{align-items:flex-start;flex-direction:column}.section-head h2{font-size:28px}.method-grid,.home-cats,.category-grid,.hobby-grid,.list-grid,.filter-grid{grid-template-columns:1fr}.method-card{min-height:128px}.home-cat{display:grid;grid-template-columns:120px 1fr;align-items:center}.home-cat img{height:92px}.page-hero h1{font-size:36px}.detail-summary h1{font-size:36px}.detail-metrics{grid-template-columns:1fr 1fr}.bubble{max-width:94%}.feature-band h2{font-size:28px}}
.personal-match{margin:0 0 16px;padding:16px 18px;border:1px solid #cfe0f4;border-radius:14px;background:#eef6ff}.personal-match b{display:block;font-size:18px;color:var(--dark)}.personal-match p{margin:5px 0 0;font-size:15px;color:#5b6f87}.my-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}.my-tabs button{min-height:42px;padding:0 13px;border:1px solid #d7e1ec;border-radius:999px;background:#fff;font-size:14px;font-weight:750;color:#455c76}.my-tabs button.active{background:var(--dark);border-color:var(--dark);color:#fff}.status-select{width:100%;min-height:40px;margin-top:10px;border:1px solid #d8e2ec;border-radius:9px;padding:0 9px;background:#f8fafc;font-size:13px;color:#40556e}

/* V10.4 Council updates */
.city-selector{border:0;background:transparent;cursor:pointer;padding:8px 10px;border-radius:12px}.city-selector:hover{background:#f4f7fb}.mobile-city-chip{display:none}.city-toast{position:fixed;z-index:220;top:82px;right:18px;max-width:320px;padding:12px 14px;background:#071c53;color:#fff;border-radius:14px;box-shadow:0 12px 32px rgba(7,28,83,.22);font-size:13px}.media-priority{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(180px,.5fr);gap:18px;align-items:center;padding:28px;background:linear-gradient(135deg,#f8fbff,#fff7f0);border:1px solid #e5ebf3;border-radius:24px}.media-priority h2{margin:6px 0 8px;font-size:32px;line-height:1.08}.media-priority p{margin:0 0 16px;color:#52657c}.media-actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center}.media-channel{font-size:13px;font-weight:800;color:#0b4384;padding:9px 11px;background:#fff;border:1px solid #dbe4ef;border-radius:12px}.media-priority-mark{min-height:160px;border-radius:20px;background:#071c53;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px}.media-priority-mark .ui-icon{width:34px;height:34px;margin-bottom:8px}.media-priority-mark b{font-size:34px;line-height:1}.media-priority-mark span{font-size:12px;opacity:.82;margin-top:7px}
@media(max-width:1040px){.mobile-city-chip{display:inline-flex;align-items:center;gap:5px;margin:8px 13px 0;padding:6px 9px;border:1px solid #dbe4ef;border-radius:999px;background:#fff;color:#52657c;font:700 12px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}.mobile-city-chip .ui-icon{width:14px;height:14px}.media-priority{grid-template-columns:1fr;padding:20px}.media-priority-mark{min-height:105px}.media-priority h2{font-size:28px}}

/* PH-17.09.2026 critical path: SELF → free request → recommendation → hobby → place → external action */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.ai-critical-entry{margin:14px 0 18px;padding:24px;border:1px solid #d9e5f2;border-radius:22px;background:linear-gradient(145deg,#f4f8ff,#fff 58%,#fff6ef);box-shadow:0 10px 30px rgba(7,28,83,.07)}
.ai-critical-copy{max-width:760px;margin-bottom:14px}.ai-self-kicker{display:inline-flex;min-height:30px;align-items:center;padding:0 10px;border-radius:999px;background:#eaf3ff;color:#0c45b8;font-size:14px;font-weight:800}.ai-critical-copy h2{margin:10px 0 7px;font-size:34px;line-height:1.12;color:var(--dark)}.ai-critical-copy p{margin:0;font-size:16px;line-height:1.55;color:#607087}
.ai-chat-critical{min-height:0;padding:0;border:0;background:transparent}.ai-chat-critical .chat-log{max-height:260px}.ai-chat-critical .ai-compose{grid-template-columns:1fr auto;align-items:stretch}.ai-chat-critical .ai-compose textarea{min-height:150px;font-size:17px;line-height:1.55;padding:16px 17px;background:#fff}.ai-primary-submit{min-width:190px;min-height:52px;font-size:16px}
.ai-state{display:flex;align-items:flex-start;gap:10px;margin-top:12px;padding:12px 14px;border-radius:13px;font-size:14px;line-height:1.45}.ai-state.loading{background:#eef5ff;color:#244d7d}.ai-state.loading .ai-state-icon{width:18px;height:18px;flex:0 0 18px;border:2px solid #9dbce2;border-top-color:#0c45b8;border-radius:50%;animation:ph-spin .8s linear infinite}.ai-state.success{background:#effaf3;color:#23623a}.ai-state.fallback,.ai-state.notice{background:#fff7e9;color:#76551d}.ai-state.error{background:#fff0f0;color:#8a2f2f}@keyframes ph-spin{to{transform:rotate(360deg)}}
.ai-loading-card,.ai-error-state,.ai-empty-state{padding:22px;border:1px solid #dce6f0;border-radius:18px;background:#fff}.ai-loading-card span{display:block;width:44px;height:44px;margin-bottom:12px;border:4px solid #dbe8f7;border-top-color:#0c45b8;border-radius:50%;animation:ph-spin .8s linear infinite}.ai-loading-card b,.ai-error-state b,.ai-empty-state b{display:block;font-size:19px;color:var(--dark)}.ai-loading-card p,.ai-error-state p,.ai-empty-state p{margin:6px 0 0;font-size:15px;line-height:1.5;color:#667085}
.recommendation-card{padding:24px;border-radius:20px;box-shadow:0 8px 24px rgba(11,42,80,.06)}.recommendation-kicker{display:block;margin-bottom:4px;font-size:13px;font-weight:800;color:#2c79bd;text-transform:uppercase;letter-spacing:.03em}.recommendation-card h3{font-size:27px}.match-explanation{margin:16px 0;padding:15px;border-radius:14px;background:#f6f9fc}.match-explanation b{font-size:14px;color:#27415f}.match-explanation p{margin:5px 0 0;font-size:16px;line-height:1.55;color:#53657b}.recommendation-actions .btn{min-height:52px}.nearby-venues .venue-mini{min-height:64px;padding:11px 12px;border:1px solid #dbe5ef;border-radius:13px;background:#fff}.nearby-venues .venue-mini b{display:block;font-size:15px;color:#173255}.nearby-venues .venue-mini span{font-size:14px;color:#667085}
.place-card{display:flex;flex-direction:column;gap:12px}.place-card-main{display:block;min-width:0}.place-actions{display:flex;gap:8px;flex-wrap:wrap;padding-top:10px;border-top:1px solid #e4ebf2}.place-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 12px;border-radius:11px;font-size:14px;font-weight:800}.place-contact{background:#eef4fb;color:#194e84}.place-contact.primary{background:#0c45b8;color:#fff}.place-detail-link{border:1px solid #d5e0ec;color:#324e6d;background:#fff}

/* PH-18.09.2026 EVENTS + TOURISM */
.tourism-grid .list-card,.tourism-card{display:flex;flex-direction:column;gap:8px}
.tourism-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.tourism-meta span{font-size:12px;padding:5px 8px;border-radius:999px;background:#f2f6fb;color:#51647b}
.tourism-price{font-weight:800;color:#071c53}
.content-note{font-size:13px;color:#748296}
.hobby-links{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 18px}
.hobby-links a{display:inline-flex;padding:7px 10px;border:1px solid #dde5ef;border-radius:999px;text-decoration:none}
.detail-stack{display:grid;gap:14px}
.detail-stack .list-card{min-height:auto}
@media(max-width:620px){.tourism-filter-panel .filter-grid label[style]{grid-column:auto!important}}
