/* Publique Sua História — App CSS */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400;1,600&family=DM+Sans:wght@300;400;500&display=swap');

#psh-app *{box-sizing:border-box;margin:0;padding:0}
#psh-app{
  --bg:#F8F5EF;--bg2:#EFEBE2;--bg3:#E8E2D8;
  --ink:#1C1C1E;--ink2:#4A4845;--ink3:#8A857E;
  --gold:#C4920A;--gold-l:#FAC765;--gold-bg:#FAEEDA;
  --green:#3B6D11;--green-bg:#EAF3DE;
  --red:#A32D2D;--red-bg:#FCEBEB;
  --border:#D8D2C8;--border2:#C4BCAE;
  --serif:'Playfair Display',Georgia,serif;
  --sans:'DM Sans',system-ui,sans-serif;
  --r:8px;--rl:14px;
  font-family:var(--sans);color:var(--ink);font-size:15px;
  background:var(--bg);min-height:600px;
}
#psh-app .screen{display:none;min-height:600px;flex-direction:column}
#psh-app .screen.active{display:flex}

/* NAV */
#psh-app .topnav{background:#fff;border-bottom:1px solid var(--border);padding:0 1.5rem;height:54px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
#psh-app .topnav-logo{font-family:var(--serif);font-size:1.1rem;font-style:italic;color:var(--ink)}
#psh-app .topnav-right{display:flex;align-items:center;gap:10px}
#psh-app .avatar{width:32px;height:32px;border-radius:50%;background:var(--gold-bg);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--gold)}
#psh-app .badge{font-size:11px;padding:3px 10px;border-radius:20px;font-weight:500}
#psh-app .badge-free{background:var(--bg2);color:var(--ink3)}
#psh-app .badge-premium{background:var(--gold-bg);color:var(--gold)}

/* BUTTONS */
#psh-app .btn-primary{padding:10px 20px;background:var(--ink);color:#fff;border:none;border-radius:var(--r);font-family:var(--sans);font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}
#psh-app .btn-primary:hover{background:#333}
#psh-app .btn-ghost{background:none;border:1px solid var(--border);color:var(--ink2);border-radius:var(--r);padding:7px 14px;font-family:var(--sans);font-size:13px;cursor:pointer;transition:all .2s}
#psh-app .btn-ghost:hover{border-color:var(--border2);background:var(--bg)}
#psh-app .btn-gold{background:var(--gold);color:#fff;border:none;border-radius:var(--r);padding:8px 16px;font-family:var(--sans);font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}
#psh-app .btn-gold:hover{background:#a37808}
#psh-app .btn-danger{background:var(--red-bg);color:var(--red);border:1px solid #f7c1c1;border-radius:var(--r);padding:7px 14px;font-family:var(--sans);font-size:13px;cursor:pointer}

/* FORMS */
#psh-app .field{margin-bottom:1rem}
#psh-app .field label{display:block;font-size:13px;color:var(--ink2);margin-bottom:5px;font-weight:500}
#psh-app .field input,#psh-app .field select,#psh-app .field textarea{width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:var(--r);font-family:var(--sans);font-size:14px;background:#fff;color:var(--ink);outline:none;transition:border .2s}
#psh-app .field input:focus,#psh-app .field select:focus,#psh-app .field textarea:focus{border-color:var(--gold)}
#psh-app .field textarea{resize:vertical;min-height:80px}
#psh-app .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}

/* AUTH */
#psh-app .auth-wrap{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--bg)}
#psh-app .auth-box{background:#fff;border:1px solid var(--border);border-radius:var(--rl);padding:2.5rem 2rem;width:100%;max-width:400px}
#psh-app .auth-logo{font-family:var(--serif);font-size:1.5rem;font-style:italic;color:var(--ink);margin-bottom:4px}
#psh-app .auth-sub{font-size:13px;color:var(--ink3);margin-bottom:1.75rem}
#psh-app .auth-tabs{display:flex;border-bottom:1px solid var(--border);margin-bottom:1.5rem}
#psh-app .auth-tab{flex:1;padding:8px;text-align:center;font-size:14px;cursor:pointer;color:var(--ink3);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s}
#psh-app .auth-tab.active{color:var(--gold);border-bottom-color:var(--gold);font-weight:500}

