/* YNS Yavuz Unified Command System v1300
   Final visual authority for desktop, iOS/PWA and durable Laravel AI chat. */
:root{
  --yv13-shell:#040a14;--yv13-panel:#081321;--yv13-panel-2:#0b1728;--yv13-panel-3:#0f1d31;
  --yv13-border:rgba(139,174,221,.14);--yv13-border-strong:rgba(139,174,221,.27);
  --yv13-text:#f6f9ff;--yv13-muted:#8b9db7;--yv13-dim:#60738e;
  --yv13-cyan:#18d7e9;--yv13-blue:#4c87ff;--yv13-violet:#9665ff;--yv13-orange:#ff7a1a;
  --yv13-green:#32dda2;--yv13-red:#ff536f;--yv13-yellow:#ffc95b;
  --yv13-radius:22px;--yv13-radius-sm:14px;--yv13-shadow:0 22px 70px rgba(0,0,0,.26);
  --yv13-topbar:82px;
}
html,body{min-height:100%;background:var(--yv13-shell)!important}
html{overflow-x:hidden}
body.admin-shell{overflow-x:hidden;min-width:0;background:
  radial-gradient(circle at 83% -5%,rgba(24,215,233,.075),transparent 32%),
  radial-gradient(circle at 27% 10%,rgba(150,101,255,.055),transparent 27%),
  var(--yv13-shell)!important}
body.admin-shell.page-yavuz{overflow:hidden}
body.admin-shell.page-yavuz .main{height:100dvh;min-height:100dvh;overflow:hidden;display:flex;flex-direction:column;padding-bottom:0!important}
.main{min-width:0!important;width:auto!important;max-width:none!important}
.main>.alert{flex:0 0 auto}
.topbar{min-width:0!important}
.topbar>div,.top-actions,.user{min-width:0}
.topbar h1,.topbar p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar{overscroll-behavior:contain}

