:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#102033;background:#eef3f8;--bg: #eef3f8;--panel: rgba(255, 255, 255, .88);--border: rgba(180, 197, 218, .7);--brand: #0d5f7a;--brand-dark: #123f5a;--accent: #0f9d8f;--text-soft: #5b6776}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top right,rgba(15,157,143,.14),transparent 22%),radial-gradient(circle at top left,rgba(13,95,122,.15),transparent 24%),linear-gradient(180deg,#f7fafc,#ecf2f8)}button,input,select,textarea{font:inherit}button{cursor:pointer}.public-layout,.app-shell{min-height:100vh}.public-layout,.app-content,.app-shell{position:relative}.public-header,.public-main,.app-content{width:min(1200px,calc(100% - 40px));margin:0 auto}.public-header{display:flex;gap:16px;justify-content:space-between;align-items:center;padding:20px 0}.public-nav,.public-actions,.hero-actions,.language-switcher{display:flex;gap:12px;align-items:center}.brand-link,.public-nav button,.ghost-button,.primary-button,.language-switcher button,.sidebar-nav button{border:1px solid var(--border);background:#fff;padding:10px 14px;border-radius:999px;color:inherit}.primary-button,.language-switcher .active{background:var(--brand);border-color:var(--brand);color:#fff}.public-main{padding-bottom:40px}.hero,.section-grid,.dashboard-grid,.app-shell,.section-stack{display:grid;gap:20px}.hero{grid-template-columns:1.1fr .9fr;padding:24px 0 20px}.hero-copy,.hero-panel,.panel-card,.auth-card,.sidebar,.topbar,.stat-card,.inner-panel{background:var(--panel);border:1px solid var(--border);border-radius:24px;box-shadow:0 20px 50px #10203314;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.hero-copy,.hero-panel,.panel-card,.auth-card,.sidebar,.topbar,.stat-card{padding:24px}.hero-copy h1,.panel-card h1,.auth-card h1{margin:0 0 12px;font-size:clamp(2rem,4vw,3.6rem);line-height:1.05}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;color:var(--accent);font-weight:700}.hero-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center}.feature-tile{display:grid;place-items:center;min-height:120px;border-radius:20px;background:linear-gradient(135deg,#0d5f7a1f,#0f9d8f1a);font-size:1.2rem;font-weight:700}.section-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.simple-list{margin:0;padding-left:20px}.auth-card{width:min(560px,100%);margin:40px auto}.auth-form{display:grid;gap:16px}.compact-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.auth-form label{display:grid;gap:8px}.auth-form input,.upload-dropzone,textarea,input[type=file]{border:1px solid var(--border);border-radius:16px;padding:14px 16px;background:#fff}textarea{width:100%;resize:vertical}.form-message{margin:0;font-size:.95rem}.form-message.error{color:#b42318}.form-message.success{color:#027a48}.app-shell{grid-template-columns:280px 1fr;width:min(1400px,calc(100% - 40px));margin:0 auto;padding:20px 0}.sidebar{height:fit-content}.sidebar-brand{display:flex;gap:14px;align-items:center;margin-bottom:20px}.sidebar-badge{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--brand);color:#fff;font-weight:700}.sidebar-nav{display:grid;gap:10px}.sidebar-nav button{text-align:left}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-card strong{display:block;font-size:2rem;margin-top:8px}.upload-dropzone{min-height:180px;display:grid;place-items:center;position:relative;margin-bottom:16px}.upload-dropzone input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0}.history-table{width:100%;border-collapse:collapse}.public-tools-grid,.pdf-tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.limit-badge{display:inline-block;padding:8px 12px;border-radius:999px;background:#0d5f7a1a}.preview-box{white-space:pre-wrap;border:1px solid var(--border);border-radius:16px;padding:14px;background:#fff}.library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.library-card{border:1px solid var(--border);border-radius:18px;padding:16px;background:#fffc}.assistant-widget{position:fixed;right:24px;bottom:24px;z-index:50;display:grid;justify-items:end;gap:12px}.assistant-fab{border:none;border-radius:999px;padding:14px 18px;background:linear-gradient(135deg,var(--brand),var(--accent));color:#fff;box-shadow:0 18px 36px #0d5f7a40}.assistant-panel{width:min(380px,calc(100vw - 32px));max-height:min(70vh,620px);display:grid;grid-template-rows:auto 1fr auto auto;gap:14px;padding:18px;background:#fffffff5;border:1px solid var(--border);border-radius:24px;box-shadow:0 30px 60px #1020332e;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.assistant-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.assistant-header h3{margin:4px 0 0}.assistant-context{margin:4px 0 0;color:var(--text-soft);font-size:.92rem}.assistant-toggle{padding:8px 12px}.assistant-messages{display:grid;gap:10px;overflow-y:auto;padding-right:4px}.assistant-message{border-radius:18px;padding:12px 14px;border:1px solid var(--border);background:#fff}.assistant-message.user{background:#0d5f7a14}.assistant-message strong,.assistant-message p{display:block;margin:0}.assistant-message p{margin-top:6px;line-height:1.5}.assistant-suggestions{display:flex;flex-wrap:wrap;gap:10px}.assistant-suggestion{border:1px solid var(--border);background:#fff;border-radius:999px;padding:9px 12px}.assistant-form{display:grid;grid-template-columns:1fr auto;gap:10px}.assistant-form input{border:1px solid var(--border);border-radius:16px;padding:12px 14px;background:#fff}.history-table th,.history-table td{padding:12px 10px;text-align:left;border-bottom:1px solid var(--border)}@media (max-width: 980px){.hero,.section-grid,.dashboard-grid,.app-shell,.library-grid,.public-tools-grid,.pdf-tools-grid{grid-template-columns:1fr}.public-header{flex-direction:column;align-items:stretch}.public-nav,.public-actions{flex-wrap:wrap}.compact-form{grid-template-columns:1fr}.assistant-widget{right:16px;bottom:16px}.assistant-form{grid-template-columns:1fr}}
