:root{--color-primary: #7C4DFF;--color-primary-light: #B47CFF;--color-primary-dark: #6A3DE8;--color-bg: #F4F3FF;--color-surface: #FFFFFF;--color-border: #E8E8EF;--color-text: #1F2937;--color-text-secondary: #374151;--color-sidebar-bg: #FFFFFF;--color-sidebar-text: #374151;--color-sidebar-active: linear-gradient(135deg, #7C4DFF, #B47CFF);--color-success: #2E7D32;--color-warning: #EAB308;--color-error: #EF5350;--color-instagram: #E1306C;--color-threads: #000000;--sidebar-width: 200px;--header-height: 56px;--shadow-xs: 0 1px 2px rgba(124, 77, 255, .04);--shadow-sm: 0 2px 12px rgba(124, 77, 255, .06);--shadow-md: 0 4px 16px rgba(124, 77, 255, .08);--shadow-lg: 0 10px 30px rgba(124, 77, 255, .12);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 14px;--radius-xl: 16px;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}body{font-family:Public Sans,DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;background:var(--color-bg);color:var(--color-text);line-height:1.6;min-height:100vh}a{color:inherit;text-decoration:none}button{font-family:inherit}code{font-family:SF Mono,Monaco,Consolas,monospace}#app{display:flex;flex-direction:column;min-height:100vh;opacity:0;transition:opacity .3s ease}#app.is-ready{opacity:1}.app-header{position:fixed;top:0;left:0;right:0;height:var(--header-height);background:#fff;color:var(--color-text);display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;z-index:100;border-bottom:1px solid #E8E8EF}.header-left{display:flex;align-items:center;gap:10px}.header-left img{width:32px;height:32px;object-fit:contain;border-radius:var(--radius-sm)}.header-left span{font-size:1rem;font-weight:700;letter-spacing:-.02em;color:#1f2937}.header-right{display:flex;align-items:center;gap:12px}.lang-toggle{display:flex;gap:2px;background:transparent;border-radius:var(--radius-sm);padding:0}.lang-toggle button{padding:5px 10px;border-radius:4px;border:none;cursor:pointer;font-size:15px;font-weight:700;transition:background var(--transition-fast),color var(--transition-fast)}.lang-toggle button.active{background:#7c4dff14;color:#7c4dff}.lang-toggle button:not(.active){background:#f4f4f8;color:#374151}.lang-toggle button:not(.active):hover{color:#1f2937}.user-menu{position:relative}.user-menu-btn{display:flex;align-items:center;gap:8px;background:transparent;border:none;border-radius:var(--radius-md);padding:6px 14px;color:#1f2937;cursor:pointer;font-size:16px;font-weight:600;transition:background var(--transition-fast)}.user-menu-btn:hover{background:#7c4dff0f}.user-menu-dropdown{display:none;position:absolute;top:calc(100% + 6px);right:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:180px;z-index:200;overflow:hidden}.user-menu-dropdown.open{display:block}.user-menu-dropdown a,.user-menu-dropdown button{display:flex;align-items:center;gap:8px;width:100%;padding:12px 16px;border:none;background:none;color:var(--color-text);font-size:16px;cursor:pointer;text-decoration:none;text-align:left;transition:background var(--transition-fast)}.user-menu-dropdown a:hover,.user-menu-dropdown button:hover{background:var(--color-bg)}.user-menu-dropdown .divider{height:1px;background:var(--color-border)}.app-sidebar{position:fixed;top:var(--header-height);left:0;bottom:0;width:var(--sidebar-width);background:#fff;color:var(--color-sidebar-text);padding:1rem 0;overflow-y:auto;z-index:90;border-right:1px solid #E8E8EF;display:flex;flex-direction:column}.sidebar-nav{list-style:none;display:flex;flex-direction:column;gap:2px;padding:0 .5rem}.sidebar-nav li a{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:10px;color:var(--color-sidebar-text);text-decoration:none;font-size:16px;font-weight:500;transition:background var(--transition-fast),color var(--transition-fast)}.sidebar-nav li a:hover{background:#7c4dff0f;color:#1f2937}.sidebar-nav li a.active{background:linear-gradient(135deg,#7c4dff,#b47cff);color:#fff}.sidebar-nav li a.active i,.sidebar-nav li a.active svg{color:#fff}.sidebar-nav li a i,.sidebar-nav li a svg{width:20px;height:20px;flex-shrink:0}.app-body{margin-top:var(--header-height);margin-left:var(--sidebar-width);flex:1;display:flex;flex-direction:column;min-height:calc(100vh - var(--header-height));background:var(--color-bg)}#main-content{flex:1;padding:2rem;max-width:960px;width:100%}.page{display:none}.page.active{display:block;animation:pageIn .2s ease}@keyframes pageIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.page-title{font-size:32px;font-weight:800;margin-bottom:.25rem;color:var(--color-text);letter-spacing:-.01em}.page-subtitle{font-size:18px;color:#374151;margin-bottom:1.5rem;font-weight:400}.section-title{font-size:24px;font-weight:700;margin-bottom:1rem;color:var(--color-text);display:flex;align-items:center;gap:8px}h2{font-size:1.25rem;font-weight:700;color:var(--color-text);margin:0 0 1rem;display:flex;align-items:center;gap:8px}h3{font-size:16px;font-weight:600;color:var(--color-text);margin:0 0 .75rem}p{font-size:14px;color:#374151;line-height:1.6;margin:0 0 .75rem}label{display:block;font-size:14px;font-weight:600;color:#1f2937;margin-bottom:6px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:0 2px 12px #7c4dff0f;transition:box-shadow var(--transition-base)}.card:hover{box-shadow:0 4px 16px #7c4dff14}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}.section-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:0 2px 12px #7c4dff0a;margin-bottom:1.5rem}.account-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:0 2px 12px #7c4dff0a;transition:box-shadow var(--transition-base)}.account-card.connected{border:1px solid rgba(124,77,255,.2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:var(--radius-md);border:none;cursor:pointer;font-size:16px;font-weight:700;font-family:inherit;transition:background var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast);text-decoration:none;line-height:1.4}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#7c4dff,#b47cff);color:#fff;font-size:15px;font-weight:700;box-shadow:0 4px 14px #7c4dff4d;border-radius:10px}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #7c4dff66}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 14px #7c4dff4d}.btn-secondary{background:#f4f4f8;color:#1f2937;border:1px solid #D1D5DB}.btn-secondary:hover:not(:disabled){background:#eaeaf0}.btn-danger{background:#ef535014;color:#ef5350;border:none}.btn-danger:hover:not(:disabled){background:#ef535024}.btn-connect{background:linear-gradient(135deg,#7c4dff,#b47cff);color:#fff;box-shadow:0 4px 14px #7c4dff4d;border-radius:10px}.btn-connect:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #7c4dff66}.btn-connect-ig{background:linear-gradient(135deg,#833ab4,#e1306c);color:#fff;border:none;border-radius:10px;box-shadow:0 4px 14px #e1306c4d}.btn-connect-threads{background:#000;color:#fff;border:none;border-radius:10px}.btn-sm{padding:10px 18px;font-size:15px;font-weight:700}.badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--radius-full);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.badge-success,.status-badge.published{background:#72e18626;color:#2e7d32}.badge-error,.status-badge.failed{background:#ef53501f;color:#ef5350}.badge-draft,.status-badge.draft,.badge-warning,.status-badge.scheduled{background:#ffb74d26;color:#e65100}.badge-instagram{background:#e1306c1a;color:var(--color-instagram)}.badge-threads{background:#0000000f;color:var(--color-threads)}.badge-connected{background:#72e18626;color:#2e7d32}.badge-not-connected{background:#9e9e9e1f;color:#757575}.status-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-full);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.platform-cards{display:flex;gap:.75rem;margin-bottom:1rem}.platform-card-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:10px;padding:18px 24px;border-radius:10px;border:1px solid #E8E8EF;background:#fff;cursor:pointer;font-size:18px;font-weight:700;font-family:inherit;color:#374151;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast)}.platform-card-btn:hover{border-color:#7c4dff;color:#7c4dff}.platform-card-btn.selected,.platform-card-btn.selected[data-platform=instagram],.platform-card-btn.selected[data-platform=threads]{border:2px solid #7C4DFF;background:#7c4dff0f;color:#7c4dff}.platform-card{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.platform-card:hover{border-color:#7c4dff}.platform-card.selected{border-color:#7c4dff;box-shadow:0 0 0 3px #7c4dff1a}.form-group{margin-bottom:1rem}.form-label{display:block;font-size:16px;font-weight:700;color:#1f2937;margin-bottom:6px}.form-textarea{width:100%;padding:14px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:17px;font-family:inherit;resize:vertical;line-height:1.6;color:var(--color-text);background:var(--color-surface);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-textarea:focus{outline:none;border-color:#7c4dff;box-shadow:0 0 0 3px #7c4dff1a}.form-select{width:100%;padding:12px 14px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:16px;font-family:inherit;background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:border-color var(--transition-fast)}.form-select:focus{outline:none;border-color:#7c4dff;box-shadow:0 0 0 3px #7c4dff1a}.char-counter{font-size:13px;color:#4b5563}.file-upload-area,.upload-area{border:2px dashed #D8D8E8;border-radius:12px;padding:1.75rem;text-align:center;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.file-upload-area:hover,.upload-area:hover{border-color:#7c4dff;background:#7c4dff05}.file-upload-area .upload-icon,.upload-area .upload-icon{color:#4b5563;margin-bottom:.5rem}.file-upload-area .upload-text,.upload-area .upload-text{font-size:14px;color:#374151}.file-upload-area .upload-hint,.upload-area .upload-hint{font-size:13px;color:#4b5563;margin-top:4px}.post-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;padding:1.25rem;margin-bottom:.75rem;display:flex;align-items:flex-start;gap:1rem;box-shadow:0 2px 8px #7c4dff08;transition:box-shadow var(--transition-fast)}.post-card:hover{box-shadow:0 4px 16px #7c4dff14}.post-card-body{flex:1;min-width:0}.post-card-meta{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:13px;color:#4b5563}.post-card-content{font-size:17px;color:var(--color-text);line-height:1.6;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.post-card-actions{display:flex;align-items:center;gap:8px;font-size:13px}.post-card-actions a{color:#7c4dff;text-decoration:none;font-weight:600}.post-card-actions a:hover{text-decoration:underline}.account-section{margin-bottom:2rem}.account-section-header{display:flex;align-items:center;gap:10px;margin-bottom:1rem}.account-section-header .platform-icon{width:28px;height:28px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.85rem}.account-section-header .platform-icon.ig{background:linear-gradient(135deg,#833ab4,#e1306c,#f77737)}.account-section-header .platform-icon.th{background:var(--color-threads)}.account-profile-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;padding:1.25rem;display:flex;align-items:center;gap:1rem}.account-profile-card img{width:48px;height:48px;border-radius:50%;object-fit:cover}.account-profile-info{flex:1}.account-profile-info .username{font-weight:700;font-size:20px;color:var(--color-text)}.account-profile-info .account-type{font-size:15px;color:#4b5563}.account-actions{display:flex;gap:8px}.profile-info{display:flex;align-items:center;gap:.75rem}.profile-info img{width:40px;height:40px;border-radius:50%;object-fit:cover}.account-summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.disabled-notice{background:#fef3c7;border:1px solid #FDE68A;border-radius:var(--radius-md);padding:16px 20px;font-size:16px;font-weight:600;color:#92400e}.modal-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#2d2b3d80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9000;justify-content:center;align-items:center}.modal-overlay.open{display:flex}.modal-box{background:var(--color-surface);border-radius:16px;padding:2rem;max-width:420px;width:90%;text-align:center;box-shadow:0 20px 60px #7c4dff26;animation:modalIn .2s ease}@keyframes modalIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-box .modal-icon{font-size:48px;margin-bottom:12px}.modal-box h3{font-size:26px;font-weight:800;margin-bottom:.5rem;color:var(--color-text)}.modal-box p{font-size:17px;color:#374151;margin-bottom:1.25rem}.modal-box .modal-actions{display:flex;flex-direction:column;gap:8px}.modal-box .modal-actions a{display:inline-flex;align-items:center;justify-content:center;gap:4px;text-decoration:none}.quick-link{display:flex;align-items:center;gap:12px;padding:16px 22px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;text-decoration:none;color:#1f2937;font-weight:700;font-size:17px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.quick-link:hover{border-color:#7c4dff;box-shadow:0 2px 8px #7c4dff14}.quick-link i{color:#7c4dff}.filters-row{display:flex;gap:.75rem;margin-bottom:1rem;align-items:center;flex-wrap:wrap}.filters-row .form-select{width:auto;min-width:200px}.posting-as-banner{display:none;background:#f8f7ff;border:none;border-radius:10px;padding:10px 16px;font-size:14px;color:#374151;margin-bottom:1rem;align-items:center;gap:8px}.posting-as-banner.visible{display:flex}.app-footer{background:#fff;color:#374151;padding:18px 28px;font-size:16px;border-top:1px solid #E8E8EF;display:flex;justify-content:space-between;align-items:center}.app-footer a{color:#374151;text-decoration:none;margin:0 1rem;font-weight:600;font-size:16px;transition:color var(--transition-fast)}.app-footer a:hover{color:#7c4dff}#loading-overlay,#posting-overlay{font-family:Public Sans,DM Sans,sans-serif}.loading-overlay,.posting-overlay{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;z-index:9999}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}.js-hidden{display:none!important}.text-small{font-size:13px;color:#374151}.text-caption{font-size:13px;font-weight:500;color:#4b5563}.sidebar-logout{margin-top:auto;padding:12px 16px}.sidebar-logout button{display:flex;align-items:center;gap:8px;background:none;border:none;color:#dc2626;cursor:pointer;font-weight:700;font-size:16px;padding:0;font-family:inherit}.sidebar-logout button:hover{color:#d32f2f}.welcome-banner{background:linear-gradient(135deg,#7c4dff,#b388ff,#e1bee7);border-radius:16px;padding:28px 32px;color:#fff;position:relative;overflow:hidden;margin-bottom:1.5rem}.welcome-banner:after{content:"🍜";position:absolute;right:20px;top:-10px;font-size:80px;opacity:.15}.welcome-banner .page-title{color:#fff;font-size:30px;font-weight:800;margin-bottom:.25rem}.welcome-banner .page-subtitle{color:#fff;font-size:18px;margin-bottom:0}.user-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#7c4dff,#b47cff);display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-avatar span{color:#fff;font-size:.6875rem;font-weight:700}.header-logo-icon{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,#7c4dff,#b47cff);display:flex;align-items:center;justify-content:center;flex-shrink:0}.header-logo-icon span{color:#fff;font-size:.875rem;font-weight:800}.upload-browse{color:#7c4dff;font-weight:600}@media(max-width:768px){.app-sidebar{transform:translate(-100%);transition:transform var(--transition-base);z-index:95}.app-sidebar.open{transform:translate(0)}.app-body{margin-left:0}#main-content{padding:1.25rem}.platform-cards{flex-direction:column}.card-grid,.account-summary-grid{grid-template-columns:1fr}.account-profile-card{flex-direction:column;text-align:center;gap:.75rem}.account-actions{justify-content:center}.filters-row{flex-direction:column;align-items:stretch}.filters-row .form-select{width:100%;min-width:0}}#login-form input:focus{border-color:#7c4dff;box-shadow:0 0 0 3px #7c4dff1a}