/* Universal page discipline: one rhythm for every legacy and new module. */
.main>:not(.topbar):not(.v1000-mobile-dock){max-width:100%}
.box,.stat,.hero-insight,.v523-intro,.studio-hero,.api-status,.ios-admin-hero,
.v525-panel,.erp-card,.genesis-card,.living-card{
  border-color:var(--yv13-border)!important;box-shadow:0 16px 48px rgba(0,0,0,.16)!important;
}
.box{background:linear-gradient(145deg,rgba(12,25,43,.95),rgba(7,17,31,.98))!important;color:var(--yv13-text)!important}
.box h1,.box h2,.box h3,.box strong{color:var(--yv13-text)}
.box p,.box small,.box label{color:var(--yv13-muted)}
.cards,.panel-grid,.dashboard-grid,.bottom-grid,.status-grid,.notification-layout{align-items:stretch;min-width:0}
.cards>* ,.panel-grid>* ,.dashboard-grid>* ,.bottom-grid>* ,.status-grid>*{min-width:0}
.table{width:100%;max-width:100%;overflow:auto;border:1px solid var(--yv13-border)!important;background:rgba(6,14,26,.72)!important}
.table table{width:100%}
.table th{position:sticky;top:0;z-index:2;background:#0d1a2c!important;color:#8295b1!important}
.table td{border-color:rgba(139,174,221,.09)!important;color:#cdd8e8!important}
input,textarea,select{max-width:100%;background:#071321!important;color:#eef4ff!important;border-color:var(--yv13-border)!important}
input:focus,textarea:focus,select:focus{border-color:rgba(24,215,233,.48)!important;box-shadow:0 0 0 3px rgba(24,215,233,.08)!important}
button,.button{touch-action:manipulation}

/* Last-resort render guard: a fatal module can never leave a visually empty right side. */
.yv13-render-guard{margin:24px;padding:24px;border:1px solid rgba(255,83,111,.22);border-radius:20px;background:linear-gradient(145deg,rgba(50,15,29,.75),rgba(10,20,35,.96));color:#dbe6f5}
.yv13-render-guard strong{display:block;color:#fff;font-size:18px;margin-bottom:7px}.yv13-render-guard p{color:#9aabc0;margin:0 0 14px}.yv13-render-guard a{color:var(--yv13-cyan)}

/* Durable HAN-like Yavuz chat */
.yv13-chat-shell{
  flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 310px;
  border:1px solid var(--yv13-border);border-radius:24px 24px 0 0;overflow:hidden;
  background:linear-gradient(145deg,#07111f,#040b15);box-shadow:var(--yv13-shadow)
}
.yv13-chat-main{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;border-right:1px solid var(--yv13-border)}
.yv13-chat-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border-bottom:1px solid var(--yv13-border);background:
  radial-gradient(circle at 17% 115%,rgba(255,122,26,.14),transparent 42%),
  linear-gradient(125deg,rgba(14,29,50,.98),rgba(7,16,29,.98))}
.yv13-chat-title{display:flex;align-items:center;gap:13px;min-width:0}.yv13-chat-avatar{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,var(--yv13-orange),var(--yv13-violet));color:#fff;font-weight:950;box-shadow:0 10px 30px rgba(189,81,108,.28)}
.yv13-chat-title>div{min-width:0}.yv13-chat-title small{display:flex;align-items:center;gap:7px;color:#6f829e;font-size:9px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.yv13-chat-title small i{width:7px;height:7px;border-radius:50%;background:var(--yv13-green);box-shadow:0 0 12px var(--yv13-green)}
.yv13-chat-title h2{margin:4px 0 2px;color:#fff;font-size:21px;letter-spacing:-.035em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.yv13-chat-title p{margin:0;color:#7f91aa;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:750px}
.yv13-chat-header-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.yv13-engine-badge,.yv13-new-chat{height:38px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--yv13-border);border-radius:12px;padding:0 12px;background:#09172a;color:#aebdd1;font-size:10px;font-weight:800;text-decoration:none}.yv13-engine-badge i{width:7px;height:7px;border-radius:50%;background:var(--yv13-green);box-shadow:0 0 10px rgba(50,221,162,.65)}.yv13-new-chat{color:#fff;background:linear-gradient(130deg,rgba(76,135,255,.26),rgba(150,101,255,.25));border-color:rgba(116,143,255,.32)}

.yv13-chat-stream{min-height:0;overflow:auto;overscroll-behavior:contain;padding:24px clamp(18px,5vw,84px) 32px;display:flex;flex-direction:column;gap:17px;scroll-behavior:smooth;background:
  radial-gradient(circle at 50% 0%,rgba(24,215,233,.025),transparent 28%),
  linear-gradient(180deg,rgba(5,12,23,.98),rgba(4,10,19,.98))}
.yv13-chat-empty{margin:auto;max-width:620px;text-align:center;padding:34px 28px;border:1px dashed rgba(139,174,221,.2);border-radius:22px;background:rgba(10,23,40,.55)}.yv13-chat-empty .yv13-chat-avatar{margin:0 auto 15px;width:54px;height:54px}.yv13-chat-empty h3{margin:0 0 9px;color:#f5f8ff;font-size:22px}.yv13-chat-empty p{margin:0;color:#8192a9;line-height:1.65;font-size:12px}
.yv13-message{display:flex;align-items:flex-end;gap:10px;max-width:min(850px,88%)}.yv13-message.user{align-self:flex-end;flex-direction:row-reverse}.yv13-message.assistant{align-self:flex-start}.yv13-message-avatar{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(135deg,var(--yv13-orange),var(--yv13-violet));font-size:11px;font-weight:950;color:#fff}.yv13-message.user .yv13-message-avatar{background:linear-gradient(135deg,#3478e8,#18a5cb)}
.yv13-message-body{min-width:0;padding:13px 15px;border:1px solid var(--yv13-border);border-radius:17px 17px 17px 5px;background:linear-gradient(145deg,#0b182a,#091423);box-shadow:0 12px 32px rgba(0,0,0,.14)}.yv13-message.user .yv13-message-body{border-radius:17px 17px 5px 17px;background:linear-gradient(135deg,rgba(58,111,218,.38),rgba(77,64,187,.32));border-color:rgba(116,151,232,.27)}
.yv13-message-meta{display:flex;align-items:center;gap:8px;margin-bottom:6px;color:#71839d;font-size:9px}.yv13-message-meta strong{color:#b9c7d9;font-size:10px}.yv13-message.user .yv13-message-meta{justify-content:flex-end}.yv13-message-content{color:#e0e8f4;font-size:13px;line-height:1.68;white-space:pre-wrap;word-break:break-word}.yv13-message-content p{margin:0}.yv13-message-content code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:rgba(255,255,255,.06);padding:2px 5px;border-radius:5px}.yv13-message.pending{opacity:.78}.yv13-message.pending .yv13-message-content:after{content:"";display:inline-block;width:7px;height:7px;margin-left:7px;border-radius:50%;background:var(--yv13-cyan);box-shadow:12px 0 var(--yv13-violet),24px 0 var(--yv13-orange);animation:yv13Pulse 1.1s infinite alternate}
@keyframes yv13Pulse{to{opacity:.25;transform:translateY(-2px)}}
.yv13-chat-alert{align-self:center;max-width:680px;padding:10px 13px;border:1px solid rgba(255,201,91,.18);border-radius:12px;background:rgba(255,201,91,.055);color:#b5a174;font-size:10px;text-align:center}

.yv13-compose-wrap{border-top:1px solid var(--yv13-border);background:rgba(5,12,23,.96);padding:12px clamp(16px,5vw,84px) calc(12px + env(safe-area-inset-bottom));backdrop-filter:blur(18px)}
.yv13-chat-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end}.yv13-compose-input{position:relative}.yv13-chat-compose textarea{display:block;width:100%;min-height:52px;max-height:180px;resize:none;padding:14px 15px 22px;border-radius:16px!important;background:#091629!important}.yv13-compose-input small{position:absolute;left:15px;bottom:6px;color:#526782;font-size:8px;pointer-events:none}.yv13-chat-compose>button{min-width:108px;height:52px;border-radius:15px!important;background:linear-gradient(135deg,var(--yv13-orange),#ef526a 56%,var(--yv13-violet))!important;color:#fff!important;box-shadow:0 12px 28px rgba(230,91,72,.22)!important}.yv13-chat-compose>button:disabled{opacity:.55}

.yv13-chat-side{min-height:0;overflow:auto;overscroll-behavior:contain;padding:18px 15px;background:linear-gradient(180deg,#091524,#07111e)}
.yv13-side-card{margin-bottom:12px;padding:14px;border:1px solid var(--yv13-border);border-radius:16px;background:linear-gradient(145deg,#0b182a,#091421)}.yv13-side-card>small{display:block;color:#637792;font-size:8px;font-weight:900;letter-spacing:.14em;margin-bottom:10px}.yv13-side-status{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.yv13-side-status strong{color:#fff;font-size:12px}.yv13-side-status span{color:var(--yv13-green);font-size:9px}.yv13-mini-kpis{display:grid;grid-template-columns:1fr 1fr;gap:7px}.yv13-mini-kpis article{padding:9px;border:1px solid rgba(139,174,221,.09);border-radius:11px;background:rgba(6,14,26,.55)}.yv13-mini-kpis small{display:block;color:#657995;font-size:8px}.yv13-mini-kpis strong{display:block;color:#e7eef8;margin-top:3px;font-size:13px}
.yv13-prompts{display:grid;gap:7px}.yv13-prompts button{width:100%;min-height:43px;text-align:left!important;padding:9px 11px!important;border-radius:11px!important;background:#0b182a!important;border:1px solid var(--yv13-border)!important;color:#b6c4d7!important;box-shadow:none!important;font-size:9px!important;line-height:1.45!important}.yv13-prompts button:hover{border-color:rgba(24,215,233,.34)!important;color:#fff!important}
.yv13-session-list{display:grid;gap:6px}.yv13-session-list a{display:grid;gap:3px;padding:9px 10px;border:1px solid transparent;border-radius:10px;text-decoration:none;color:#9aacbf;background:rgba(7,16,29,.45)}.yv13-session-list a:hover,.yv13-session-list a.active{border-color:var(--yv13-border);background:#0c192b;color:#fff}.yv13-session-list strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.yv13-session-list small{color:#5e728d;font-size:8px}.yv13-policy-list{list-style:none;margin:0;padding:0;display:grid;gap:7px}.yv13-policy-list li{display:flex;gap:7px;color:#7f91a8;font-size:9px;line-height:1.45}.yv13-policy-list i{font-style:normal;color:var(--yv13-green)}

/* desktop and medium screens */
@media(max-width:1320px){.yv13-chat-shell{grid-template-columns:minmax(0,1fr) 275px}.yv13-chat-stream{padding-left:34px;padding-right:34px}.yv13-compose-wrap{padding-left:34px;padding-right:34px}}
@media(max-width:1120px){
  body.admin-shell.page-yavuz{overflow:auto}
  body.admin-shell.page-yavuz .main{height:auto;min-height:100dvh;overflow:visible;padding-bottom:82px!important}
  .yv13-chat-shell{min-height:calc(100svh - 170px);grid-template-columns:1fr;border-radius:22px}
  .yv13-chat-main{border-right:0;min-height:calc(100svh - 170px)}
  .yv13-chat-side{display:none}
}

/* iOS/PWA: menu is always reachable and chat never traps the viewport. */
@media(max-width:720px){
  :root{--yv13-mobile-header:calc(62px + env(safe-area-inset-top))}
  body.admin-shell{padding-top:0!important}
  body.admin-shell.page-yavuz .main{padding:var(--yv13-mobile-header) 7px calc(78px + env(safe-area-inset-bottom))!important;min-height:100svh!important}
  .mobile-top{top:0!important;height:var(--yv13-mobile-header)!important;padding:calc(8px + env(safe-area-inset-top)) 11px 8px!important;z-index:80!important;background:rgba(5,13,24,.96)!important;border-bottom-color:var(--yv13-border)!important}
  .mobile-top .icon-button{display:grid!important;place-items:center!important;flex:0 0 42px!important;background:#0e1b2d!important;color:#fff!important;border-color:var(--yv13-border)!important}
  .shell-overlay.open{z-index:88!important;inset:0!important;background:rgba(2,7,14,.68)!important;backdrop-filter:blur(3px)}
  .sidebar{z-index:90!important;top:0!important;width:min(88vw,330px)!important;padding-top:calc(12px + env(safe-area-inset-top))!important;padding-bottom:calc(22px + env(safe-area-inset-bottom))!important}
  .v1000-mobile-dock{z-index:70!important;padding-bottom:env(safe-area-inset-bottom)!important}
  .topbar{display:none!important}
  .yv13-chat-shell{border-radius:18px;min-height:calc(100svh - var(--yv13-mobile-header) - 84px);overflow:visible}
  .yv13-chat-main{min-height:calc(100svh - var(--yv13-mobile-header) - 84px);display:flex;flex-direction:column;overflow:visible}
  .yv13-chat-header{position:sticky;top:var(--yv13-mobile-header);z-index:15;padding:11px 12px;border-radius:18px 18px 0 0}.yv13-chat-avatar{width:35px;height:35px;flex-basis:35px;border-radius:11px}.yv13-chat-title h2{font-size:16px}.yv13-chat-title p{display:none}.yv13-chat-title small{font-size:7px}.yv13-engine-badge{display:none}.yv13-new-chat{height:35px;padding:0 9px;font-size:9px}
  .yv13-chat-stream{flex:1 1 auto;min-height:52svh;overflow:visible;padding:16px 9px 18px;gap:13px}.yv13-message{max-width:95%;gap:7px}.yv13-message-avatar{width:27px;height:27px;flex-basis:27px}.yv13-message-body{padding:11px 12px}.yv13-message-content{font-size:12px;line-height:1.62}.yv13-chat-empty{margin:28px auto;padding:25px 18px}
  .yv13-compose-wrap{position:sticky;bottom:calc(76px + env(safe-area-inset-bottom));z-index:25;padding:8px 7px calc(8px + env(safe-area-inset-bottom));border-radius:0 0 18px 18px;background:rgba(4,11,20,.97)}
  .yv13-chat-compose{grid-template-columns:minmax(0,1fr) 62px;gap:6px}.yv13-chat-compose textarea{min-height:48px;padding:11px 11px 20px;font-size:16px!important}.yv13-chat-compose>button{min-width:0;height:48px;padding:0 7px!important;font-size:0!important}.yv13-chat-compose>button:after{content:"➤";font-size:18px}.yv13-compose-input small{left:11px;font-size:7px}
  .table{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
}
@media(max-width:390px){.yv13-message-avatar{display:none}.yv13-message{max-width:98%}.yv13-chat-title h2{max-width:190px}.yv13-new-chat{font-size:0}.yv13-new-chat:after{content:"＋";font-size:17px}}
