.sim-controls,.calc-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}.sim-control,.calc-label{display:grid;gap:7px;background:#fff;border:1px solid #d7e3ed;border-radius:12px;padding:12px;color:#29445e;font-weight:800}.sim-control input{width:100%;accent-color:#0b63ce}.calc-select,.calc-input{width:100%;border:1px solid #b9cddd;border-radius:9px;background:#fff;color:#17304d;padding:10px;font:inherit}.sim-output{margin-top:14px}.generation-chart{display:grid;gap:6px;max-height:430px;overflow:auto;padding-right:4px}.generation-row{display:grid;grid-template-columns:38px 1fr 72px;gap:8px;align-items:center;font-size:.78rem;color:#405873}.generation-bar{height:14px;border-radius:999px;background:#e7edf3;overflow:hidden}.generation-bar i{display:block;height:100%;background:linear-gradient(90deg,#159357,#0b8c8c);border-radius:inherit}.generation-row strong{text-align:right;color:#082b5c}.sim-note{margin:12px 0 0;color:#5a6b7d;font-size:.84rem}.calc-result{display:grid;gap:4px;background:linear-gradient(135deg,#082b5c,#0b63ce);color:#fff;border-radius:15px;padding:18px}.calc-result strong{font-family:Georgia,serif;font-size:1.45rem}.calc-result span{color:#e6f3ff}.geo-timeline{display:grid;gap:0}.geo-item{position:relative;display:grid;grid-template-columns:46px 1fr;gap:12px;padding:0 0 22px}.geo-item:not(:last-child):before{content:"";position:absolute;left:20px;top:34px;bottom:-2px;width:5px;background:linear-gradient(#0b63ce,#0b8c8c);border-radius:99px}.geo-dot{position:relative;z-index:1;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#f2b51d;color:#082b5c;font-weight:950}.geo-item>div{background:#fff;border:2px solid #d7e4ef;border-radius:15px;padding:15px}.geo-item h3{font-family:Georgia,serif;color:#082b5c;font-size:1.45rem;margin:0 0 3px}.geo-item strong{color:#0b63ce;font-size:.86rem}.geo-item p{color:#52657a;margin:7px 0 0}.map-controls{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:8px}.map-controls .calc-select{width:auto;min-width:180px}.fossil-map{position:relative;width:100%;aspect-ratio:2/1;margin-top:12px;border-radius:16px;overflow:hidden;border:2px solid #9fc1d8;background-color:#dff2ff;background-image:radial-gradient(ellipse at 18% 38%,#b8deb1 0 11%,transparent 11.5%),radial-gradient(ellipse at 28% 69%,#b8deb1 0 8%,transparent 8.5%),radial-gradient(ellipse at 49% 35%,#b8deb1 0 8%,transparent 8.5%),radial-gradient(ellipse at 54% 58%,#b8deb1 0 12%,transparent 12.5%),radial-gradient(ellipse at 69% 35%,#b8deb1 0 16%,transparent 16.5%),radial-gradient(ellipse at 83% 72%,#b8deb1 0 6%,transparent 6.5%);box-shadow:inset 0 0 50px rgba(8,43,92,.08)}.fossil-map:after{content:"Mapa esquemático · posições calculadas a partir das coordenadas PBDB";position:absolute;left:8px;bottom:7px;background:rgba(255,255,255,.9);color:#35506c;border-radius:7px;padding:4px 7px;font-size:.63rem;font-weight:800}.fossil-dot{position:absolute;transform:translate(-50%,-50%);width:10px;height:10px;border:2px solid #fff;border-radius:50%;background:#e9693e;box-shadow:0 1px 5px rgba(0,0,0,.4);padding:0;cursor:pointer;z-index:2}.fossil-dot:hover,.fossil-dot:focus{width:16px;height:16px;background:#f2b51d;outline:none;z-index:3}.dna-seq-input{width:100%;box-sizing:border-box;border:2px solid #9dc2df;border-radius:14px;padding:14px;background:#fff;color:#082b5c;font:700 1rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;text-transform:uppercase;resize:vertical}.dna-seq-input:focus{outline:3px solid rgba(11,99,206,.16);border-color:#0b63ce}.dna-results{margin-top:14px}.dna-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.dna-stat{display:grid;gap:2px;background:linear-gradient(135deg,#0b63ce,#0b8c8c);color:#fff;border-radius:14px;padding:14px}.dna-stat strong{font-family:Georgia,serif;font-size:1.5rem}.dna-stat span{font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.dna-output-list{display:grid;gap:9px;margin-top:10px}.dna-output{display:grid;grid-template-columns:180px 1fr;gap:12px;align-items:start;background:#fff;border:1px solid #d4e1ec;border-radius:12px;padding:11px 13px}.dna-output b{color:#35506c}.dna-output code{overflow-wrap:anywhere;color:#082b5c;font-weight:800}.molecule-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.molecule-tabs button{border:2px solid #c8d9e6;background:#fff;color:#17304d;border-radius:999px;padding:9px 13px;font-weight:900;cursor:pointer}.molecule-tabs button.active{background:#082b5c;color:#fff;border-color:#082b5c}.molecule-panel{background:linear-gradient(135deg,#fff,#eef7ff);border:2px solid #cbddea;border-radius:18px;padding:20px}.molecule-head{display:flex;gap:12px;align-items:flex-start}.molecule-icon{font-size:2.2rem}.molecule-head h2{margin:7px 0 0}.molecule-desc{color:#405873;font-size:1rem}.mechanism-steps{display:grid;gap:9px;margin-top:14px}.mechanism-step{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start}.mechanism-step span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f2b51d;color:#082b5c;font-weight:950}.mechanism-step p{margin:3px 0;color:#405873}.pdb-links{display:grid;gap:7px;margin-top:16px;background:#082b5c;color:#fff;border-radius:13px;padding:14px}.pdb-links b{color:#ffd75c}.pdb-links a{color:#fff;text-decoration:none;font-weight:800}.pdb-links a:hover{text-decoration:underline}.phylo-seqs{display:grid;gap:7px;margin-bottom:16px}.phylo-seq{display:grid;grid-template-columns:42px 1fr;gap:10px;background:#fff;border:1px solid #d5e3ee;border-radius:10px;padding:9px 11px}.phylo-seq strong{color:#0b63ce}.phylo-seq code{font-weight:850;color:#082b5c;letter-spacing:.08em}.phylo-matrix{display:grid;gap:4px;margin-bottom:18px;overflow:auto}.phylo-row{display:grid;grid-template-columns:48px repeat(4,minmax(48px,1fr));gap:4px}.phylo-row>*{display:grid;place-items:center;min-height:38px;border-radius:8px;background:#edf5fb;color:#17304d}.phylo-row b{background:#082b5c;color:#fff}.phylo-steps{display:grid;gap:8px}.phylo-step{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start}.phylo-step span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#0b8c8c;color:#fff;font-weight:950}.phylo-step p{margin:4px 0;color:#405873}.phylo-result{display:grid;gap:6px;margin-top:14px;background:linear-gradient(135deg,#e1f6ea,#eaf4ff);border:2px solid #8bc7a7;border-radius:14px;padding:15px}.phylo-result strong{color:#0b5c3b}.phylo-result code{font-size:1.15rem;font-weight:900;color:#082b5c;overflow-wrap:anywhere}@media(max-width:620px){.sim-controls,.calc-controls{grid-template-columns:1fr}.generation-row{grid-template-columns:32px 1fr 66px}.fossil-map{aspect-ratio:1.45/1}.map-controls{display:grid}.map-controls .calc-select{width:100%}.dna-output{grid-template-columns:1fr}.phylo-row{min-width:330px}}