/* Shared HOWU route surfaces. Existing interaction controllers and route IDs remain intact. */
.howu-portal-app.hu-unified-app{--howu-bg:#e5f6ff;--howu-surface:#e4f5ff;--howu-text:#15213b;--howu-muted:#466079;--howu-border:#74b8dc;--howu-action:#063db8;--howu-yellow:#ffd600;padding-bottom:30px}
.hu-unified-app .hp-account-menu{width:210px;padding:7px;gap:5px;max-height:70dvh;overflow:auto;border:3px solid #19c9f4;border-top:4px solid #ffd600;background:#061334;box-shadow:4px 5px #02102d}
.hu-unified-app .hp-account-menu>.hp-action{font:700 13px/1.2 'HOWU UI',Arial,sans-serif;min-height:38px;padding:7px 10px;text-align:left;justify-content:flex-start;border-radius:3px;white-space:normal}
.hu-unified-app .hp-tabs button{font:900 12px/1.2 'HOWU UI',Arial,sans-serif;min-height:42px}.hu-unified-app .hp-action{font:700 12px/1.25 'HOWU UI',Arial,sans-serif}
.hu-route-content{min-width:0;display:flow-root;padding-bottom:16px}.hu-route-content> :is(section,div):not(.pc-site-credit){min-width:0;max-width:100%;}
.hu-route-content :is(.pc-search-page,.pc-friends-page,.pc-settings-v4-page,.pc-profile-page,.hu-saved-page,.howu-route-shell){background:#e5f6ff;color:#15213b;border:3px solid #19c9f4;border-top:5px solid #ffd600;border-radius:5px;box-shadow:4px 5px #061334;margin:0 auto 14px;padding:14px;min-width:0}
.hu-route-content :is(.pc-page-title,.pc-settings-v4-title,.pc-section-header){background:#063db8 url('/assets/howu-retro/texture-77af80590afd.svg') center;color:white;border-bottom:3px solid #ffb500;padding:12px;margin:-14px -14px 14px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.hu-route-content :is(.pc-page-title,.pc-settings-v4-title,.pc-section-header) :is(h1,h2){color:#ffd600;font:italic 29px/1.1 Impact,'Arial Black',sans-serif;letter-spacing:.3px}
.hu-route-content :is(.pc-search-field,.pc-search-field--large){display:flex;align-items:center;border:2px solid #087bee;border-radius:4px;padding:7px 10px;background:white;max-width:none;width:100%;margin:0 0 12px;min-height:44px}
.hu-route-content :is(input,textarea,select){color:#15213b;font-family:'HOWU UI',Arial,sans-serif;max-width:100%}.hu-route-content :is(input,textarea):not([type=checkbox]):not([type=radio]){background:white;border:1px solid #5da3cd;border-radius:3px;padding:8px;min-height:40px}
.hu-route-content .pc-search-field input{flex:1;min-width:0;width:100%;border:0;padding:4px;font-size:16px}
.hu-route-content :is(.pc-search-tabs,.pc-profile-tabs){display:flex;gap:3px;overflow-x:auto;background:#061b52;padding:5px;border:2px solid #087bee;border-radius:3px;margin-bottom:12px}
.hu-route-content :is(.pc-search-tabs,.pc-profile-tabs)>button{flex:1;min-height:40px;background:linear-gradient(#1695ff,#063db8);color:white;border:1px solid #55ccff;border-radius:3px;font-weight:800;white-space:nowrap;padding:5px 10px}
.hu-route-content :is(.pc-search-tabs,.pc-profile-tabs)>button:is(.is-active,[aria-selected=true]){background:#ffd600;color:#061334;box-shadow:inset 0 0 0 2px #fff5}
.hu-route-content :is(.pc-search-section,.pc-explore-section){border:2px solid #91c4df;background:#f8fcff;padding:10px;margin:10px 0;border-radius:3px}
.hu-route-content .pc-search-posts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.hu-route-content .pc-search-post-row{display:flex;align-items:center;gap:9px;padding:8px;border:2px solid #75b2d4;border-radius:4px;background:white;text-align:left;min-width:0;max-width:100%;min-height:86px;color:#15213b}
.hu-route-content .pc-search-post-row>img{width:90px;height:80px;object-fit:cover;border:2px solid #ffd600;flex-shrink:0}.hu-route-content .pc-search-post-row small{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.hu-route-content .pc-search-post-row>span{min-width:0}
.hu-route-content .pc-explore-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;min-width:0}.hu-route-content .pc-explore-tile{min-width:0;aspect-ratio:1.25;max-height:180px;padding:0;border:3px solid #ffd600;background:#063db8;overflow:hidden;border-radius:4px}.hu-route-content .pc-explore-tile img{width:100%;height:100%;object-fit:cover;max-height:180px}
.hu-route-content .howu-explore-topics{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.hu-route-content .howu-explore-topics button{background:#063db8;color:white;border:1px solid #19c9f4;min-height:36px;padding:5px 9px;border-radius:3px}
.hu-route-content .pc-search-accounts,.hu-route-content .pc-friends-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.hu-route-content :is(.pc-search-account,.pc-friend-card){display:flex;align-items:center;gap:9px;background:white;border:2px solid #087bee;border-bottom:4px solid #ffb500;border-radius:4px;padding:9px;min-width:0;color:#15213b}
.hu-route-content :is(.pc-primary-button,.pc-secondary-button,.pc-profile-button){min-height:38px;padding:6px 11px;border:1px solid #ba7d00;border-radius:3px;color:#061334;background:linear-gradient(#ffe97c,#ffd600);font-weight:800}
.hu-route-content .pc-settings-v4-page{max-width:1050px}.hu-route-content .pc-settings-v4-group{background:white;border:2px solid #4b98c5;border-radius:4px;margin:12px 0;overflow:hidden;box-shadow:0 2px #8fc6e3}
.hu-route-content .pc-settings-v4-group>h3{color:white;background:#063db8;padding:10px 12px;margin:0;border-bottom:3px solid #19c9f4;font-size:15px}
.hu-route-content .pc-settings-v4-row{min-height:64px;padding:10px 12px;border-bottom:1px solid #b6d9ea;color:#15213b;background:linear-gradient(100deg,#fff,#edf8ff)}
.hu-route-content .pc-settings-v4-icon{color:#063db8;background:#d6efff;border:1px solid #8cc7e5;border-radius:4px}.hu-route-content .pc-settings-v4-copy :is(strong,span){color:#15213b}.hu-route-content .pc-settings-v4-copy small{color:#466079}
.hu-route-content .pc-profile-page{padding:0;max-width:1060px}.hu-route-content .pc-profile-cover{border-bottom:4px solid #ffd600;max-height:260px;overflow:hidden}.hu-route-content .pc-profile-tabs{margin:10px}.hu-route-content .pc-profile-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px}
.hu-route-content .pc-post-card{border:2px solid #53a6d2;border-top:4px solid #087bee;border-radius:4px;box-shadow:0 3px #8bc5e6;background:#fff;min-width:0}.hu-route-content .pc-profile-grid-item{min-height:120px;max-height:230px;border:2px solid #087bee}.hu-route-content .pc-profile-grid{padding:10px}
.hu-route-content .pc-post-card .pc-post-image{max-height:260px;object-fit:contain;background:#e7f4fc}
.hu-route-content .howu-route-shell{padding:0;overflow:hidden}.hu-route-content :is(#howu-messenger-route,#howu-notifications-route){min-height:440px}
.hu-route-content .howu-messenger-shell{height:clamp(460px,70dvh,820px);min-height:440px;border:0;border-radius:0;background:#e4f5ff;color:#15213b;--chat-bg:#e4f5ff;--chat-panel:#f4fbff;--chat-border:#8ab9d8;--chat-text:#15213b;--chat-muted:#506c85;--chat-accent:#063db8}
.hu-route-content :is(.howu-messenger-list-panel,.howu-chat-list-panel,.howu-messenger-chat-pane,.howu-chat-thread){background:#f1faff;color:#15213b}
.hu-route-content :is(.howu-messenger-sidebar,.howu-messenger-rail){background:#061b52;color:white;border-right:3px solid #19c9f4}
.hu-route-content :is(.howu-chat-header,.howu-messenger-list-header,.howu-chats-header,.howu-updates-header,.howu-calls-header){background:#063db8;color:white;border-bottom:3px solid #ffd600;padding:12px}
.hu-route-content :is(.howu-chat-header,.howu-messenger-list-header,.howu-chats-header) :is(strong,h2,small,span){color:inherit}
.hu-route-content :is(.howu-chat-row,.howu-conversation-row,.howu-notification-item){border-bottom:1px solid #9cc8e2;background:#f5fbff;color:#15213b}.hu-route-content :is(.howu-chat-row,.howu-conversation-row).is-active{background:#d1eeff;border-left:4px solid #ffb500}
.hu-route-content :is(.howu-message-bubble,.howu-chat-message-bubble){border:1px solid #71b5d8;border-radius:6px;background:#fff;color:#15213b}.hu-route-content :is(.is-mine,.is-own) :is(.howu-message-bubble,.howu-chat-message-bubble){background:#fff3a9;border-color:#d2a800}
.hu-route-content .howu-chat-composer{background:#061b52;border-top:3px solid #19c9f4;padding:10px;position:relative;bottom:auto;min-width:0}.hu-route-content .howu-chat-composer :is(input,textarea){background:white;color:#15213b;font-size:16px;max-height:120px}.hu-route-content .howu-chat-composer button{color:#ffd600}
.hu-route-content .pc-site-credit{color:#c4e8ff;margin:18px auto 0;text-align:center;font-size:12px}
.hu-section-note{padding:10px 12px;background:#fff5ba;border-bottom:1px solid #e3bd2b;font-size:12px;color:#3c3c29}.hu-live-controls input{min-height:38px;border:1px solid #579fc9;border-radius:3px;padding:6px;max-width:180px;font-size:13px;color:#15213b;background:white}
.hu-feelings.hu-custom-feeling>.hu-feeling-line{display:grid;grid-template-columns:90px minmax(0,1fr);gap:9px}.hu-feeling-line label{display:block;min-width:0;font-size:11px;font-weight:800;color:#063db8}.hu-feeling-line input{display:block;width:100%;min-width:0;margin-top:5px;min-height:44px;padding:7px;border:2px solid #4ca7d3;border-radius:3px;background:white;color:#15213b;font:16px/1.3 'HOWU UI',Arial,sans-serif}.hu-feeling-line input.hu-emoji-input{text-align:center;font-size:26px}
.hu-emoji-picker{margin-top:9px}.hu-emoji-picker>summary{cursor:pointer;color:#063db8;font-weight:800;padding:7px;background:#d8f0ff;border:1px solid #76b8df;border-radius:3px}.hu-emoji-picker>div{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px;padding:7px 0}.hu-emoji-picker button{background:linear-gradient(#fff7ac,#ffd600);border:2px solid #e3a500;box-shadow:1px 2px #895500;min-height:42px;padding:3px;border-radius:7px;transform:rotate(-3deg)}.hu-emoji-picker button:nth-child(even){transform:rotate(3deg)}.hu-emoji-picker button[aria-pressed=true]{outline:3px solid #063db8}.hu-custom-feeling>button{margin:5px 0;min-height:32px}
.hu-photo-preview{display:flex;gap:10px;align-items:center;padding:7px;border:1px solid #62a1c9;background:#eefaff}.hu-photo-preview img{max-height:140px;max-width:70%;object-fit:contain}.hu-photo-preview button,.hu-voice-preview button{min-height:36px;border:1px solid #063db8;background:white;color:#063db8;border-radius:3px;padding:5px}
.hu-voice-preview{padding:9px;border:2px solid #8428d7;background:#eee6ff;display:grid;gap:7px}.hu-voice-preview strong{font:900 12px/1.2 'HOWU UI',Arial,sans-serif;color:#52259b}.hu-voice-preview audio,.hu-inline-voice{display:block;max-width:100%;width:100%;height:36px}.hu-inline-voice{padding:0 9px;margin-bottom:8px}.hu-recording{color:#a72d0b;font-size:12px;font-weight:800;padding:7px;background:#fff1dc}
.hu-song-field{display:block;color:#063db8;font:800 11px/1.4 'HOWU UI',Arial,sans-serif;margin:10px 0}.hu-song-field input{display:block;width:100%;min-width:0;margin:5px 0 0;min-height:42px;font-size:16px;padding:7px;border:2px solid #48a4d5;border-radius:3px;color:#15213b;background:white}
.hu-owner-actions,.hu-post-tools{display:flex;align-items:center;gap:5px;padding:7px 9px;border-top:1px solid #9ecce5;background:#e7f6ff;flex-wrap:wrap}.hu-owner-actions button,.hu-post-tools button{min-height:34px;border:1px solid #79acd0;border-radius:3px;background:white;color:#063db8;font:700 11px/1.2 'HOWU UI',Arial,sans-serif;padding:5px 8px}
.hu-music-players{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;background:#061334}.hu-music-players article{min-width:0;border:2px solid #19c9f4;border-top:4px solid #ffd600;padding:9px;background:#0c2b65;color:white;border-radius:4px}.hu-music-players p{font-size:12px;line-height:1.4;max-height:36px;overflow:hidden;margin:5px 0}.hu-music-players iframe{display:block;border:0;border-radius:4px;width:100%;height:160px;background:#061334;margin:9px 0}
/* Account-entry and administration retain their controllers with the same brand surfaces. */
.howu-auth,.howu-admin,.howu-admin-denied{--howu-bg:#061b52;--howu-surface:#e7f6ff;--howu-border:#77b8dd;--howu-text:#15213b;--howu-action:#063db8;background:#061b52 url('/assets/howu-retro/texture-77af80590afd.svg') repeat}
.howu-admin .howu-admin-sidebar{background:#061334;border-right:3px solid #19c9f4;color:white}.howu-admin .howu-wordmark{color:#ffd600;font:italic 34px/1.1 Impact,sans-serif}.howu-admin .howu-wordmark small{font:12px/1.3 'HOWU UI',Arial,sans-serif;color:#b7e8ff}.howu-admin .howu-admin-sidebar button{border-radius:3px;color:white;min-height:40px}.howu-admin .howu-admin-sidebar button.active{background:#ffd600;color:#061334}.howu-admin .howu-admin-main>header{background:#063db8;color:white;border-bottom:3px solid #ffd600}.howu-admin .howu-admin-main>main{background:#e4f5ff;min-height:100dvh}.howu-admin .howu-admin-primary{background:linear-gradient(#ffe774,#ffd600);color:#061334;border:1px solid #bd8600;border-radius:3px}
@media(max-width:1100px) and (min-width:701px){.hu-route-content .pc-search-accounts,.hu-route-content .pc-friends-list{grid-template-columns:repeat(2,minmax(0,1fr))}.hu-unified-app .hp-tabs button{font-size:11px;padding:5px 6px}.hu-route-content .pc-explore-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.howu-portal-app.hu-unified-app{padding:0 8px calc(82px + env(safe-area-inset-bottom))}.hu-unified-app .hp-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto}.hu-unified-app .hp-tabs button{flex:0 0 auto;min-height:40px;padding:6px 10px;font-size:11px}.hu-unified-app .hp-header .hp-tabs{grid-column:1/-1}.hu-route-content :is(.pc-search-page,.pc-friends-page,.pc-settings-v4-page,.pc-profile-page,.hu-saved-page){padding:10px;border-width:2px;border-top-width:4px}.hu-route-content :is(.pc-page-title,.pc-settings-v4-title,.pc-section-header){margin:-10px -10px 10px;padding:10px}.hu-route-content :is(.pc-search-posts,.pc-search-accounts,.pc-friends-list,.pc-profile-feed){grid-template-columns:1fr}.hu-route-content .pc-explore-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.hu-route-content .pc-explore-tile{max-height:130px;border-width:2px}.hu-route-content .pc-settings-v4-row{padding:10px 8px;min-height:60px}.hu-route-content .howu-messenger-shell{height:calc(100dvh - 234px - env(safe-area-inset-bottom));min-height:380px}.hu-route-content :is(#howu-messenger-route,#howu-notifications-route){min-height:380px}.hu-route-content .howu-chat-composer{padding:7px}.hu-feelings.hu-custom-feeling>.hu-feeling-line{grid-template-columns:72px minmax(0,1fr)}.hu-emoji-picker>div{grid-template-columns:repeat(6,minmax(0,1fr))}.hu-music-players{grid-template-columns:1fr;padding:7px}.hu-unified-app .hp-account-menu{width:190px}.hu-live-controls input{max-width:none;width:100%;min-height:42px}.hu-post-tools button,.hu-owner-actions button{min-height:40px}.hu-editor .hu-attachments{flex-wrap:wrap}}
.hu-unified-app{-webkit-text-size-adjust:100%;text-size-adjust:100%}.hu-detail-feeling{margin:7px 12px;padding:7px 9px;background:#fff4b5;border:1px solid #d5b534;border-left:4px solid #ff7917;border-radius:3px;font:700 13px/1.4 'HOWU UI',Arial,sans-serif;color:#15213b;overflow-wrap:anywhere}
.hu-route-content :is(.howu-messenger-brandbar,.howu-chat-thread-head){background:#063db8;color:white;border-bottom:3px solid #ffd600}.hu-route-content :is(.howu-messenger-brandbar,.howu-chat-thread-head) :is(strong,small,span,button){color:inherit}.hu-route-content .howu-messenger-list-pane{background:#e7f6ff;border-right:3px solid #19c9f4}.hu-route-content .howu-messenger-top-tabs{background:#061b52;padding:5px}.hu-route-content .howu-messenger-tab{border-radius:3px;background:#0a55c2;color:white;min-height:38px}.hu-route-content .howu-messenger-tab.is-active{background:#ffd600;color:#061334}.hu-route-content .howu-chat-message-stage{background:#e1f3ff;min-height:0;overscroll-behavior:contain}.hu-route-content .howu-chat-message-list{padding:12px}.hu-route-content .howu-notification-row{background:#f4fbff;border-bottom:1px solid #8fbeda;color:#15213b}.hu-route-content .howu-notification-row.is-unread{background:#fff4b5;border-left:4px solid #ff7917}.hu-route-content .pc-post-media-image{max-height:260px;object-fit:contain;background:#e8f5fd}
.howu-auth .howu-auth-form-side{background:#061b52 url('/assets/howu-retro/texture-77af80590afd.svg') repeat}.howu-auth .howu-auth-card{background:#e5f6ff;border:3px solid #19c9f4;border-top:5px solid #ffd600;border-radius:5px;box-shadow:5px 6px #061334;color:#15213b}.howu-auth .howu-auth-brand strong{color:#063db8;font:italic 42px/1.1 Impact,sans-serif;text-shadow:2px 2px #ffd600}.howu-auth .howu-auth-primary{border-radius:4px;background:linear-gradient(#ffe779,#ffd600);border:2px solid #ba8200;box-shadow:0 3px #915b00;color:#061334}.howu-auth .howu-wordmark{color:#ffd600;text-shadow:3px 3px #061334}.howu-auth .howu-auth-subtitle{color:#315375}
@media(max-width:700px){.hu-route-content .howu-messenger-shell{height:calc(var(--howu-visible-height,100dvh) - 234px - env(safe-area-inset-bottom));min-height:330px}.hu-route-content .howu-chat-thread{min-height:0;max-height:100%;height:100%;display:flex;flex-direction:column}.hu-route-content .howu-chat-message-stage{flex:1;min-height:0;overflow:auto}.hu-route-content .howu-chat-composer{flex-shrink:0}.hu-route-content .howu-messenger-desktop-body{min-height:0}.hu-route-content .howu-messenger-list-pane{border-right:0}}
.hu-unified-app .hu-route-content .howu-messenger-shell{position:relative;inset:auto;width:100%;height:clamp(460px,70dvh,820px);z-index:auto;min-height:440px;max-height:none;border-radius:4px;border:0;box-shadow:none}
.hu-unified-app .hu-route-content .pc-profile-header{padding:16px;background:#e7f6ff;border-bottom:3px solid #ffd600}.hu-unified-app .hu-route-content .pc-profile-content{padding:10px;background:#cfeeff;border:0;border-radius:0}.hu-unified-app .hu-route-content .pc-profile-name-line strong{font-weight:900;color:#063db8}.hu-unified-app .hu-route-content .pc-profile-avatar{border:4px solid #ffd600;box-shadow:0 0 0 3px #063db8;border-radius:5px}.hu-unified-app .hu-route-content .pc-profile-stats{gap:12px;flex-wrap:wrap}.hu-unified-app .hu-route-content .pc-profile-stats>span{display:flex;flex-direction:column;border:1px solid #71a9cf;border-bottom:3px solid #087bee;background:white;padding:8px 12px;border-radius:3px;min-width:70px}.hu-unified-app .hu-route-content .pc-profile-top{grid-template-columns:120px minmax(0,1fr);gap:20px}.hu-unified-app .hu-route-content .pc-profile-banner{border-bottom:3px solid #ffd600;margin:0 0 15px;width:100%;height:210px;border-radius:3px}.hu-unified-app .hu-route-content .pc-profile-bio{padding:9px;background:#fff;border:1px solid #8fc2db;border-left:4px solid #ff7917;border-radius:3px;max-width:none}.hu-unified-app .hu-route-content .pc-profile-tabs{border:2px solid #087bee;border-radius:3px;background:#061b52;padding:5px}.hu-unified-app .hp-post-meta{max-width:48%;min-width:0}.hu-unified-app .hp-mood{white-space:normal;overflow-wrap:anywhere;line-height:1.3;max-width:100%}
.hu-unified-app .hp-bottom>button{position:relative}.hu-unified-app .hp-bottom .hp-badge{position:absolute;top:3px;right:15%;min-width:18px;height:18px;font-size:10px}
@media(max-width:700px){.hu-unified-app .hu-route-content .howu-messenger-shell{position:relative;inset:auto;height:calc(var(--howu-visible-height,100dvh) - 234px - env(safe-area-inset-bottom));min-height:330px;max-height:none;z-index:auto}.hu-unified-app .hu-route-content .pc-profile-top{grid-template-columns:84px minmax(0,1fr);gap:12px;padding-top:16px}.hu-unified-app .hu-route-content .pc-profile-actions{margin-left:0;flex-wrap:wrap}.hu-unified-app .hu-route-content .pc-profile-banner{height:150px}.hu-unified-app .hu-route-content .pc-profile-stats{gap:6px}.hu-unified-app .hu-route-content .pc-profile-stats>span{padding:6px 8px;min-width:55px;flex:1}.hu-unified-app .hu-route-content .pc-profile-avatar-wrap,.hu-unified-app .hu-route-content .pc-profile-avatar{width:76px;height:76px}}
body:has(.hu-unified-app) :is(.pc-shared-post-dialog,.pc-profile-post-dialog,.howu-chat-modal){background:#e8f7ff;color:#15213b;border:3px solid #19c9f4;border-top:5px solid #ffd600;border-radius:5px;box-shadow:5px 6px #061334}
body:has(.hu-unified-app) :is(.pc-shared-post-dialog,.pc-profile-post-dialog,.howu-chat-modal)>header{background:#063db8;color:white;border-bottom:3px solid #ffd600;padding:10px}
body:has(.hu-unified-app) :is(.pc-shared-post-backdrop,.howu-chat-modal-backdrop){background:#020d2cce}
.hu-unified-app .hu-route-content .howu-saved{background:#e5f6ff;color:#15213b;max-width:100%;border:0}.hu-unified-app .howu-save-header{background:#063db8;color:white;border-bottom:3px solid #ffd600}.hu-unified-app .howu-save-tabs{background:#061b52}.hu-unified-app .howu-save-tabs button{color:white;border-radius:3px}.hu-unified-app .howu-save-tabs button.is-active{background:#ffd600;color:#061334}