/* DASHBOARD */
#psh-app .dash-body{flex:1;padding:1.75rem 1.5rem;overflow-y:auto;background:var(--bg)}
#psh-app .dash-title{font-family:var(--serif);font-size:1.5rem;font-weight:600;color:var(--ink)}
#psh-app .dash-sub{font-size:13px;color:var(--ink3);margin-top:4px;margin-bottom:1.5rem}
#psh-app .stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:1.75rem}
#psh-app .stat-card{background:var(--bg2);border-radius:var(--r);padding:1rem;text-align:center}
#psh-app .stat-num{font-family:var(--serif);font-size:1.4rem;font-weight:600;color:var(--ink)}
#psh-app .stat-label{font-size:12px;color:var(--ink3);margin-top:2px}
#psh-app .projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}
#psh-app .project-card{background:#fff;border:1px solid var(--border);border-radius:var(--rl);padding:1.2rem;cursor:pointer;transition:all .2s}
#psh-app .project-card:hover{border-color:var(--border2);box-shadow:0 2px 10px rgba(0,0,0,.07);transform:translateY(-1px)}
#psh-app .project-type{font-size:11px;font-weight:500;padding:3px 10px;border-radius:20px;display:inline-block;margin-bottom:10px}
#psh-app .type-book{background:var(--green-bg);color:var(--green)}
#psh-app .type-coautoria{background:var(--gold-bg);color:var(--gold)}
#psh-app .project-title{font-family:var(--serif);font-size:.95rem;font-weight:600;color:var(--ink);margin-bottom:3px;line-height:1.3}
#psh-app .project-meta{font-size:12px;color:var(--ink3);margin-bottom:10px}
#psh-app .progress-bar{background:var(--bg2);border-radius:20px;height:4px;margin-bottom:5px}
#psh-app .progress-fill{height:4px;border-radius:20px;background:var(--gold)}
#psh-app .progress-label{font-size:11px;color:var(--ink3)}
#psh-app .new-card{border:1px dashed var(--border2)!important;background:transparent!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:150px;box-shadow:none!important;transform:none!important}
#psh-app .new-card:hover{border-color:var(--gold)!important;background:var(--gold-bg)!important}
#psh-app .new-card-icon{font-size:2rem;color:var(--border2)}
#psh-app .new-card:hover .new-card-icon{color:var(--gold)}
#psh-app .new-card-label{font-size:13px;color:var(--ink3);font-weight:500}
#psh-app .new-card:hover .new-card-label{color:var(--gold)}

/* OBJETIVO */
#psh-app .objetivo-wrap{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;background:var(--bg)}
#psh-app .objetivo-title{font-family:var(--serif);font-size:1.6rem;font-weight:600;color:var(--ink);text-align:center;margin-bottom:8px}
#psh-app .objetivo-sub{font-size:14px;color:var(--ink3);text-align:center;margin-bottom:2rem}
#psh-app .objetivo-cards{display:flex;gap:1.25rem;flex-wrap:wrap;justify-content:center}
#psh-app .objetivo-card{background:#fff;border:2px solid var(--border);border-radius:var(--rl);padding:2rem 1.5rem;width:210px;text-align:center;cursor:pointer;transition:all .25s}
#psh-app .objetivo-card:hover{border-color:var(--gold);background:var(--gold-bg)}
#psh-app .objetivo-card-icon{font-size:2.5rem;margin-bottom:10px}
#psh-app .objetivo-card-title{font-family:var(--serif);font-size:1.05rem;font-weight:600;color:var(--ink);margin-bottom:6px}
#psh-app .objetivo-card-desc{font-size:12px;color:var(--ink3);line-height:1.5}

/* FORM WRAP */
#psh-app .form-wrap{flex:1;overflow-y:auto;padding:1.75rem 1.5rem;background:var(--bg)}
#psh-app .form-box{background:#fff;border:1px solid var(--border);border-radius:var(--rl);padding:2rem;max-width:580px;margin:0 auto}
#psh-app .form-title{font-family:var(--serif);font-size:1.25rem;font-weight:600;color:var(--ink);margin-bottom:4px}
#psh-app .form-sub{font-size:13px;color:var(--ink3);margin-bottom:1.5rem}
#psh-app .form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border)}
#psh-app .info-box{background:var(--gold-bg);border:1px solid var(--gold-l);border-radius:var(--r);padding:10px 14px;font-size:12px;color:#7a5a0a;margin-bottom:1rem}

