:root{--bg: #f6f3ea;--surface: #fffdf8;--ink: #111317;--ink-soft: #4e5968;--accent: #0f766e;--accent-2: #f97316;--danger: #dc2626;--radius: 14px}*{box-sizing:border-box}body{margin:0;font-family:IBM Plex Sans,sans-serif;color:var(--ink);background:radial-gradient(circle at 0 0,#fde8d7 0,var(--bg) 45%)}h1,h2,h3,.brand{font-family:Space Grotesk,sans-serif}button,input,textarea{font:inherit}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:1rem}.auth-card{width:min(420px,100%);background:var(--surface);border:1px solid #e6ddca;border-radius:var(--radius);padding:1.2rem;display:grid;gap:.7rem}.auth-card input,.card input,.card textarea,.section-card input,.section-card textarea{border:1px solid #d6d2c8;border-radius:10px;padding:.6rem .8rem}button,.btn{border:0;border-radius:10px;background:var(--accent);color:#fff;padding:.5rem .8rem;cursor:pointer;text-decoration:none}.error{color:var(--danger)}.app-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{border-right:1px solid #e2dccf;background:#fbf6ea;padding:1rem;display:flex;flex-direction:column;gap:1rem}.sidebar nav{display:grid;gap:.5rem}.sidebar nav a{color:var(--ink);text-decoration:none}.sidebar nav a.active{color:var(--accent);font-weight:700}.sidebar-footer{margin-top:auto;display:grid;gap:.6rem}.content{padding:1rem;overflow:auto}.page-header{display:flex;justify-content:space-between;gap:1rem;align-items:center;flex-wrap:wrap}.toolbar{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.card{background:var(--surface);border-radius:var(--radius);border:1px solid #eadfcb;padding:1rem;display:grid;gap:.6rem}.preview{margin-top:1rem;background:var(--surface);border-radius:var(--radius);border:1px solid #eadfcb;padding:1rem}.table-wrap{overflow:auto;background:var(--surface);border:1px solid #eadfcb;border-radius:var(--radius)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.7rem;border-bottom:1px solid #eee6d6}.actions{display:flex;gap:.4rem;flex-wrap:wrap}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.sections-list{display:grid;gap:.6rem}.section-card{border:1px solid #e6ddca;border-radius:12px;padding:.6rem;background:#fff}.section-head{display:grid;grid-template-columns:30px 1fr auto;gap:.4rem;align-items:center}.tp-screen{min-height:100vh;background:#0b0e12;color:#f3f6ff;display:grid;grid-template-rows:auto 1fr auto;border:4px solid transparent}.tp-topbar{position:sticky;top:0;z-index:10;display:flex;gap:.6rem;align-items:center;justify-content:space-between;padding:.35rem .55rem;background:#0f141cd9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-size:.85rem}.tp-controls{display:flex;gap:.35rem;align-items:center;flex-wrap:wrap}.tp-controls button{padding:.25rem .55rem;font-size:.78rem}.tp-controls input[type=range]{width:110px}.tp-body{overflow:auto;padding:1.2rem .8rem 3rem}.tp-content{margin:0 auto}.tp-content p{white-space:pre-wrap;margin:0}.tp-content h2{margin-top:0}.tp-indicator{position:fixed;bottom:10px;left:50%;transform:translate(-50%);font-size:.75rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:.2rem .7rem}.tp-badge{position:fixed;top:40px;right:12px;font-size:.75rem;padding:.2rem .5rem;border-radius:999px;background:#f59e0b;color:#131722}.resume-banner{position:fixed;top:42px;left:50%;transform:translate(-50%);z-index:20;background:#102239;border:1px solid #2f4d6f;border-radius:999px;padding:.3rem .6rem;display:flex;gap:.45rem;align-items:center}.resume-banner button{padding:.2rem .45rem;font-size:.72rem}.tp-screen.info{border-color:#10b981}.tp-screen.warn{border-color:#f59e0b;box-shadow:inset 0 0 30px #f59e0b2e}.tp-screen.warn-strong{border-color:#fb923c;box-shadow:inset 0 0 45px #fb923c3d}.tp-screen.danger{border-color:#ef4444;animation:pulseBorder 1.1s infinite}@keyframes pulseBorder{0%,to{box-shadow:inset 0 0 20px #ef44442e}50%{box-shadow:inset 0 0 42px #ef444459}}@media(max-width:960px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid #e2dccf}.grid-2{grid-template-columns:1fr}.tp-controls input[type=range]{width:90px}}@media(max-width:600px){.tp-topbar{display:grid;grid-template-columns:1fr;justify-items:start;gap:.25rem}.tp-controls{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}}
