body {
  margin: 0;
  background: #f4faf9;
  color: #17333a;
  font-family: Arial, Helvetica, sans-serif;
}

* { box-sizing: border-box; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.app-shell { min-height: 100vh; background: radial-gradient(circle at 90% 0%, #dff5f2 0, transparent 27rem), #f5faf9; }
.topbar { position: sticky; top: 0; z-index: 20; display: flex; align-items: center; justify-content: space-between; min-height: 74px; padding: 12px clamp(18px, 4vw, 58px); border-bottom: 1px solid #d7e7e4; background: rgba(255,255,255,.94); backdrop-filter: blur(12px); }
.brand { display: flex; align-items: center; gap: 12px; border: 0; background: none; color: #17333a; text-align: left; }
.brand-icon { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 14px; color: white; background: linear-gradient(145deg,#117f90,#54b6b3); box-shadow: 0 8px 20px #117f9025; }
.brand strong,.brand small { display: block; }.brand strong { font-size: 16px; }.brand small { margin-top: 2px; color: #657d82; font-size: 12px; }
.user { display:flex; align-items:center; gap:14px; color:#60777c; font-size:13px; }.user a { color:#117f90; font-weight:700; text-decoration:none; }
.page { width: min(1180px, calc(100% - 32px)); margin: 0 auto; padding: 48px 0 80px; }.page.narrow { width: min(760px, calc(100% - 32px)); }
.hero { display:grid; grid-template-columns:1fr auto; align-items:end; gap:32px; padding: 34px; overflow:hidden; border-radius:28px; color:white; background:linear-gradient(130deg,#0d6675,#168799 58%,#54b6b3); box-shadow:0 22px 50px #155d6b24; }
.hero h1,.form-panel h1,.record-head h1 { margin:4px 0 12px; font-size:clamp(30px,5vw,48px); letter-spacing:-.04em; }.hero p:not(.eyebrow) { max-width:720px; margin:0; color:#e7faf8; line-height:1.6; }
.eyebrow { display:flex; align-items:center; gap:7px; margin:0 0 8px; color:#78d2d0; font-size:11px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }.hero .eyebrow { color:#b9f0eb; }
.primary,.secondary,.back { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:0 17px; border-radius:13px; font-weight:800; border:1px solid transparent; }
.primary { color:#fff; background:#117f90; box-shadow:0 8px 18px #117f9024; }.hero .primary { color:#0c6574; background:white; box-shadow:none; }.secondary { color:#136f7d; border-color:#bddbd8; background:white; }.back { padding-left:0; color:#156f7c; background:transparent; }
.primary:disabled,.secondary:disabled { opacity:.55; cursor:wait; }.wide { grid-column:1/-1; margin-top:8px; }
.stats { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin:22px 0; }.stats article { display:flex; align-items:center; gap:14px; padding:21px; border:1px solid #d9e8e5; border-radius:20px; background:#fff; box-shadow:0 8px 28px #185b650a; }.stats svg { color:#18899a; }.stats strong,.stats small { display:block; }.stats strong { font-size:27px; }.stats small { color:#6a7e82; }
.panel { border:1px solid #d8e7e4; border-radius:24px; background:#fff; box-shadow:0 12px 40px #1b5e6810; }.panel-head { display:flex; align-items:center; justify-content:space-between; padding:25px 28px 18px; border-bottom:1px solid #e1ecea; }.panel h2,.panel-head h2 { margin:0; font-size:21px; }.panel-head svg { color:#62aaa9; }
.empty { display:grid; justify-items:center; gap:8px; padding:68px 20px; color:#718589; }.empty svg { width:42px; height:42px; color:#68aaa8; }.empty h3,.empty p { margin:0; }
.session-list { display:grid; }.session-list button { display:grid; grid-template-columns:100px 100px 1.2fr 90px 110px 1fr; gap:14px; align-items:center; padding:18px 28px; border:0; border-bottom:1px solid #edf3f2; color:#29454b; background:white; text-align:left; }.session-list button:hover { background:#f2fbfa; }.status { display:inline-flex; width:max-content; padding:5px 8px; border-radius:999px; color:#7b641c; background:#fff2c6; font-size:11px; font-weight:800; text-transform:uppercase; }.status.finalizado { color:#176d59; background:#dff6ee; }
.toast { position:fixed; z-index:50; top:86px; left:50%; display:flex; gap:18px; align-items:center; max-width:min(620px,calc(100% - 32px)); padding:13px 16px; border:1px solid #b9ddda; border-radius:14px; background:#fff; box-shadow:0 18px 50px #17333a22; transform:translateX(-50%); }.toast button { border:0; color:#657d82; background:none; font-size:22px; }
.form-panel { margin-top:12px; padding:34px; }.privacy-note { display:flex; align-items:flex-start; gap:9px; padding:14px; border-radius:14px; color:#3b656b; background:#edf9f7; line-height:1.5; }.new-form { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:24px; }
.field { display:grid; gap:7px; }.field span { color:#536c71; font-size:12px; font-weight:800; }.field input,.field select,.field textarea { width:100%; min-height:43px; padding:10px 12px; border:1px solid #cfdedb; border-radius:10px; color:#18373e; outline:none; background:#fff; }.field textarea { min-height:76px; resize:vertical; }.field input:focus,.field select:focus,.field textarea:focus { border-color:#16899a; box-shadow:0 0 0 3px #16899a16; }
.record-head { display:grid; grid-template-columns:auto 1fr auto; gap:22px; align-items:center; }.record-head h1 { margin-bottom:5px; font-size:35px; }.record-head p { margin:0; color:#678085; }.coverage { display:grid; min-width:280px; padding:18px; border:1px solid #cde5e1; border-radius:18px; background:#eef9f7; }.coverage strong { font-size:27px; }.coverage span { font-weight:800; }.coverage small { margin-top:5px; color:#607a7e; }.record-actions { display:flex; justify-content:flex-end; gap:10px; margin:18px 0; }.record-actions.bottom { margin-bottom:0; }
.area { overflow:hidden; margin:24px 0; border:1px solid #d5e5e2; border-radius:22px; background:#fff; box-shadow:0 8px 28px #1f646d0a; }.area-title { display:flex; justify-content:space-between; gap:20px; padding:17px 22px; color:#fff; background:linear-gradient(100deg,#126f7e,#48aaa7); }.area-title span { font-weight:800; }.area-title small { color:#e0f8f5; }
.rating { padding:20px 22px; border-bottom:1px solid #e5efed; }.rating:last-child { border-bottom:0; }.activity { display:flex; align-items:center; gap:10px; margin-bottom:13px; }.activity>span { display:grid; flex:0 0 28px; width:28px; height:28px; place-items:center; border-radius:9px; color:#137481; background:#e5f5f3; font-weight:800; }.rating-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:10px; }.text-grid { display:grid; grid-template-columns:1.3fr 1fr; gap:12px; margin-top:12px; }.mini select { min-height:39px; padding:7px 9px; }
.modulator { display:grid; grid-template-columns:1.1fr 100px 1fr .7fr 1fr; gap:12px; align-items:end; padding:17px 22px; border-bottom:1px solid #e5efed; }.modulator .activity { align-self:center; margin:0; }.notes { padding:26px; }.notes p { color:#637a7e; }.notes>textarea { width:100%; min-height:190px; padding:14px; border:1px solid #cbdedb; border-radius:14px; resize:vertical; }

@media (max-width: 850px) {
  .hero,.record-head { grid-template-columns:1fr; }.stats { grid-template-columns:1fr; }.session-list button { grid-template-columns:85px 1fr 1fr; }.session-list button span:nth-last-child(-n+3) { display:none; }.rating-grid { grid-template-columns:repeat(3,1fr); }.text-grid,.new-form { grid-template-columns:1fr; }.modulator { grid-template-columns:1fr 90px; }.modulator .field { grid-column:1/-1; }.coverage { min-width:0; }
}
@media (max-width: 540px) { .topbar { padding:10px 14px; }.brand small,.user span { display:none; }.page { width:min(100% - 20px,1180px); padding-top:24px; }.hero,.form-panel { padding:24px; border-radius:20px; }.rating-grid { grid-template-columns:repeat(2,1fr); }.rating,.modulator { padding:17px 15px; }.record-actions { position:sticky; bottom:8px; z-index:10; padding:8px; border-radius:15px; background:#f4faf9ee; backdrop-filter:blur(8px); }}

.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.team-grid article{padding:1rem;background:#f1f8f7;border-radius:12px}.team-grid p{margin:0.5rem 0 0}button:disabled{opacity:.5;cursor:not-allowed}fieldset{border:1px solid #cbdedb;border-radius:12px;padding:1rem;margin-bottom:1.5rem}
.login-shell{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-story{padding:clamp(32px,7vw,100px);background:linear-gradient(140deg,#105c6b,#168799,#5bbab2);color:white;display:flex;flex-direction:column;justify-content:center}.login-story h1{font-size:clamp(44px,5.5vw,78px);line-height:1.08;letter-spacing:-.04em;margin:20px 0}.login-story p{max-width:450px;line-height:1.7}.login-story small{margin-top:36px}.water-mark{font-size:100px;color:#b9f0eb;line-height:1;margin:20px 0}.login-card{width:min(480px,100%);margin:auto;padding:36px}.login-card h2{font-size:30px;margin:10px 0}.login-card p{line-height:1.6;color:#536c71}.login-card form{display:grid;gap:18px;margin:28px 0 12px}.login-foot{font-size:12px;border-top:1px solid #d8e7e4;padding-top:18px}.notice{padding:12px;background:#fff2cf;border-radius:8px}.account-admin{max-width:1180px;margin:0 auto;padding:0 20px 50px}.accounts-list{max-height:500px;overflow:auto;margin-top:16px}.accounts-list article{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px 0;border-bottom:1px solid #e1ecea}.accounts-list small{display:block;overflow-wrap:anywhere;margin-top:5px}.activation-result{padding:18px;background:#edf9f7;margin:16px 0;border-radius:12px}.activation-result textarea{display:block;width:100%;min-height:80px;margin:12px 0;overflow-wrap:anywhere;padding:10px}button:focus-visible{outline:3px solid #d49d22;outline-offset:3px}@media(max-width:760px){.login-shell{grid-template-columns:1fr}.login-story{padding:30px}.login-story h1{font-size:40px}.water-mark{display:none}.login-story small{margin-top:12px}.accounts-list article{flex-direction:column;align-items:start}.login-card{padding:28px}}

.interview-card{border:1px solid #cddbd7;border-radius:12px;padding:1rem;margin:1rem 0;overflow-wrap:anywhere}.interview-card summary{cursor:pointer;line-height:1.6}.interview-answer{padding:1rem 0;border-bottom:1px solid #e0e8e5}.interview-answer dd{margin:.5rem 0 0;white-space:pre-wrap;line-height:1.6}.interview-card textarea{min-height:110px}