/* WORKSPACE */
#psh-app .workspace{flex:1;display:flex;overflow:hidden;min-height:500px}
#psh-app .sidebar{width:210px;background:#fff;border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto}
#psh-app .sidebar-section{padding:.9rem}
#psh-app .sidebar-title{font-size:10px;font-weight:600;color:var(--ink3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px}
#psh-app .sidebar-book{font-family:var(--serif);font-size:.85rem;font-weight:600;color:var(--ink);margin-bottom:3px;line-height:1.3}
#psh-app .sidebar-meta{font-size:11px;color:var(--ink3);margin-bottom:10px}
#psh-app .chapter-item{padding:7px 9px;border-radius:var(--r);cursor:pointer;font-size:12px;color:var(--ink2);display:flex;align-items:center;gap:7px;transition:background .15s;margin-bottom:2px}
#psh-app .chapter-item:hover{background:var(--bg)}
#psh-app .chapter-item.active{background:var(--gold-bg);color:var(--gold);font-weight:500}
#psh-app .chapter-dot{width:6px;height:6px;border-radius:50%;background:var(--border2);flex-shrink:0}
#psh-app .chapter-item.active .chapter-dot{background:var(--gold)}
#psh-app .chapter-done .chapter-dot{background:var(--green)}
#psh-app .add-chapter{width:100%;padding:7px;background:none;border:1px dashed var(--border2);border-radius:var(--r);font-family:var(--sans);font-size:12px;color:var(--ink3);cursor:pointer;margin-top:7px;transition:all .2s}
#psh-app .add-chapter:hover{border-color:var(--gold);color:var(--gold)}
#psh-app .sidebar-words{margin-top:auto;padding:.9rem;border-top:1px solid var(--border)}
#psh-app .words-num{font-family:var(--serif);font-size:1.3rem;font-weight:600;color:var(--ink)}
#psh-app .words-label{font-size:11px;color:var(--ink3)}
#psh-app .divider{height:1px;background:var(--border);margin:.75rem 0}

/* EDITOR */
#psh-app .editor-area{flex:1;display:flex;flex-direction:column;overflow:hidden}
#psh-app .editor-toolbar{background:#fff;border-bottom:1px solid var(--border);padding:9px 1.25rem;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
#psh-app .editor-chapter-title{font-family:var(--serif);font-size:.95rem;font-weight:600;color:var(--ink)}
#psh-app .editor-actions{display:flex;align-items:center;gap:8px}
#psh-app .saved-label{font-size:12px;color:var(--ink3)}
#psh-app .editor-scroll{flex:1;overflow-y:auto;padding:1.75rem}
#psh-app .chapter-title-input{font-family:var(--serif);font-size:1.4rem;font-weight:600;color:var(--ink);border:none;outline:none;background:transparent;width:100%;margin-bottom:1.25rem;caret-color:var(--gold)}
#psh-app .chapter-title-input::placeholder{color:var(--border2)}
#psh-app .editor-content{font-family:var(--serif);font-size:.95rem;line-height:1.9;color:var(--ink);border:none;outline:none;background:transparent;width:100%;min-height:380px;resize:none}
#psh-app .editor-content::placeholder{color:var(--border2);font-style:italic}

