.ap-login-overlay{position:fixed;inset:0;z-index:1000;background:var(--cream,#faf8f5);display:flex;align-items:center;justify-content:center;padding:20px;font-family:'Manrope',sans-serif;}
.ap-login-card{width:100%;max-width:380px;background:#fff;border:1px solid var(--border,#e8e2d9);border-radius:20px;box-shadow:0 12px 40px rgba(30,58,95,.12);padding:36px 32px;}
.ap-login-brand{text-align:center;margin-bottom:26px;}
.ap-login-brand-name{font-family:'Playfair Display',serif;font-size:26px;font-weight:700;color:var(--navy,#1e3a5f);}
.ap-login-brand-name b{color:var(--gold,#D2B68A);}
.ap-login-brand-sub{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted,#8a8078);margin-top:4px;}
.ap-login-title{font-family:'Playfair Display',serif;font-size:19px;font-weight:700;color:var(--navy,#1e3a5f);margin-bottom:6px;text-align:center;}
.ap-login-sub{font-size:13px;color:var(--muted,#8a8078);text-align:center;margin-bottom:24px;line-height:1.5;}
.ap-login-field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;}
.ap-login-field label{font-size:12.5px;font-weight:600;color:#2d3748;}
.ap-login-field input{width:100%;padding:11px 14px;border:1.5px solid var(--border,#e8e2d9);border-radius:12px;font-size:14px;font-family:'Manrope',sans-serif;background:var(--cream,#faf8f5);color:#1a1a2e;transition:border-color .2s,box-shadow .2s;}
.ap-login-field input:focus{outline:none;border-color:var(--navy2,#24476C);box-shadow:0 0 0 3px rgba(36,71,108,.1);background:#fff;}
.ap-login-btn{width:100%;padding:13px;border:none;border-radius:12px;background:var(--navy,#1e3a5f);color:var(--gold,#D2B68A);font-size:14.5px;font-weight:700;font-family:'Manrope',sans-serif;cursor:pointer;transition:all .2s;margin-top:6px;}
.ap-login-btn:hover:not(:disabled){background:var(--navy-deep,#16304f);}
.ap-login-btn:disabled{opacity:.6;cursor:not-allowed;}
.ap-login-error{min-height:18px;margin-top:14px;font-size:12.5px;color:#c0392b;text-align:center;line-height:1.5;}
.ap-login-error-link{display:inline-block;margin-left:4px;color:var(--navy2,#24476C);font-weight:700;text-decoration:underline;}
.ap-login-error-link:hover{color:var(--navy,#1e3a5f);}
.ap-login-cta{display:block;width:100%;margin-top:12px;padding:13px;border-radius:12px;background:var(--gold,#D2B68A);color:var(--navy,#1e3a5f);font-size:14.5px;font-weight:700;text-align:center;text-decoration:none;transition:all .2s;}
.ap-login-cta:hover{background:var(--gold-soft,#e3cda8);}
.ap-login-forgot{text-align:center;margin-top:14px;}
.ap-login-forgot a{font-size:12px;color:var(--muted,#8a8078);text-decoration:none;border-bottom:1px dotted rgba(138,128,120,.5);cursor:pointer;transition:color .2s;}
.ap-login-forgot a:hover{color:var(--navy2,#24476C);border-bottom-color:var(--navy2,#24476C);}
.ap-login-message{min-height:18px;margin-top:14px;font-size:12.5px;color:var(--navy2,#24476C);text-align:center;line-height:1.5;}
.ap-login-message.error{color:#c0392b;}
.ap-login-hidden{display:none;}
#apRoot{display:none;}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
  --navy:#1e3a5f; --navy-deep:#16304f; --navy2:#24476C;
  --gold:#D2B68A; --gold-soft:#e3cda8;
  --cream:#faf8f5; --paper:#ffffff;
  --border:#e8e2d9; --border-soft:#f0ece4;
  --ink:#1a2233; --muted:#8a8078; --muted2:#a89f94;
  --ok:#2d6a4f;
  --r:14px; --r-lg:20px;
  --shadow:0 4px 24px rgba(30,58,95,.07);
  --shadow-lg:0 12px 40px rgba(30,58,95,.10);
}
.ap-root{font-family:'Manrope',sans-serif;color:var(--ink);background:var(--cream);min-height:100vh;min-height:100dvh;display:flex;line-height:1.5;}


.ap-sidebar{width:260px;flex-shrink:0;background:var(--navy);min-height:100vh;display:flex;flex-direction:column;padding:24px 16px;position:sticky;top:0;height:100vh;height:100dvh;overflow-y:auto;overflow-x:hidden;}
.ap-sidebar-resizer{position:absolute;top:0;right:-3px;width:6px;height:100%;cursor:col-resize;z-index:5;background:transparent;}
.ap-sidebar-resizer:hover,.ap-sidebar-resizer.dragging{background:rgba(210,182,138,.3);}
@media(max-width:860px){.ap-sidebar-resizer{display:none;}}
.ap-brand{display:flex;align-items:center;gap:11px;padding:10px 10px 24px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:18px;}
.ap-brand-mark{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--gold),var(--gold-soft));display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.ap-brand-mark span{font-family:'Playfair Display',serif;font-weight:700;font-size:20px;color:var(--navy);}
.ap-brand-name{font-family:'Playfair Display',serif;font-size:27px;font-weight:700;color:#fff;letter-spacing:.01em;line-height:1.05;}
.ap-brand-name b{color:var(--gold);font-weight:700;}
.ap-brand-sub{font-size:11px;color:rgba(210,182,138,.65);letter-spacing:.18em;text-transform:uppercase;margin-top:4px;}

.ap-nav{display:flex;flex-direction:column;gap:3px;flex:1;}
.ap-nav-label{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.32);padding:6px 12px;margin-top:6px;}
.ap-nav-item{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:11px;cursor:pointer;color:rgba(255,255,255,.72);font-size:14px;font-weight:500;transition:all .18s;border:none;background:transparent;width:100%;text-align:left;font-family:inherit;position:relative;}
.ap-nav-item:hover{background:rgba(255,255,255,.06);color:#fff;}
.ap-nav-item.active{background:rgba(210,182,138,.14);color:var(--gold);font-weight:600;}
.ap-nav-item.active::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:20px;background:var(--gold);border-radius:0 3px 3px 0;}
.ap-nav-icon{width:20px;height:20px;flex-shrink:0;stroke:currentColor;stroke-width:1.7;fill:none;}
.ap-nav-soon{margin-left:auto;font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--navy);background:var(--gold);padding:2px 7px;border-radius:6px;}

.ap-history{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;min-height:0;}
.ap-history.hidden{display:none;}
.ap-history-list{display:flex;flex-direction:column;gap:2px;margin-top:6px;overflow-y:auto;max-height:240px;scrollbar-width:thin;scrollbar-color:rgba(210,182,138,.4) transparent;}
.ap-history-list::-webkit-scrollbar{width:6px;}
.ap-history-list::-webkit-scrollbar-track{background:transparent;}
.ap-history-list::-webkit-scrollbar-thumb{background:rgba(210,182,138,.4);border-radius:10px;}
.ap-history-list::-webkit-scrollbar-thumb:hover{background:rgba(210,182,138,.65);}
.ap-history-item{display:flex;align-items:flex-start;justify-content:space-between;gap:6px;padding:8px 8px 8px 12px;border-radius:9px;cursor:pointer;background:transparent;border:none;text-align:left;width:100%;font-family:inherit;transition:all .18s;}
.ap-history-item:hover{background:rgba(255,255,255,.06);}
.ap-history-item.active{background:rgba(210,182,138,.14);}
.ap-history-item-main{min-width:0;flex:1;}
.ap-history-title{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12.5px;font-weight:500;color:rgba(255,255,255,.7);line-height:1.35;}
.ap-history-item:hover .ap-history-title,.ap-history-item.active .ap-history-title{color:#fff;}
.ap-history-item.active .ap-history-title{color:var(--gold);}
.ap-history-date{display:block;font-size:10px;color:rgba(255,255,255,.32);margin-top:2px;}
.ap-history-delete{flex-shrink:0;width:22px;height:22px;margin-top:1px;border-radius:6px;border:none;background:transparent;color:rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:all .15s;padding:0;}
.ap-history-item:hover .ap-history-delete,.ap-history-delete:focus{opacity:1;}
.ap-history-delete:hover{background:rgba(255,255,255,.12);color:var(--gold);}
.ap-history-delete svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.8;fill:none;}
.ap-confirm-overlay{display:none;position:fixed;inset:0;z-index:3000;background:rgba(20,35,55,.55);align-items:center;justify-content:center;padding:20px;}
.ap-confirm-overlay.show{display:flex;}
.ap-confirm-card{background:#fff;border-radius:16px;max-width:320px;width:100%;padding:24px 22px;box-shadow:0 20px 60px rgba(20,35,55,.35);font-family:'Manrope',sans-serif;}
.ap-confirm-title{font-size:15px;font-weight:700;color:var(--navy);margin-bottom:6px;}
.ap-confirm-text{font-size:13px;color:var(--muted);line-height:1.5;margin-bottom:18px;}
.ap-confirm-actions{display:flex;gap:10px;}
.ap-confirm-cancel{flex:1;padding:10px;border-radius:10px;border:1.5px solid var(--border);background:var(--cream);color:var(--navy2);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .18s;}
.ap-confirm-cancel:hover{border-color:var(--navy2);background:rgba(210,182,138,.15);}
.ap-confirm-delete{flex:1;padding:10px;border-radius:10px;border:none;background:var(--navy);color:var(--gold);font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;transition:all .18s;}
.ap-confirm-delete:hover:not(:disabled){background:var(--navy-deep);}
.ap-confirm-delete:disabled{opacity:.6;cursor:not-allowed;}
.ap-history-empty{padding:6px 12px;font-size:11.5px;color:rgba(255,255,255,.3);line-height:1.4;}
.ap-newchat-btn{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:10px 12px;margin-bottom:8px;border-radius:11px;background:rgba(210,182,138,.12);border:1px solid rgba(210,182,138,.3);color:var(--gold);font-size:12.5px;font-weight:700;font-family:'Manrope',sans-serif;cursor:pointer;transition:all .18s;}
.ap-newchat-btn:hover{background:rgba(210,182,138,.2);}
.ap-newchat-btn.hidden{display:none;}
.ap-newchat-btn svg{width:14px;height:14px;stroke:currentColor;stroke-width:2.2;fill:none;}
.app .ap-hist-query,.apc .ap-hist-query{margin:0 0 34px;padding-bottom:18px;border-bottom:1px solid var(--border);}
.app .ap-hist-query-label,.apc .ap-hist-query-label{display:block;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:5px;}
.app .ap-hist-query-text,.apc .ap-hist-query-text{display:block;font-size:13.5px;line-height:1.55;color:var(--muted);}

.ap-sub-card{margin-top:14px;padding:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:13px;text-align:center;}
.ap-sub-status{display:flex;align-items:center;justify-content:center;gap:7px;font-size:12px;font-weight:600;color:var(--gold);margin-bottom:4px;}
.ap-sub-dot{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px rgba(45,106,79,.25);flex-shrink:0;}
.ap-sub-meta{font-size:11px;color:rgba(255,255,255,.5);line-height:1.5;}
.ap-sub-meta b{color:rgba(255,255,255,.8);font-weight:600;}
.ap-support{margin-top:10px;padding:12px 14px;border-radius:11px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);text-align:center;}
.ap-support-label{font-size:11px;font-weight:600;color:rgba(255,255,255,.5);letter-spacing:.04em;text-transform:uppercase;margin-bottom:3px;}
.ap-support-mail{font-size:13px;font-weight:600;color:var(--gold);user-select:all;}
.ap-logout-btn{margin-top:10px;width:100%;padding:10px 14px;border-radius:11px;background:transparent;border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.65);font-size:12.5px;font-weight:600;font-family:'Manrope',sans-serif;cursor:pointer;transition:all .18s;}
.ap-logout-btn:hover{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(255,255,255,.25);}


.ap-main{flex:1;min-width:0;display:flex;flex-direction:column;height:100vh;height:100dvh;}
.ap-topbar{display:flex;align-items:center;justify-content:flex-start;padding:18px 32px;border-bottom:1px solid var(--border);background:rgba(255,255,255,.6);backdrop-filter:blur(8px);position:sticky;top:0;z-index:20;}
.ap-greet{display:flex;flex-direction:column;gap:2px;}
.ap-greet-hi{font-family:'Playfair Display',serif;font-size:21px;font-weight:700;color:var(--navy);line-height:1.15;}
.ap-greet-q{font-size:13px;color:var(--muted);}
.ap-user-ava{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--navy2),var(--navy));color:var(--gold);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;font-family:'Playfair Display',serif;flex-shrink:0;}

.ap-content{flex:1;padding:32px;width:100%;min-height:0;overflow-y:auto;}
.ap-content:has(.ap-panel[data-panel="chat"].active),.ap-content:has(.ap-panel[data-panel="practice"].active){padding-bottom:16px;}
.ap-content:has(.ap-panel[data-panel="chat"].active),.ap-content:has(.ap-panel[data-panel="practice"].active){overflow-y:hidden;}
.ap-content:has(.ap-panel[data-panel="chat"].active),.ap-content:has(.ap-panel[data-panel="practice"].active){padding-right:0;}
@media(max-width:560px){.ap-content:has(.ap-panel[data-panel="chat"].active),.ap-content:has(.ap-panel[data-panel="practice"].active){padding-left:0;}}
.ap-panel{display:none;animation:apFade .35s ease;}
.ap-panel.active{display:block;}
.ap-panel[data-panel="chat"].active{display:flex;flex-direction:column;height:100%;min-height:0;}
.ap-panel[data-panel="practice"].active{display:flex;flex-direction:column;height:100%;min-height:0;}
.ap-panel[data-panel="generator"].active{display:flex;flex-direction:column;min-height:100%;}
.ap-panel[data-panel="chat"].active #mount-chat{flex:1;min-height:0;display:flex;flex-direction:column;}
.ap-panel[data-panel="practice"].active #mount-practice{flex:1;min-height:0;display:flex;flex-direction:column;}
.ap-panel[data-panel="generator"].active #mount-generator{flex:1;display:flex;flex-direction:column;justify-content:flex-start;}
.ap-content{scrollbar-width:thin;scrollbar-color:rgba(30,58,95,.35) transparent;}
.ap-content::-webkit-scrollbar{width:9px;}
.ap-content::-webkit-scrollbar-track{background:transparent;}
.ap-content::-webkit-scrollbar-thumb{background:rgba(30,58,95,.28);border-radius:10px;border:2px solid transparent;background-clip:padding-box;}
.ap-content::-webkit-scrollbar-thumb:hover{background:rgba(210,182,138,.55);background-clip:padding-box;}
@keyframes apFade{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}


.ap-mount{background:var(--paper);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);min-height:440px;display:flex;align-items:center;justify-content:center;padding:40px;}
.ap-mount-hint{text-align:center;max-width:380px;}
.ap-mount-hint .ic{width:52px;height:52px;margin:0 auto 16px;border-radius:14px;background:var(--cream);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;}
.ap-mount-hint .ic svg{width:26px;height:26px;stroke:var(--navy2);stroke-width:1.6;fill:none;}
.ap-mount-hint h3{font-family:'Playfair Display',serif;font-size:18px;color:var(--navy);margin-bottom:7px;}
.ap-mount-hint p{font-size:13px;color:var(--muted);line-height:1.65;}
.ap-mount-hint code{background:var(--cream);border:1px solid var(--border);border-radius:6px;padding:2px 7px;font-size:12px;color:var(--navy2);font-family:ui-monospace,monospace;}

.ap-panel-head{margin-bottom:22px;position:relative;}
.ap-newquery-btn{position:absolute;top:0;right:0;display:inline-flex;align-items:center;gap:6px;padding:9px 15px;border-radius:11px;background:var(--navy);color:var(--gold);border:none;font-size:12.5px;font-weight:700;font-family:'Manrope',sans-serif;cursor:pointer;transition:all .18s;box-shadow:0 2px 10px rgba(30,58,95,.12);}
.ap-newquery-btn:hover{background:var(--navy-deep);transform:translateY(-1px);}
.ap-newquery-btn svg{width:14px;height:14px;stroke:currentColor;stroke-width:2.2;fill:none;}
.ap-panel-title{font-family:'Playfair Display',serif;font-size:25px;font-weight:700;color:var(--navy);margin-bottom:5px;}
.ap-panel-desc{font-size:14px;color:var(--muted);line-height:1.6;max-width:600px;}

.ap-tool-head{display:flex;align-items:flex-start;gap:16px;width:100%;margin-bottom:26px;padding:22px 32px;background:rgba(255,255,255,.55);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);}
.ap-tool-head-ic{width:44px;height:44px;border-radius:13px;background:var(--navy);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 14px rgba(30,58,95,.18);margin-top:1px;}
.ap-tool-head-ic svg{width:22px;height:22px;stroke:var(--gold);stroke-width:1.7;fill:none;}
.ap-tool-head .ap-panel-title{font-size:19px;font-weight:700;margin-bottom:5px;letter-spacing:.01em;}
.ap-tool-head .ap-panel-desc{display:block;font-size:13px;color:var(--muted);line-height:1.6;max-width:640px;}

.ap-soon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-top:8px;}
.ap-soon-card{background:var(--paper);border:1px solid var(--border);border-radius:var(--r);padding:22px;position:relative;overflow:hidden;}
.ap-soon-card .ic{width:42px;height:42px;border-radius:11px;background:var(--cream);display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.ap-soon-card .ic svg{width:22px;height:22px;stroke:var(--navy2);stroke-width:1.6;fill:none;}
.ap-soon-card h4{font-size:15px;font-weight:700;color:var(--navy);margin-bottom:6px;}
.ap-soon-card p{font-size:12.5px;color:var(--muted);line-height:1.6;}
.ap-soon-badge{position:absolute;top:14px;right:14px;font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--navy);background:var(--gold);padding:3px 9px;border-radius:7px;}

.ap-soon-hero{background:linear-gradient(135deg,var(--navy),var(--navy-deep));border-radius:var(--r-lg);padding:34px;color:#fff;margin-bottom:22px;position:relative;overflow:hidden;}
.ap-soon-hero::after{content:'';position:absolute;right:-40px;top:-40px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(210,182,138,.18),transparent 70%);}
.ap-soon-hero h2{font-family:'Playfair Display',serif;font-size:23px;color:var(--gold);margin-bottom:8px;position:relative;}
.ap-soon-hero p{font-size:14px;color:rgba(255,255,255,.78);line-height:1.65;max-width:520px;position:relative;}
.ap-burger{display:none;width:40px;height:40px;border-radius:10px;border:1px solid var(--border);background:#fff;cursor:pointer;align-items:center;justify-content:center;}
.ap-burger svg{width:22px;height:22px;stroke:var(--navy);stroke-width:1.8;fill:none;}
.ap-overlay{display:none;position:fixed;inset:0;background:rgba(20,35,55,.4);z-index:40;}
@media(max-width:860px){
  .ap-sidebar{position:fixed;left:0;top:0;z-index:50;transform:translateX(-100%);transition:transform .25s;}
  .ap-sidebar.open{transform:translateX(0);}
  .ap-overlay.show{display:block;}
  .ap-burger{display:flex;}
}
.apc *,.apc *::before,.apc *::after{box-sizing:border-box;margin:0;padding:0;}
.apc{--navy:#1e3a5f;--navy-deep:#16304f;--navy2:#24476C;--gold:#D2B68A;--cream:#faf8f5;--paper:#fff;--border:#e8e2d9;--muted:#8a8078;--ink:#1a2233;font-family:'Manrope',sans-serif;width:100%;flex:1;min-height:0;display:flex;flex-direction:column;background:transparent;}
.apc-scroll{flex:1;min-height:0;overflow-y:auto;width:100%;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:rgba(30,58,95,.35) transparent;}
.apc-scroll::-webkit-scrollbar{width:9px;}
.apc-scroll::-webkit-scrollbar-track{background:transparent;}
.apc-scroll::-webkit-scrollbar-thumb{background:rgba(30,58,95,.28);border-radius:10px;border:2px solid transparent;background-clip:padding-box;}
.apc-scroll::-webkit-scrollbar-thumb:hover{background:rgba(210,182,138,.55);background-clip:padding-box;}
.apc-window{width:100%;max-width:860px;margin:0 auto;padding:24px 56px 24px 24px;flex:1;display:flex;flex-direction:column;}
.apc-window:has(.apc-empty){justify-content:center;align-items:center;}
.apc-footer{flex-shrink:0;background:var(--cream);position:relative;}
.apc-footer::before{content:'';position:absolute;left:0;right:9px;bottom:100%;height:40px;background:linear-gradient(to bottom,rgba(250,248,245,0) 0%,rgba(250,248,245,.85) 65%,rgba(250,248,245,1) 100%);pointer-events:none;}
.apc-empty{min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted);padding:20px;}
.apc-empty-ic{width:60px;height:60px;border-radius:18px;background:var(--cream);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;margin-bottom:18px;box-shadow:0 4px 18px rgba(30,58,95,.06);}
.apc-empty-ic svg{width:28px;height:28px;stroke:var(--navy2);stroke-width:1.6;fill:none;}
.apc-empty h4{font-family:'Playfair Display',serif;font-size:19px;color:var(--navy);margin-bottom:7px;}
.apc-empty p{font-size:13.5px;line-height:1.65;max-width:360px;margin-bottom:24px;}
.apc-sugg{display:flex;flex-direction:column;gap:10px;width:100%;max-width:420px;}
.apc-sugg button{width:100%;text-align:left;padding:13px 18px;border-radius:14px;border:1px solid var(--border);background:var(--paper);font-size:13.5px;font-weight:500;color:var(--navy2);cursor:pointer;transition:all .2s;font-family:inherit;box-shadow:0 2px 10px rgba(30,58,95,.05);}
.apc-sugg button:hover{border-color:var(--navy2);background:rgba(210,182,138,.08);box-shadow:0 4px 16px rgba(30,58,95,.09);transform:translateY(-1px);}
.apc-msg{display:flex;gap:10px;margin-bottom:24px;}
.apc-msg.user{flex-direction:row-reverse;}
.apc-ava{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;font-family:'Playfair Display',serif;}
.apc-msg.ai .apc-ava{background:var(--navy);color:var(--gold);}
.apc-msg.user .apc-ava{background:var(--cream);color:var(--navy2);border:1px solid var(--border);}
.apc-bubble{padding:16px 20px;border-radius:16px;max-width:78%;font-size:14.5px;line-height:1.65;word-break:break-word;}
.apc-msg.user .apc-bubble{background:var(--navy);color:#fff;border-radius:16px 16px 4px 16px;}
.apc-msg.ai .apc-bubble{background:var(--cream);border:1px solid var(--border);color:var(--ink);border-radius:16px 16px 16px 4px;max-width:min(780px,100%);}
.apc-line{margin:7px 0;}
.apc-line:first-child{margin-top:0;}
.apc-lead{font-weight:600;color:var(--navy);}
.apc-norms{margin-top:16px;padding-top:14px;border-top:1px solid var(--border);}
.apc-norms-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:10px;display:flex;align-items:center;gap:6px;}
.apc-norms-title::before{content:'⚖';font-size:13px;}
.apc-norm{display:flex;gap:9px;align-items:flex-start;padding:9px 12px;background:var(--paper);border:1px solid var(--border);border-radius:10px;margin-bottom:7px;text-decoration:none;transition:all .18s;}
.apc-norm:hover{border-color:var(--navy2);background:rgba(210,182,138,.1);transform:translateX(2px);}
.apc-norm-num{flex-shrink:0;width:20px;height:20px;border-radius:6px;background:var(--navy);color:var(--gold);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-top:1px;}
.apc-norm-text{flex:1;font-size:13px;line-height:1.45;color:var(--navy2);font-weight:600;}
.apc-norm-arrow{flex-shrink:0;color:var(--muted);font-size:13px;margin-top:1px;}
.apc-disclaimer{font-size:11px;color:var(--muted);margin-top:12px;font-style:italic;line-height:1.5;}
.apc-row{width:100%;max-width:860px;margin:0 auto;padding:12px 56px 4px 24px;flex-shrink:0;}
.apc-inputbar{position:relative;display:flex;align-items:flex-end;background:var(--paper);border-radius:20px;box-shadow:0 6px 24px rgba(30,58,95,.08),0 1px 4px rgba(30,58,95,.05);padding:12px 54px 12px 20px;transition:box-shadow .2s;}
.apc-inputbar:focus-within{box-shadow:0 8px 30px rgba(30,58,95,.12),0 0 0 3px rgba(36,71,108,.08);}
.apc-input{flex:1;min-height:24px;max-height:220px;resize:none;padding:6px 0;border:none;font-family:inherit;font-size:14.5px;background:transparent;overflow-y:auto;color:var(--ink);outline:none;}
.apc-input::placeholder{color:var(--muted);opacity:.85;}
.apc-send{position:absolute;right:8px;bottom:8px;width:38px;height:38px;padding:0;border:none;border-radius:50%;background:var(--navy);color:#fff;cursor:pointer;font-family:inherit;transition:all .2s;flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.apc-send svg{width:17px;height:17px;}
.apc-send:hover:not(:disabled){background:var(--navy-deep);}
.apc-send:disabled{opacity:.5;cursor:not-allowed;}
.apc-hint{width:100%;max-width:860px;margin:0 auto;font-size:11.5px;color:var(--muted);line-height:1.5;text-align:center;padding:4px 56px 14px 24px;flex-shrink:0;}
.apc-loading-msg{display:flex;align-items:center;gap:10px;}
.apc-loading-dot{width:9px;height:9px;border-radius:50%;background:var(--navy2);flex-shrink:0;animation:apcBlink 1.2s ease-in-out infinite;}
.apc-loading-text{font-size:14px;color:var(--muted);font-weight:500;transition:opacity .2s ease;}
@keyframes apcBlink{0%,100%{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}
@media(max-width:560px){.apc-window{padding:16px;}.apc-row,.apc-hint{padding-left:16px;padding-right:16px;}.apc-row{padding-top:10px;padding-bottom:4px;}.apc-ava{display:none;}}
.lwg *,.lwg *::before,.lwg *::after{box-sizing:border-box;margin:0;padding:0;}
.lwg{--navy:#1e3a5f;--navy2:#24476C;--gold2:#D2B68A;--cream:#faf8f5;--border:#e8e2d9;--muted:#8a8078;--success:#2d6a4f;--danger:#c0392b;--radius:16px;--shadow:0 4px 24px rgba(30,58,95,.08);font-family:'Manrope',sans-serif;width:100%;max-width:620px;margin:0 auto;}
.lwg .lwg-progress{display:flex;align-items:flex-start;max-width:520px;margin-left:auto;margin-right:auto;margin-bottom:28px;padding:0 4px;}
.lwg .lwg-step-col{display:flex;flex-direction:column;align-items:center;min-width:60px;}
.lwg .lwg-dot{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;border:2px solid var(--border);background:#fff;color:var(--muted);transition:all .35s cubic-bezier(.4,0,.2,1);}
.lwg .lwg-dot.active{background:var(--navy);border-color:var(--navy);color:var(--gold2);box-shadow:0 0 0 4px rgba(30,58,95,.12);}
.lwg .lwg-dot.done{background:var(--success);border-color:var(--success);color:#fff;}
.lwg .lwg-step-label{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;margin-top:6px;color:var(--muted);text-align:center;transition:color .3s;}
.lwg .lwg-step-label.active{color:var(--navy);}
.lwg .lwg-line{flex:1;height:2px;background:var(--border);margin-top:14px;transition:background .4s;border-radius:2px;}
.lwg .lwg-line.done{background:var(--success);}
.lwg .lwg-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:26px 22px;box-shadow:var(--shadow);}
.lwg .lwg-screen{display:none;animation:lwgFade .3s ease;}
.lwg .lwg-screen.active{display:block;}
@keyframes lwgFade{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}
.lwg .lwg-title{font-family:'Playfair Display',serif;font-size:21px;font-weight:700;color:var(--navy);margin-bottom:6px;line-height:1.3;}
.lwg .lwg-sub{font-size:14px;color:var(--muted);margin-bottom:20px;line-height:1.6;}
.lwg .lwg-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;}
.lwg .lwg-chip{padding:8px 15px;border-radius:999px;border:1.5px solid var(--border);background:var(--cream);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;font-family:'Manrope',sans-serif;color:#2d3748;}
.lwg .lwg-chip:hover{border-color:var(--navy2);color:var(--navy2);background:rgba(210,182,138,.15);}
.lwg .lwg-chip.sel{background:var(--navy);border-color:var(--navy);color:var(--gold2);}
.lwg .lwg-textarea{width:100%;min-height:78px;padding:12px 14px;border:1.5px solid var(--border);border-radius:var(--radius);font-size:14px;font-family:'Manrope',sans-serif;resize:none;color:#1a1a2e;background:var(--cream);transition:border-color .2s,box-shadow .2s;margin-bottom:8px;}
.lwg .lwg-textarea:focus{outline:none;border-color:var(--navy2);box-shadow:0 0 0 3px rgba(36,71,108,.1);}
.lwg .lwg-textarea.error{border-color:var(--danger);}
.lwg .lwg-char-count{text-align:right;font-size:11px;color:var(--muted);margin-bottom:14px;}
.lwg .lwg-btn{width:100%;padding:14px;border:none;border-radius:var(--radius);background:var(--navy);color:var(--gold2);font-size:15px;font-weight:700;font-family:'Manrope',sans-serif;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px;}
.lwg .lwg-btn:hover:not(:disabled){background:#16304f;transform:translateY(-1px);box-shadow:0 6px 20px rgba(30,58,95,.25);}
.lwg .lwg-btn:active:not(:disabled){transform:translateY(0);}
.lwg .lwg-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none;}
.lwg .lwg-btn.loading .lwg-btn-text::after{content:'';display:inline-block;width:14px;height:14px;border:2px solid rgba(210,182,138,.4);border-top-color:var(--gold2);border-radius:50%;animation:lwgSpin .7s linear infinite;margin-left:10px;vertical-align:-3px;}
@keyframes lwgSpin{to{transform:rotate(360deg);}}
.lwg .lwg-btn-outline{width:100%;padding:13px;border:1.5px solid var(--border);border-radius:var(--radius);background:var(--cream);color:var(--navy2);font-size:14px;font-weight:600;font-family:'Manrope',sans-serif;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;}
.lwg .lwg-btn-outline:hover{border-color:var(--navy2);background:rgba(210,182,138,.15);}
.lwg .lwg-ai-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background:rgba(210,182,138,.15);color:var(--navy2);border-radius:999px;font-size:12px;font-weight:600;margin-bottom:16px;border:1px solid rgba(36,71,108,.15);}
.lwg .lwg-ai-badge::before{content:'✦';font-size:10px;}
.lwg .lwg-doc-badge{display:flex;gap:12px;align-items:center;padding:14px 16px;background:var(--cream);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:20px;}
.lwg .lwg-doc-icon{width:40px;height:40px;flex-shrink:0;background:var(--navy);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;}
.lwg .lwg-doc-name{font-size:15px;font-weight:700;color:var(--navy);margin-bottom:2px;}
.lwg .lwg-doc-meta{font-size:12px;color:var(--muted);}
.lwg .lwg-group-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--border);}
.lwg .lwg-field{display:flex;flex-direction:column;gap:5px;margin-bottom:18px;position:relative;}
.lwg .lwg-field label{font-size:13px;font-weight:600;color:#2d3748;}
.lwg .lwg-field label .req{color:var(--danger);}
.lwg .lwg-hint-trigger{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--navy2);color:#fff;font-size:11px;font-weight:700;cursor:pointer;margin-left:6px;flex-shrink:0;user-select:none;transition:background .15s;vertical-align:middle;}
.lwg .lwg-hint-trigger:hover{background:var(--navy);}
.lwg-hint-tooltip{display:none;position:fixed;z-index:9000;background:#1e3a5f;color:#f2ece0;border-radius:12px;padding:12px 14px;font-size:12px;line-height:1.6;box-shadow:0 8px 32px rgba(30,58,95,.35);width:280px;pointer-events:none;font-family:'Manrope',sans-serif;}
.lwg-hint-tooltip.visible{display:block;}
.lwg-hint-attach{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.15);font-size:11px;color:#D2B68A;}
.lwg-hint-attach::before{content:'📎 Приложите: ';}
.lwg .lwg-field input,.lwg .lwg-field textarea{padding:10px 13px;border:1.5px solid var(--border);border-radius:var(--radius);font-size:14px;font-family:'Manrope',sans-serif;background:#fff;color:#1a1a2e;transition:border-color .2s,box-shadow .2s;width:100%;min-width:0;}
.lwg .lwg-field textarea{min-height:84px;resize:vertical;}
.lwg .lwg-field input[type="date"]{-webkit-appearance:none;appearance:none;width:100%;}
.lwg .lwg-field input:focus,.lwg .lwg-field textarea:focus{outline:none;border-color:var(--navy2);box-shadow:0 0 0 3px rgba(36,71,108,.1);}
.lwg .lwg-field input.error,.lwg .lwg-field textarea.error{border-color:var(--danger);}
.lwg .lwg-skeleton{background:linear-gradient(90deg,#f0ece6 25%,#e8e2d8 50%,#f0ece6 75%);background-size:200% 100%;animation:lwgShimmer 1.5s infinite;border-radius:8px;}
@keyframes lwgShimmer{to{background-position:-200% 0;}}
.lwg .lwg-toast{display:none;background:#fff0ed;border:1px solid #fca99a;border-radius:var(--radius);padding:12px 16px;font-size:13px;color:var(--danger);margin-bottom:16px;line-height:1.5;align-items:flex-start;gap:8px;}
.lwg .lwg-toast.show{display:flex;}
.lwg .lwg-toast::before{content:'⚠';flex-shrink:0;}
.lwg .lwg-divider{margin:18px 0;}

.lwg .lwg-preview-wrap{background:#fff;border:1px solid var(--border);border-radius:18px;overflow:hidden;box-shadow:var(--shadow);margin-bottom:14px;}
.lwg .lwg-preview-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:var(--navy);color:var(--gold2);font-size:13px;font-weight:600;}
.lwg .lwg-preview-toolbar-left{display:flex;align-items:center;gap:8px;}
.lwg .lwg-preview-toolbar-left::before{content:'📄';font-size:16px;}
.lwg .lwg-preview-toolbar-right{font-size:11px;opacity:.7;}
.lwg .lwg-doc-scroll{padding:24px 32px;font-family:'Times New Roman',Times,serif;font-size:12px;line-height:1.5;color:#111;}
.lwg .lwg-doc-scroll .doc-requisites{text-align:right;margin-bottom:20px;font-size:11px;line-height:1.5;}
.lwg .lwg-doc-scroll h1{text-align:center;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;margin:0 0 14px;line-height:1.4;}
.lwg .lwg-doc-scroll h2{text-align:center;font-size:11px;font-weight:400;margin:0 0 14px;}
.lwg .lwg-doc-scroll .doc-center{text-align:center;margin-bottom:12px;font-size:11px;}
.lwg .lwg-doc-scroll p{margin-bottom:8px;text-align:justify;text-indent:1.25em;}
.lwg .lwg-doc-scroll .doc-center + p,.lwg .lwg-doc-scroll h1 + p{text-indent:0;}
.lwg .lwg-doc-scroll .doc-praying{text-align:center;font-weight:700;font-size:12px;margin:16px 0 10px;text-indent:0;letter-spacing:.03em;}
.lwg .lwg-doc-scroll .doc-sign{text-align:right;margin-top:24px;font-size:11px;line-height:1.8;}
.lwg .lwg-doc-scroll .doc-appendix{margin-top:16px;font-size:11px;line-height:1.5;border-top:1px solid #ccc;padding-top:10px;}
.lwg .lwg-doc-scroll strong{font-weight:700;}
.lwg .lwg-success-bar{display:flex;align-items:center;gap:10px;background:#eaf5ef;border:1px solid #b8dcc9;border-radius:var(--radius);padding:13px 16px;margin-bottom:14px;font-size:13px;color:var(--success);font-weight:600;}
.lwg .lwg-success-bar::before{content:'✓';display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--success);color:#fff;font-size:13px;flex-shrink:0;}
.lwg .lwg-btn-row{display:flex;flex-direction:column;gap:10px;}
.lwg{transition:max-width .4s cubic-bezier(.4,0,.2,1);}
.lwg:has(#lwg-screen-1.active){max-width:1040px;}
.lwg-layout{display:flex;align-items:stretch;gap:22px;}
.lwg-col-main{flex:1;min-width:0;}
.lwg-col-info{flex:0 0 340px;width:340px;opacity:1;overflow:hidden;transition:flex-basis .4s cubic-bezier(.4,0,.2,1),width .4s cubic-bezier(.4,0,.2,1),opacity .3s ease;}
.lwg-col-info .lwg-card{height:100%;}
.lwg:not(:has(#lwg-screen-1.active)) .lwg-layout{gap:0;}
.lwg:not(:has(#lwg-screen-1.active)) .lwg-col-info{flex-basis:0;width:0;opacity:0;pointer-events:none;}
.lwg-info-title{font-family:'Playfair Display',serif;font-size:17px;font-weight:700;color:var(--navy);margin-bottom:18px;}
.lwg-info-step{display:flex;gap:12px;margin-bottom:18px;}
.lwg-info-step:last-of-type{margin-bottom:20px;}
.lwg-info-ic{width:34px;height:34px;border-radius:10px;background:var(--cream);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.lwg-info-ic svg{width:16px;height:16px;stroke:var(--navy2);stroke-width:1.7;fill:none;}
.lwg-info-step-title{font-size:13.5px;font-weight:700;color:var(--navy);margin-bottom:3px;line-height:1.35;}
.lwg-info-step-desc{font-size:12.5px;color:var(--muted);line-height:1.55;}
.lwg-info-note{display:flex;gap:8px;align-items:flex-start;padding-top:16px;border-top:1px solid var(--border);font-size:11.5px;color:var(--muted);line-height:1.55;}
.lwg-info-note svg{width:15px;height:15px;stroke:var(--navy2);stroke-width:1.7;fill:none;flex-shrink:0;margin-top:1px;}
@media(max-width:960px){.lwg:has(#lwg-screen-1.active){max-width:620px;}.lwg-layout{flex-direction:column;}.lwg-col-info{flex-basis:auto;width:100%;}}
@media(max-width:560px){.lwg .lwg-card{padding:20px 16px;}.lwg .lwg-doc-scroll{padding:20px 18px;}.lwg-hint-tooltip{max-width:calc(100vw - 40px);}.lwg .lwg-chips{flex-direction:column;align-items:stretch;}.lwg .lwg-chip{text-align:left;padding:13px 18px;border-radius:14px;}.ap-tool-head{flex-direction:column;gap:12px;}}
.app *,.app *::before,.app *::after{box-sizing:border-box;margin:0;padding:0;}
.app{--navy:#1e3a5f;--navy-deep:#16304f;--navy2:#24476C;--gold:#D2B68A;--cream:#faf8f5;--paper:#fff;--border:#e8e2d9;--muted:#8a8078;--ink:#1a2233;font-family:'Manrope',sans-serif;width:100%;flex:1;min-height:0;display:flex;flex-direction:column;background:transparent;}
.app-scroll{flex:1;min-height:0;overflow-y:auto;width:100%;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:rgba(30,58,95,.35) transparent;}
.app-scroll::-webkit-scrollbar{width:9px;}
.app-scroll::-webkit-scrollbar-track{background:transparent;}
.app-scroll::-webkit-scrollbar-thumb{background:rgba(30,58,95,.28);border-radius:10px;border:2px solid transparent;background-clip:padding-box;}
.app-scroll::-webkit-scrollbar-thumb:hover{background:rgba(210,182,138,.55);background-clip:padding-box;}
.app-window{width:100%;max-width:860px;margin:0 auto;padding:24px 56px 24px 24px;flex:1;display:flex;flex-direction:column;}
.app-window:has(.app-empty),.app-window:has(.app-loading){justify-content:center;align-items:center;}
.app-footer{flex-shrink:0;background:var(--cream);position:relative;}
.app-footer::before{content:'';position:absolute;left:0;right:9px;bottom:100%;height:40px;background:linear-gradient(to bottom,rgba(250,248,245,0) 0%,rgba(250,248,245,.85) 65%,rgba(250,248,245,1) 100%);pointer-events:none;}
.app-empty{min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted);padding:20px;}
.app-empty-ic{width:60px;height:60px;border-radius:18px;background:var(--cream);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;margin-bottom:18px;box-shadow:0 4px 18px rgba(30,58,95,.06);}
.app-empty-ic svg{width:28px;height:28px;stroke:var(--navy2);stroke-width:1.6;fill:none;}
.app-empty h4{font-family:'Playfair Display',serif;font-size:19px;color:var(--navy);margin-bottom:7px;}
.app-empty p{font-size:13.5px;line-height:1.65;max-width:420px;margin-bottom:24px;}
.app-sugg{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:560px;width:100%;}
.app-sugg button{width:100%;text-align:left;padding:13px 16px;border-radius:14px;border:1px solid var(--border);background:var(--paper);font-size:12.5px;font-weight:500;color:var(--navy2);cursor:pointer;transition:all .2s;font-family:inherit;line-height:1.4;box-shadow:0 2px 10px rgba(30,58,95,.05);}
.app-sugg button:hover{border-color:var(--navy2);background:rgba(210,182,138,.08);box-shadow:0 4px 16px rgba(30,58,95,.09);transform:translateY(-1px);}
.app-result{animation:appFade .35s ease;}
@keyframes appFade{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}
.app-line{margin:7px 0;font-size:14.5px;line-height:1.65;color:#212529;max-width:760px;}
.app-h{font-family:'Manrope',sans-serif;font-size:16px;font-weight:700;color:var(--navy);margin:18px 0 10px;}
.app-h:first-child{margin-top:0;}
.app-bullet{display:flex;gap:8px;margin:6px 0;font-size:14px;line-height:1.6;color:#212529;max-width:760px;}
.app-bullet::before{content:'';flex-shrink:0;width:5px;height:5px;border-radius:50%;background:var(--gold);margin-top:9px;}
.app-cases{margin:14px 0;}
.app-case{padding:16px 18px;background:var(--cream);border:1px solid var(--border);border-radius:12px;margin-bottom:12px;transition:all .18s;}
.app-case:hover{border-color:var(--navy2);box-shadow:0 4px 14px rgba(30,58,95,.08);}
.app-case-head{display:flex;gap:10px;align-items:center;margin-bottom:8px;}
.app-case-num{flex-shrink:0;width:24px;height:24px;border-radius:7px;background:var(--navy);color:var(--gold);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;}
.app-case-sub{font-size:13.5px;font-weight:700;color:var(--navy);line-height:1.4;}
.app-case-desc{font-size:13.5px;line-height:1.6;color:var(--ink);margin:0 0 12px 34px;}
.app-case-btn{display:inline-flex;align-items:center;gap:6px;margin-left:34px;padding:8px 14px;border-radius:9px;background:#fff;border:1.5px solid var(--navy2);color:var(--navy2);font-size:12px;font-weight:700;text-decoration:none;transition:all .18s;font-family:inherit;}
.app-case-btn:hover{background:var(--navy2);color:#fff;}
.app-case-btn.disabled{opacity:.55;pointer-events:none;border-color:var(--border);color:var(--muted);background:transparent;}
.app-case-btn svg{width:12px;height:12px;stroke:currentColor;fill:none;}
.app-disclaimer{font-size:11px;color:var(--muted);margin-top:14px;padding-top:12px;border-top:1px solid var(--border);font-style:italic;line-height:1.5;max-width:760px;}
.app-md{margin:0;max-width:760px;}
.app-md h1,.app-md h2,.app-md h3{font-family:'Manrope',sans-serif;font-weight:700;color:var(--navy);line-height:1.3;margin:18px 0 10px;}
.app-md h1:first-child,.app-md h2:first-child,.app-md h3:first-child{margin-top:0;}
.app-md h1{font-size:18px;}
.app-md h2{font-size:16px;}
.app-md h3{font-size:14.5px;}
.app-md p{margin:7px 0;font-size:14.5px;line-height:1.65;color:#212529;}
.app-md p:first-child{margin-top:0;}
.app-md strong{color:var(--navy);font-weight:700;}
.app-md ul,.app-md ol{margin:8px 0 8px 20px;}
.app-md li{margin:5px 0;font-size:14px;line-height:1.6;color:#212529;}
.app-md a{color:var(--navy2);text-decoration:underline;text-decoration-color:rgba(36,71,108,.3);}
.app-md>*:last-child{margin-bottom:0;}
.app-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:44px 20px;gap:16px;}
.app-spinner{width:38px;height:38px;border:3px solid var(--border);border-top-color:var(--navy2);border-radius:50%;animation:appSpin .8s linear infinite;}
@keyframes appSpin{to{transform:rotate(360deg);}}
.app-loading-text{font-size:13.5px;color:var(--muted);text-align:center;line-height:1.6;max-width:320px;transition:opacity .2s ease;}
.app-row{width:100%;max-width:860px;margin:0 auto;padding:12px 56px 4px 24px;flex-shrink:0;}
.app-inputbar{position:relative;display:flex;align-items:flex-end;background:var(--paper);border-radius:20px;box-shadow:0 6px 24px rgba(30,58,95,.08),0 1px 4px rgba(30,58,95,.05);padding:12px 54px 12px 20px;transition:box-shadow .2s;}
.app-inputbar:focus-within{box-shadow:0 8px 30px rgba(30,58,95,.12),0 0 0 3px rgba(36,71,108,.08);}
.app-input{flex:1;min-height:24px;max-height:220px;resize:none;padding:6px 0;border:none;font-family:inherit;font-size:14.5px;background:transparent;overflow-y:auto;color:var(--ink);outline:none;}
.app-input::placeholder{color:var(--muted);opacity:.85;}
.app-send{position:absolute;right:8px;bottom:8px;width:38px;height:38px;padding:0;border:none;border-radius:50%;background:var(--navy);color:#fff;cursor:pointer;font-family:inherit;transition:all .2s;flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.app-send svg{width:17px;height:17px;}
.app-send:hover:not(:disabled){background:var(--navy-deep);}
.app-send:disabled{opacity:.5;cursor:not-allowed;}
.app-hint{width:100%;max-width:860px;margin:0 auto;font-size:11.5px;color:var(--muted);line-height:1.5;text-align:center;padding:4px 56px 14px 24px;flex-shrink:0;}
.apc-question{display:flex;gap:10px;align-items:flex-start;margin-top:14px;padding:12px 14px;background:rgba(210,182,138,.12);border:1px solid rgba(210,182,138,.35);border-radius:12px;}
.apc-question-ic{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--navy);color:var(--gold);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-top:1px;}
.apc-question-text{flex:1;font-size:13.5px;line-height:1.5;color:var(--navy2);font-weight:600;}
@media(max-width:560px){.app-window{padding:16px;}.app-row,.app-hint{padding-left:16px;padding-right:16px;}.app-row{padding-top:10px;padding-bottom:4px;}}
.apc-fast-wrap{position:relative;display:flex;align-items:center;gap:6px;align-self:center;flex-shrink:0;}
.apc-fast-pill{display:flex;align-items:center;gap:6px;border:none;background:transparent;cursor:pointer;padding:6px 10px;border-radius:999px;color:var(--muted);font-family:inherit;font-size:13px;font-weight:600;transition:background .2s,color .2s;}
.apc-fast-pill:hover{background:rgba(30,58,95,.06);}
.apc-fast-pill[aria-pressed="true"]{background:var(--navy);color:#fff;}
.apc-fast-ic{width:15px;height:15px;flex-shrink:0;}
.apc-fast-pill-label{white-space:nowrap;}
.apc-fast-dot{width:6px;height:6px;border-radius:50%;background:var(--border);flex-shrink:0;transition:background .2s;}
.apc-fast-pill[aria-pressed="true"] .apc-fast-dot{background:var(--gold);}
.apc-fast-info{width:18px;height:18px;border-radius:50%;border:1px solid var(--border);background:transparent;color:var(--muted);font-size:11px;font-weight:700;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0;}
.apc-fast-info:hover{border-color:var(--navy);color:var(--navy);}
.apc-fast-tip{display:none;position:absolute;left:0;bottom:calc(100% + 10px);z-index:30;width:240px;max-width:min(280px, calc(100vw - 32px));background:var(--navy);color:var(--cream);font-size:12px;line-height:1.5;padding:10px 12px;border-radius:10px;box-shadow:0 8px 24px rgba(30,58,95,.25);}
.apc-fast-tip.show{display:block;}
.apc-fast-divider{width:1px;align-self:stretch;background:var(--border);flex-shrink:0;margin:2px 12px;}
@media(max-width:560px){.apc-fast-pill-label{display:none;}.apc-fast-pill{padding:11px;gap:0;}.apc-fast-divider{margin:2px 10px;}}