/* GGIRL / Velvet Direct R69 -- optional modular communications UI.
   R68 existing media/session owners are deliberately untouched.
   Home is a fixed-height control center. Other detail views own their scroll. */
html[data-dc69-home="1"],html[data-dc69-home="1"] body.dcspa-r69{
  height:100dvh!important;max-height:100dvh!important;overflow:hidden!important;
}
.dcspa-r69 .dcspa-shell{
 height:100dvh!important;max-height:100dvh!important;
 grid-template-rows:auto minmax(0,1fr) auto;background:#050108!important;overflow:hidden
}
.dcspa-r69 .dcspa-top{
 min-height:68px;padding:calc(6px + env(safe-area-inset-top)) 13px 9px;
 background:linear-gradient(180deg,#040107,#0c0610)!important;
 border-bottom:1px solid rgba(222,172,96,.55)!important;gap:9px
}
.dcspa-r69 .dcspa-brand strong{font:700 clamp(17px,5vw,26px)/.95 Georgia,serif!important;letter-spacing:.06em;color:#f0cd86!important}
.dcspa-r69 .dcspa-brand small{margin-top:5px!important;color:#be87ec;font-size:8px;letter-spacing:.15em}
.dcspa-r69 .dcspa-online{min-height:34px;padding:0 8px;border-color:#59316b;border-radius:13px}
.dcspa-r69 .dcspa-online span{font-size:9px;white-space:nowrap;font-weight:800}
.dcspa-r69 .dcspa-view{
 min-height:0!important;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;
 padding:16px 14px calc(17px + env(safe-area-inset-bottom))!important;
 background:radial-gradient(ellipse at top,rgba(77,18,111,.14),transparent 52%),#060209!important;
}
html[data-dc69-home="1"] .dcspa-r69 .dcspa-view{
 overflow-y:hidden!important;overflow-x:hidden!important;padding:11px 12px 7px!important;
}
.dcspa-r69 .dcspa-bottom{
 grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:3px;min-height:60px;
 padding:6px 6px calc(5px + env(safe-area-inset-bottom))!important;
 border-top:1px solid rgba(175,83,225,.52);
 background:#050108!important;z-index:30;
}
.dcspa-r69 .dcspa-bottom a{
 min-width:0;min-height:48px!important;border-radius:12px;
 font:700 10px/1.2 system-ui,sans-serif!important;gap:3px;
 color:#bcb0c4;text-align:center
}
.dcspa-r69 .dcspa-bottom a span{font-size:19px;line-height:1.1}
.dcspa-r69 .dcspa-bottom a[aria-current="page"]{
 background:linear-gradient(150deg,#321040,#16071e);
 color:#fff!important;box-shadow:inset 0 0 0 1px rgba(182,69,243,.69)
}
.dcspa-r69 .dcspa-view :is(a,button,select,input):focus-visible{outline:2px solid #e6bb78!important;outline-offset:3px!important}
.dcspa-r69 .dc69-heading h1{font:700 clamp(25px,7vw,39px)/1.1 Georgia,serif!important;color:#f1cb82!important;margin:0 0 5px}
.dcspa-r69 .dc69-heading p{font-size:13px;color:#c1b2ca;line-height:1.45;margin:0 0 15px}
.dcspa-r69 .dc69-heading{display:block;margin-bottom:8px}
.dcspa-r69 .dc69-home{height:100%!important;max-height:100%!important;min-height:0!important;display:grid;grid-template-rows:auto minmax(0,1fr) minmax(0,1.55fr) auto;gap:clamp(7px,1.1vh,11px);overflow:hidden}
.dcspa-r69 .dc69-searchbar button{
 display:flex;align-items:center;gap:9px;width:100%;height:39px;min-height:39px;
 padding:4px 12px;border:1px solid rgba(165,72,213,.44);border-radius:13px;
 background:#160b20;color:#bbaac7;text-align:left;font:500 12px system-ui,sans-serif
}
.dcspa-r69 .dc69-searchbar button::first-letter{font-size:22px}
.dcspa-r69 .dc69-section{min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.dcspa-r69 .dc69-section header{
 display:flex;justify-content:space-between;align-items:center;gap:5px;flex:0 0 auto;
 margin:0 1px 6px
}
.dcspa-r69 .dc69-section header h2{margin:0;font:700 clamp(16px,4.7vw,23px)/1.15 Georgia,serif;color:#efca82;letter-spacing:.025em}
.dcspa-r69 .dc69-section header a{font:750 11px system-ui;color:#d19df1;white-space:nowrap;text-decoration:none}
.dcspa-r69 .dc69-favorites{display:flex;align-items:start;gap:9px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain;min-width:0;min-height:0;flex:1}
.dcspa-r69 .dc69-favorites::-webkit-scrollbar{display:none}
.dcspa-r69 .dc69-favorite{flex:0 0 70px;min-width:70px;display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:start;text-decoration:none;text-align:center;color:#f6ecff;font-size:11px;line-height:1.17;overflow:hidden}
.dcspa-r69 .dc69-favorite .dcspa-avatar{width:55px!important;height:55px!important;border-color:#ac54d8!important;box-shadow:0 0 10px rgba(169,62,233,.35)!important;flex:none}
.dcspa-r69 .dc69-favorite>span:last-child{max-height:27px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}
.dcspa-r69 .dc69-addfav{border:0;background:none;cursor:pointer}
.dcspa-r69 .dc69-addfav>span:first-child{display:grid;place-items:center;width:55px;height:55px;border-radius:50%;border:1px solid #623477;background:#180c22;font-size:28px;color:#e1b4fa}
.dcspa-r69 .dc69-recent-section{border:1px solid #43244c;border-radius:16px;background:linear-gradient(140deg,rgba(31,11,43,.82),rgba(9,3,17,.95));padding:9px 9px 8px}
.dcspa-r69 #dc69HomeRecent{display:flex;flex-direction:column;gap:5px;min-height:0;overflow:hidden;flex:1}
.dcspa-r69 .dc69-recent{
 display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;
 padding:6px 9px;min-height:0;flex:1;
 background:#13091d;border:1px solid #4d235c;border-radius:13px;
 text-decoration:none;color:#fff!important;min-width:0
}
.dcspa-r69 .dc69-recent .dcspa-avatar{width:36px;height:36px;font-size:14px}
.dcspa-r69 .dc69-recent-copy{min-width:0;display:flex;flex-direction:column;gap:4px}
.dcspa-r69 .dc69-recent-copy b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dcspa-r69 .dc69-recent-copy small{font-size:10px;color:#a99ab6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dcspa-r69 .dc69-recent-chevron{font-size:23px;color:#e2b4f7}
.dcspa-r69 .dc69-empty-mini{min-height:50px;display:flex;align-items:center;font-size:11px;line-height:1.4;color:#b9a7c7;padding:10px}
.dcspa-r69 .dc69-shortcuts{padding-top:3px}
.dcspa-r69 .dc69-quick-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;min-height:0;flex:1}
.dcspa-r69 .dc69-quick-grid button{
 min-width:0;min-height:55px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
 background:linear-gradient(145deg,#250c31,#13071b);border:1px solid #78308f;
 border-radius:13px;color:#fff;padding:5px 2px;font-weight:750;cursor:pointer
}
.dcspa-r69 .dc69-quick-grid button span{font-size:20px}
.dcspa-r69 .dc69-quick-grid button small{font-size:9px;line-height:1.2;white-space:normal;text-align:center;max-width:68px;color:#e4d3ee}
.dcspa-r69 .dc69-directory-tools{display:flex;gap:8px}
.dcspa-r69 .dc69-directory-tools input{
 flex:1;min-width:0;height:44px;border:1px solid #62316f;border-radius:12px;padding:10px 12px;
 color:#fff;background:#13091b;font-size:13px
}
.dcspa-r69 .dc69-directory-tools button{min-width:67px;height:44px;border:1px solid #be935a;background:#271725;color:#f0c980;border-radius:12px;font-weight:800}
.dcspa-r69 .dc69-directory-tabs{display:flex;overflow-x:auto;gap:7px;scrollbar-width:none;margin:12px 0 8px}
.dcspa-r69 .dc69-directory-tabs button{min-height:36px;flex:0 0 auto;border:1px solid #62316c;border-radius:12px;padding:8px 14px;background:#100917;color:#d5bfdf;font-size:11px;font-weight:800;white-space:nowrap}
.dcspa-r69 .dc69-directory-tabs button[aria-pressed="true"]{color:#fff;background:#502069;border-color:#b05fe5}
.dcspa-r69 .dc69-list{display:grid;gap:9px}
.dcspa-r69 .dc69-directory-row{display:grid;grid-template-columns:49px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:66px;border:1px solid #4a2556;border-radius:15px;background:#120a19;padding:8px 11px;color:#fff;text-decoration:none}
.dcspa-r69 .dc69-directory-row>span:nth-child(2){min-width:0}
.dcspa-r69 .dc69-directory-row .dcspa-avatar{width:47px;height:47px}
.dcspa-r69 .dc69-directory-row b{font-size:14px;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.dcspa-r69 .dc69-directory-row small{font-size:11px;display:block;margin-top:4px;color:#b8a8c5}
.dcspa-r69 .dc69-directory-row>span:last-child{font-size:22px;color:#d0a4e9}
.dcspa-r69 #dc69RecentsList .dc69-recent{min-height:63px;flex:auto}
.dcspa-r69 .dc69-profile{display:flex;align-items:center;gap:13px;background:#170a21;border:1px solid #633375;border-radius:17px;padding:14px}
.dcspa-r69 .dc69-profile .dcspa-avatar{flex:none;width:72px;height:72px;font-size:29px;border-color:#b76df2}
.dcspa-r69 .dc69-profile>div{flex:1;min-width:0}
.dcspa-r69 .dc69-profile b{display:block;font-size:19px;color:#fff}
.dcspa-r69 .dc69-profile small{display:block;margin-top:5px;color:#b9abbe;font-size:12px}
.dcspa-r69 #dc69FavoriteToggle{font-size:27px;color:#e9c27b;border:1px solid #714179;background:#24112c;border-radius:13px;min-width:45px;min-height:45px}
.dcspa-r69 .dc69-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}
.dcspa-r69 .dc69-profile-grid button{display:flex;min-height:90px;min-width:0;align-items:center;gap:6px;flex-direction:column;justify-content:center;background:linear-gradient(150deg,#200e2a,#120719);border:1px solid #63316f;border-radius:15px;color:#fff;padding:9px 5px}
.dcspa-r69 .dc69-profile-grid button span{font-size:24px;color:#d8a5f2}
.dcspa-r69 .dc69-profile-grid button b{font-size:12px}
.dcspa-r69 .dc69-profile-grid button small{color:#bca8c7;font-size:10px;line-height:1.35}
.dcspa-r69 .dc69-person-share button{margin:12px 0 3px}
.dcspa-r69 .dc69-location-person,.dcspa-r69 .dc69-media-contact,.dcspa-r69 .dc69-unanswered-person{
 display:flex;align-items:center;gap:13px;padding:12px;margin-bottom:11px;
 border:1px solid #5e316f;border-radius:16px;background:#180b21;
}
.dcspa-r69 .dc69-location-person .dcspa-avatar,.dcspa-r69 .dc69-unanswered-person .dcspa-avatar,.dcspa-r69 .dc69-media-contact .dcspa-avatar{width:60px;height:60px;flex:none}
.dcspa-r69 .dc69-location-person b,.dcspa-r69 .dc69-media-contact b,.dcspa-r69 .dc69-unanswered-person b{display:block;font-size:17px}
.dcspa-r69 .dc69-location-person span,.dcspa-r69 .dc69-media-contact small,.dcspa-r69 .dc69-unanswered-person small{display:block;margin-top:5px;color:#bca9c8;font-size:11px;line-height:1.45}
.dcspa-r69 .dc69-location-controls{margin:13px 0 0}
.dcspa-r69 .dc69-location-controls button{width:100%;white-space:normal}
.dcspa-r69 .dc69-fallback{margin-top:12px}
.dcspa-r69 .dc69-fallback h2{color:#e8c281;font-family:Georgia,serif;font-size:26px}
.dcspa-r69 .dc69-fallback-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}
.dcspa-r69 .dc69-fallback-actions button{display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;min-height:115px;border:1px solid #7c4196;background:#25102e;color:#fff;border-radius:15px;font-size:25px}
.dcspa-r69 .dc69-fallback-actions b{font-size:13px}
.dcspa-r69 .dc69-fallback-actions small{font-size:10px;color:#d8c2df}
.dcspa-r69 .dc69-fallback-note{margin-top:14px!important;color:#bea7c9!important;font-size:11px!important}
.dcspa-r69 .dc69-later{width:100%;margin-top:13px}
.dcspa-r69 .dc69-alert-ui{margin-top:12px;padding:11px 12px;border:1px solid #a9824d;background:#1e1223;border-radius:14px;color:#ecd7e9;font-size:12px;line-height:1.5}
.dcspa-r69 .dc69-alert-ui[hidden]{display:none!important}
.dcspa-r69 .dc69-alert-ui button{width:100%;margin-top:10px}
.dcspa-r69 .dc69-recorder{display:flex;flex-direction:column;gap:9px;border:1px solid #643273;border-radius:17px;background:#100719;padding:13px}
.dcspa-r69 .dc69-capture-display{position:relative;min-height:172px;display:grid;place-items:center;background:radial-gradient(circle at center,#321046,#100718 73%);border:1px solid #5c3075;border-radius:16px;overflow:hidden}
.dcspa-r69 .dc69-mic-symbol{font-size:77px;filter:drop-shadow(0 0 18px #8130b2)}
.dcspa-r69 .dc69-capture-display video{width:100%;height:260px;object-fit:cover;transform:scaleX(-1)}
.dcspa-r69 .dc69-countdown{position:absolute;inset:0;display:grid;place-items:center;background:rgba(20,5,36,.52);font-size:82px;font-weight:850;color:#f2cbff}
.dcspa-r69 .dc69-countdown[hidden]{display:none!important}
.dcspa-r69 .dc69-recorder h2{font-size:17px;margin:0;color:#f1cf8d;text-align:center}
.dcspa-r69 .dc69-recorder>p{font-size:12px;line-height:1.55;color:#baa9c6;text-align:center;margin:0}
.dcspa-r69 .dc69-elapsed{text-align:center;font-size:17px;color:#dfbded}
.dcspa-r69 .dc69-preview>audio,.dcspa-r69 .dc69-preview>video{width:100%;display:block;max-height:250px;border-radius:12px}
.dcspa-r69 .dc69-record-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.dcspa-r69 .dc69-record-actions button{min-width:0;min-height:45px;white-space:normal}
.dcspa-r69 .dc69-record-actions button[hidden]{display:none!important}
.dcspa-r69 .dc69-delivery-note{color:#e0b978!important;font-size:11px!important;margin-top:10px!important}
.dcspa-r69 .dcspa-panel h2{color:#ebc988}
html[data-dc69-home="1"] .dcspa-r69 .dcspa-talk-dock{display:none!important}
@media(max-height:750px){
 .dcspa-r69 .dcspa-top{min-height:60px;padding-top:3px;padding-bottom:4px}
 .dcspa-r69 .dc69-home{gap:5px;grid-template-rows:auto minmax(0,1fr) minmax(0,1.28fr) auto}
 .dcspa-r69 .dc69-searchbar button{height:35px;min-height:35px}
 .dcspa-r69 .dc69-section header{margin-bottom:3px}
 .dcspa-r69 .dc69-favorite{flex-basis:61px;min-width:61px}
 .dcspa-r69 .dc69-favorite .dcspa-avatar,.dcspa-r69 .dc69-addfav>span:first-child{width:45px!important;height:45px!important}
 .dcspa-r69 .dc69-recent{padding:4px 6px;gap:6px}
 .dcspa-r69 .dc69-recent .dcspa-avatar{width:30px;height:30px}
 .dcspa-r69 .dc69-quick-grid button{min-height:45px}
 .dcspa-r69 .dc69-quick-grid button span{font-size:17px}
}
@media(max-height:630px){
 .dcspa-r69 .dc69-searchbar{display:none}
 .dcspa-r69 .dc69-home{grid-template-rows:minmax(0,1fr) minmax(0,1.45fr) auto}
 .dcspa-r69 .dc69-favorite .dcspa-avatar,.dcspa-r69 .dc69-addfav>span:first-child{width:40px!important;height:40px!important}
 .dcspa-r69 .dc69-favorite>span:last-child{font-size:9px}
 .dcspa-r69 .dc69-quick-grid button small{font-size:8px}
}
@media(max-width:360px){
 .dcspa-r69 .dcspa-brand strong{font-size:18px}
 .dcspa-r69 .dcspa-online{padding:0 6px}
 .dcspa-r69 .dcspa-online span{font-size:8px}
 .dcspa-r69 .dc69-quick-grid{gap:3px}
 .dcspa-r69 .dc69-quick-grid button{padding-inline:0}
 .dcspa-r69 .dc69-quick-grid button small{font-size:8px}
 .dcspa-r69 .dc69-directory-row{gap:8px}
}
@media(prefers-reduced-motion:reduce){.dcspa-r69 *{scroll-behavior:auto!important;transition:none!important}}
/* R69 home visual acceptance: never stretch one recent event into a giant card.
   Real records may be sparse; distribute remaining space between sections. */
html[data-dc69-home="1"] .dcspa-r69 .dc69-home{
 display:flex!important;flex-direction:column!important;justify-content:space-between!important;
 gap:clamp(8px,1.6vh,18px)!important;
}
html[data-dc69-home="1"] .dcspa-r69 .dc69-searchbar{flex:0 0 auto!important}
html[data-dc69-home="1"] .dcspa-r69 .dc69-favorite-section{flex:0 0 auto!important;height:118px!important;max-height:23%!important}
html[data-dc69-home="1"] .dcspa-r69 .dc69-recent-section{
 flex:0 1 auto!important;max-height:38%!important;min-height:0!important;
}
html[data-dc69-home="1"] .dcspa-r69 #dc69HomeRecent{flex:0 1 auto!important;max-height:200px!important;min-height:0!important}
html[data-dc69-home="1"] .dcspa-r69 #dc69HomeRecent .dc69-recent{
 flex:0 0 auto!important;height:52px!important;min-height:45px!important;max-height:57px!important;
}
html[data-dc69-home="1"] .dcspa-r69 .dc69-shortcuts{flex:0 0 auto!important;height:102px!important;max-height:23%!important}
html[data-dc69-home="1"] .dcspa-r69 .dc69-quick-grid{height:66px!important;max-height:70px!important}
.dcspa-r69 .dc69-location-controls button{padding-inline:7px!important;font-size:clamp(11px,3.5vw,14px)!important}
@media(max-height:720px){
 html[data-dc69-home="1"] .dcspa-r69 .dc69-favorite-section{height:104px!important}
 html[data-dc69-home="1"] .dcspa-r69 .dc69-shortcuts{height:86px!important}
 html[data-dc69-home="1"] .dcspa-r69 .dc69-quick-grid{height:60px!important}
}
@media(max-height:620px){
 html[data-dc69-home="1"] .dcspa-r69 .dc69-favorite-section{height:88px!important}
 html[data-dc69-home="1"] .dcspa-r69 .dc69-quick-grid{height:52px!important}
 html[data-dc69-home="1"] .dcspa-r69 .dc69-shortcuts{height:78px!important}
}
/* Prominent Walkie launcher fills the control-center middle without scroll. */
html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch{
 flex:0 0 auto;min-height:70px;width:100%;display:grid;
 grid-template-columns:51px 86px minmax(0,1fr) 13px;align-items:center;gap:7px;
 background:radial-gradient(circle at 15% 50%,#49205d,#170a20 68%);
 color:#fff;border:1px solid #a95cdf;border-radius:17px;text-align:left;
 padding:9px 12px;box-shadow:inset 0 0 15px rgba(158,45,210,.15);
}
html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch>span:first-child{
 display:grid;place-items:center;width:45px;height:45px;border-radius:50%;border:2px solid #ac51dd;
 box-shadow:0 0 13px rgba(165,74,212,.45);font-size:24px
}
html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch b{font:700 21px Georgia,serif;color:#f1cd88;letter-spacing:.04em}
html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch small{font-size:11px;color:#d8c2e4;line-height:1.35}
html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch>span:last-child{color:#e0b7f9;font-size:24px}
@media(max-height:700px){html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch{min-height:58px;padding-block:5px;grid-template-columns:40px 74px minmax(0,1fr) 10px}html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch>span:first-child{width:38px;height:38px;font-size:19px}html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch b{font-size:17px}html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch small{font-size:10px}}
@media(max-height:600px){html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch{min-height:47px;grid-template-columns:29px 65px minmax(0,1fr) 10px}html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch>span:first-child{width:28px;height:28px;font-size:15px}html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch small{font-size:9px}}
/* Text grouping keeps the Walkie launcher readable at 320-412px. */
html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch{grid-template-columns:51px minmax(0,1fr) 13px!important}
html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch .dc69-walkie-launch-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch .dc69-walkie-launch-copy b{font-size:20px!important}
html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch .dc69-walkie-launch-copy small{font-size:11px!important;line-height:1.35}
@media(max-height:700px){html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch{grid-template-columns:40px minmax(0,1fr) 10px!important}html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch .dc69-walkie-launch-copy b{font-size:17px!important}html[data-dc69-home="1"] .dcspa-r69 .dc69-walkie-launch .dc69-walkie-launch-copy small{font-size:10px!important}}