/* COPILOTO */
#psh-app .copiloto{width:270px;background:#fff;border-left:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0}
#psh-app .copiloto-header{padding:.9rem;border-bottom:1px solid var(--border)}
#psh-app .copiloto-title{font-family:var(--serif);font-size:.85rem;font-weight:600;font-style:italic;color:var(--ink)}
#psh-app .copiloto-sub{font-size:11px;color:var(--ink3);margin-top:2px}
#psh-app .copiloto-body{flex:1;overflow-y:auto;padding:.9rem}
#psh-app .cop-btn{padding:7px 10px;background:var(--bg);border:1px solid var(--border);border-radius:var(--r);font-family:var(--sans);font-size:12px;color:var(--ink2);cursor:pointer;text-align:left;transition:all .2s;width:100%;margin-bottom:5px}
#psh-app .cop-btn:hover{border-color:var(--gold);background:var(--gold-bg);color:var(--gold)}
#psh-app .cop-textarea{width:100%;padding:7px 9px;border:1px solid var(--border);border-radius:var(--r);font-family:var(--sans);font-size:12px;background:var(--bg);color:var(--ink);outline:none;resize:none;min-height:65px;transition:border .2s;margin-top:8px}
#psh-app .cop-textarea:focus{border-color:var(--gold)}
#psh-app .cop-send{width:100%;padding:8px;background:var(--ink);color:#fff;border:none;border-radius:var(--r);font-family:var(--sans);font-size:12px;cursor:pointer;margin-top:5px;transition:background .2s}
#psh-app .cop-send:hover{background:#333}
#psh-app .cop-response{background:var(--bg);border:1px solid var(--border);border-radius:var(--r);padding:9px;font-size:12px;color:var(--ink2);line-height:1.6;margin-top:7px;white-space:pre-wrap;word-break:break-word}
#psh-app .cop-loading{display:flex;gap:4px;align-items:center;padding:8px 0}
#psh-app .cop-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);animation:psh-pulse 1.2s infinite}
#psh-app .cop-dot:nth-child(2){animation-delay:.2s}
#psh-app .cop-dot:nth-child(3){animation-delay:.4s}
@keyframes psh-pulse{0%,80%,100%{opacity:.2}40%{opacity:1}}
#psh-app .cop-action-btn{font-size:11px;padding:4px 9px;background:var(--bg2);border:none;border-radius:20px;color:var(--ink2);cursor:pointer;margin:3px 3px 0 0;transition:all .15s}
#psh-app .cop-action-btn:hover{background:var(--gold-bg);color:var(--gold)}
#psh-app .ai-usage{padding:.9rem;border-top:1px solid var(--border)}
#psh-app .ai-usage-bar{background:var(--bg2);border-radius:20px;height:4px;margin:5px 0}
#psh-app .ai-usage-fill{height:4px;border-radius:20px;background:var(--gold);transition:width .3s}
#psh-app .ai-usage-text{font-size:11px;color:var(--ink3)}

/* MODAL */
#psh-app .modal-overlay{position:fixed;inset:0;background:rgba(28,28,30,.5);display:none;align-items:center;justify-content:center;z-index:9999;padding:1rem}
#psh-app .modal-overlay.open{display:flex}
#psh-app .modal{background:#fff;border-radius:var(--rl);padding:1.75rem;width:100%;max-width:460px;border:1px solid var(--border);max-height:90vh;overflow-y:auto}
#psh-app .modal-title{font-family:var(--serif);font-size:1.15rem;font-weight:600;color:var(--ink);margin-bottom:6px}
#psh-app .modal-sub{font-size:13px;color:var(--ink3);margin-bottom:1.25rem}
#psh-app .modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:1.25rem}
#psh-app .modal-output{background:var(--bg);border:1px solid var(--border);border-radius:var(--r);padding:12px;font-size:13px;color:var(--ink2);line-height:1.7;min-height:80px;max-height:260px;overflow-y:auto;white-space:pre-wrap}

/* UPGRADE */
#psh-app .upgrade-feature{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--ink2);margin-bottom:8px}
#psh-app .upgrade-price{background:var(--gold-bg);border-radius:var(--r);padding:14px;text-align:center;margin:1rem 0}
#psh-app .upgrade-price-num{font-family:var(--serif);font-size:1.5rem;font-weight:700;color:var(--ink)}

/* NOTIF */
#psh-app .notif{position:fixed;bottom:20px;right:20px;background:var(--ink);color:#fff;padding:10px 18px;border-radius:var(--r);font-size:13px;z-index:10000;opacity:0;transition:opacity .3s;pointer-events:none}
#psh-app .notif.show{opacity:1}
#psh-app .notif.error{background:var(--red)}
#psh-app .notif.success{background:var(--green)}
