:root{--color-primary:#587b7f;--color-secondary:#edf7fa;--color-accent:#e2c044;--color-highlight:#ff3f00;--color-card-background:#fff;--font-body:"Quicksand", sans-serif;--radius-sm:0px;--radius-md:0px;--radius-lg:0px;--shadow-strength:0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--color-secondary);color:var(--color-primary);margin:0}a{color:var(--color-primary)}.page-shell{max-width:960px;margin:0 auto;padding:0 24px}.site-header{background:var(--color-secondary);border-bottom:2px solid var(--color-primary);color:var(--color-primary);justify-content:space-between;align-items:center;padding:20px 0;display:flex}.site-header a{color:var(--color-primary);text-decoration:none}.site-header .logo{font-size:1.25rem;font-weight:700}.site-nav{gap:24px;margin:0;padding:0;list-style:none;display:flex}.site-nav a{opacity:.85;text-transform:uppercase;letter-spacing:.06em;padding-bottom:4px;font-size:.85rem;font-weight:700;position:relative}.site-nav a:after{content:"";background:var(--color-accent);transform-origin:0;height:2px;transition:transform .2s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.site-nav a:hover,.site-nav a.active{opacity:1;color:var(--color-accent)}.site-nav a:hover:after,.site-nav a.active:after{transform:scaleX(1)}.site-footer{text-align:center;color:var(--color-primary);opacity:.8;padding:32px 0}.home-hero-block{position:relative}.hero{padding:64px 380px 32px 0}.hero-copy{max-width:640px}.hero h1{color:var(--color-primary);margin:0 0 12px;font-size:2.5rem}.hero p{color:var(--color-primary);max-width:60ch;font-size:1.1rem}.text-highlight{background:var(--color-accent);color:var(--color-primary);padding:1px 8px;font-weight:700}.hero-portrait{width:340px;position:absolute;top:50%;right:0;transform:translateY(-50%)}.hero-portrait img{width:100%;height:auto;image-rendering:pixelated;display:block}@media (width<=800px){.home-hero-block{flex-direction:column;align-items:center;display:flex}.hero{text-align:center;padding-right:0}.hero-copy{max-width:none}.hero-portrait{order:-1;width:200px;margin-bottom:16px;position:static;transform:none}}.card-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px;margin:24px 0 48px;display:grid}.card{background:var(--color-card-background);border:3px solid var(--color-primary);border-radius:var(--radius-md);color:var(--color-primary);box-shadow:calc(var(--shadow-strength) * 6px) calc(var(--shadow-strength) * 6px) 0 var(--color-primary);padding:20px;text-decoration:none;transition:transform .15s,border-color .15s,box-shadow .15s}.card:hover{transform:translate(calc(var(--shadow-strength) * -3px), calc(var(--shadow-strength) * -3px));border-color:var(--color-accent);box-shadow:calc(var(--shadow-strength) * 9px) calc(var(--shadow-strength) * 9px) 0 var(--color-primary)}.card h3{color:var(--color-primary);margin:0 0 8px}.card p{opacity:.85;margin:0;font-size:.95rem}.ranked-list{flex-direction:column;gap:12px;margin:24px 0 48px;padding:0;list-style:none;display:flex}.ranked-item{background:var(--color-card-background);border-left:6px solid var(--color-accent);border-radius:var(--radius-sm);align-items:center;gap:16px;padding:16px 20px;display:flex}.ranked-item .rank{color:var(--color-accent);align-self:center;min-width:2ch;font-size:1.5rem;font-weight:700}.ranked-item-body{flex:1;min-width:0}.ranked-item .title{margin:0 0 4px;font-weight:600}.ranked-item .note{color:var(--color-primary);margin:0;font-size:.95rem}.ranked-item-image{object-fit:cover;border-radius:8px;flex-shrink:0;align-self:center;width:64px;height:64px}.tag-list{flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.tag-chip{background:var(--color-card-background);color:var(--color-primary);border:2px solid var(--color-primary);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em;padding:2px 10px;font-size:.75rem;font-weight:700}.section-heading{color:var(--color-primary);border-bottom:3px solid var(--color-accent);padding-bottom:4px;display:inline-block}.section-toggle{cursor:pointer;text-align:left;width:100%;font-family:var(--font-body);background:0 0;border:none;align-items:center;gap:8px;margin:24px 0 4px;padding:0;display:flex}.section-toggle h3{margin:0}.section-toggle-arrow{color:var(--color-accent);font-size:.9rem}.section-toggle-count{color:var(--color-primary);opacity:.7;font-size:.85rem}.page-heading-row{align-items:center;gap:12px;margin-top:32px;margin-bottom:8px;display:flex}.page-heading-row .section-heading{margin:0}.back-link{background:var(--color-primary);width:36px;height:36px;color:var(--color-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background-color .15s;display:inline-flex}.back-link:hover{background:var(--color-accent)}.markdown-body{margin-top:24px;line-height:1.6}.markdown-body h2,.markdown-body h3{color:var(--color-primary)}.markdown-body code{border-radius:var(--radius-sm);background:#0000000f;padding:2px 6px}.markdown-body img{border-radius:var(--radius-md);max-width:100%}.markdown-body table{border-collapse:collapse;width:100%}.markdown-body th,.markdown-body td{border:1px solid var(--color-primary);padding:8px 12px}.markdown-body strong{background:var(--color-accent);color:var(--color-primary);padding:1px 6px;font-weight:700}.callout{--callout-color:var(--color-primary);border:2px solid var(--callout-color);background:var(--color-card-background);border-radius:var(--radius-sm);border-left-width:6px;margin:20px 0;padding:14px 18px}.callout:before{content:attr(data-callout-title);color:var(--callout-color);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.85rem;font-weight:700;display:block}.callout p{margin:0}.callout p+p{margin-top:8px}.callout-info{--callout-color:var(--color-accent)}.callout-tip{--callout-color:var(--color-highlight)}.callout-todo{border-style:dashed}.callout-quote{background:0 0;border-width:0 0 0 4px;padding:4px 18px;font-style:italic}.callout-quote:before{content:none}@media (width<=1000px){.hero h1{font-size:2rem}}[data-anime]{opacity:0;transition:opacity .8s ease-in-out,transform .8s ease-in-out}[data-anime=left]{transform:translate(-50px)}[data-anime=right]{transform:translate(50px)}[data-anime=top]{transform:translateY(-50px)}[data-anime].is-visible{opacity:1;transform:translate(0,0)}.dr-btn{border:2px solid var(--color-primary);border-radius:var(--radius-sm);background:var(--color-card-background);color:var(--color-primary);cursor:pointer;font-family:var(--font-body);padding:8px 16px;font-weight:600;text-decoration:none;display:inline-block}.dr-btn.primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-primary)}.dr-btn.danger{background:var(--color-highlight);border-color:var(--color-highlight);color:#fff}.dr-btn.ghost{background:0 0}.dr-btn:disabled{opacity:.5;cursor:not-allowed}.dr-field{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.dr-field label{color:var(--color-primary);font-size:.9rem;font-weight:600}.dr-field input[type=text],.dr-field input[type=number],.dr-field textarea,.dr-field select{border:1px solid var(--color-primary);border-radius:var(--radius-sm);font-family:var(--font-body);box-sizing:border-box;background:var(--color-card-background);width:100%;color:var(--color-primary);padding:8px}.dr-field textarea{resize:vertical}.dr-panel{background:var(--color-card-background);border:2px solid var(--color-primary);border-radius:var(--radius-md);margin-bottom:20px;padding:20px}.dr-panel h3{color:var(--color-primary);margin-top:0}.dr-status-text{color:var(--color-highlight);margin-left:12px;font-size:.9rem}.dr-save-indicator{color:var(--color-primary);opacity:.7;margin-left:8px;font-size:.85rem}.dr-attribute-row,.dr-skill-row,.dr-equipment-row{border-bottom:1px solid #00000014;align-items:center;gap:12px;padding:8px 0;display:flex}.dr-attribute-row:last-child,.dr-skill-row:last-child,.dr-equipment-row:last-child{border-bottom:none}.dr-attribute-row .dr-label,.dr-skill-row .dr-label{flex:1;font-weight:600}.dr-stepper{align-items:center;gap:8px;display:flex}.dr-stepper button{border:2px solid var(--color-primary);background:var(--color-card-background);width:28px;height:28px;color:var(--color-primary);cursor:pointer;border-radius:50%;font-weight:700}.dr-stepper button:disabled{opacity:.3;cursor:not-allowed}.dr-stepper .dr-value{text-align:center;min-width:2ch;font-size:1.1rem;font-weight:700}.dr-budget-banner{border-radius:var(--radius-sm);background:var(--color-secondary);color:var(--color-primary);margin-bottom:16px;padding:10px 16px;font-weight:600}.dr-budget-banner.over{background:var(--color-highlight);color:#fff}.dr-wizard-steps{flex-wrap:wrap;gap:6px;margin-bottom:20px;font-size:.85rem;display:flex}.dr-wizard-steps span{background:var(--color-secondary);color:var(--color-primary);opacity:.6;border-radius:999px;padding:4px 10px}.dr-wizard-steps span.current{background:var(--color-accent);color:var(--color-primary);opacity:1;font-weight:700}.dr-wizard-steps span.done{opacity:1}.dr-option-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin:16px 0;display:grid}.dr-option-card{border:2px solid var(--color-primary);border-radius:var(--radius-md);cursor:pointer;background:var(--color-card-background);padding:14px}.dr-option-card.selected{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent)}.dr-option-card h4{color:var(--color-primary);margin:0 0 6px}.dr-badge{border-radius:999px;margin-left:6px;padding:2px 8px;font-size:.75rem;font-weight:600;display:inline-block}.dr-badge.completa{background:var(--color-secondary);color:var(--color-primary)}.dr-badge.revisar{background:var(--color-highlight);color:#fff}.dr-slot-bar{background:var(--color-secondary);border-radius:999px;height:10px;margin:6px 0 16px;overflow:hidden}.dr-slot-bar-fill{background:var(--color-accent);height:100%}.dr-slot-bar-fill.over{background:var(--color-highlight)}.dr-rank-track{align-items:center;margin:16px 0;display:flex}.dr-rank-node-wrapper{flex:1;align-items:center;display:flex}.dr-rank-node-wrapper:last-child{flex:0}.dr-rank-node{cursor:pointer;font-family:var(--font-body);background:0 0;border:none;flex-direction:column;align-items:center;gap:6px;padding:0;display:flex}.dr-rank-node-circle{border:3px solid var(--color-primary);background:var(--color-card-background);width:36px;height:36px;color:var(--color-primary);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex}.dr-rank-node.done .dr-rank-node-circle{background:var(--color-primary);color:var(--color-secondary)}.dr-rank-node.current .dr-rank-node-circle{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-primary)}.dr-rank-node-label{color:var(--color-primary);white-space:nowrap;font-size:.8rem;font-weight:600}.dr-rank-connector{background:var(--color-primary);flex:1;height:3px;margin:0 4px 22px}.dr-rank-connector.done{background:var(--color-accent)}.dr-print-sheet{display:none}@media print{body *{visibility:hidden}.dr-print-sheet,.dr-print-sheet *{visibility:visible}.dr-print-sheet{width:100%;display:block;position:absolute;top:0;left:0}}.dr-print-sheet{color:#1a1a1a;padding:24px;font-family:Georgia,Times New Roman,serif}.dr-print-header h1{border-bottom:3px double #1a1a1a;margin:0;padding-bottom:8px;font-size:2rem}.dr-print-subtitle{margin:4px 0;font-style:italic}.dr-print-concept{margin:8px 0}.dr-print-section{page-break-inside:avoid;margin-top:16px}.dr-print-section h2{text-transform:uppercase;letter-spacing:1px;border-bottom:2px solid #1a1a1a;margin-bottom:8px;font-size:1rem}.dr-print-attribute-grid,.dr-print-resource-row{flex-wrap:wrap;gap:10px;display:flex}.dr-print-attribute-box,.dr-print-resource-box{text-align:center;border:2px solid #1a1a1a;border-radius:8px;min-width:70px;padding:8px 12px}.dr-print-attribute-value{font-size:1.4rem;font-weight:700;display:block}.dr-print-attribute-label{text-transform:uppercase;font-size:.75rem;display:block}.dr-print-skill-columns{flex-wrap:wrap;gap:16px;display:flex}.dr-print-skill-column{flex:1;min-width:140px}.dr-print-skill-column h3{border-bottom:1px solid #999;margin:0 0 4px;font-size:.9rem}.dr-print-skill-row{justify-content:space-between;padding:2px 0;font-size:.85rem;display:flex}.dr-print-table{border-collapse:collapse;width:100%}.dr-print-table th,.dr-print-table td{text-align:left;border:1px solid #999;padding:4px 8px;font-size:.85rem}
