@charset "UTF-8";:root{--vino-900: #4A0F1E;--vino-800: #5C1624;--vino-700: #6B1A2A;--vino-600: #842333;--vino-100: #F4E2E6;--vino-50: #FAF0F2;--oro-700: #8B6914;--oro-600: #B07F2A;--oro-500: #C8963E;--oro-400: #D9B065;--oro-100: #F4E6CB;--oro-50: #FBF4E3;--verde-700: #2B5132;--verde-600: #386641;--verde-100: #DFEBE0;--crema: #FAF7F2;--crema-2: #F2EBDD;--crema-3: #E8DEC8;--blanco-roto: #FCFAF6;--gris-calido-100: #EEE8DB;--gris-calido-200: #D9D1BD;--gris-calido-400: #9C927E;--gris-calido-600: #6B6452;--tinta: #2A1F18;--tinta-suave: #5A4F45;--rojo-suave: #9B2335;--sz-arganda: #6B1A2A;--sz-sanmartin: #C8963E;--sz-elmolar: #386641;--sz-navalcarnero: #8B6914;--sombra-card: 0 2px 10px rgba(74, 15, 30, .06), 0 1px 2px rgba(74, 15, 30, .05);--sombra-card-hover: 0 8px 24px rgba(74, 15, 30, .1), 0 2px 4px rgba(74, 15, 30, .05);--sombra-modal: 0 30px 80px rgba(42, 31, 24, .32), 0 8px 24px rgba(42, 31, 24, .18);--radio-sm: 6px;--radio: 10px;--radio-lg: 16px;--font-display: Playfair Display, Cormorant Garamond, Georgia, serif;--font-body: Inter, Source Sans Pro, system-ui, -apple-system, sans-serif;--sidebar-w: 260px;--header-h: 76px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Inter,Source Sans Pro,system-ui,-apple-system,sans-serif;background:#faf7f2;color:#2a1f18;font-size:14px;line-height:1.5;background-image:radial-gradient(rgba(107,26,42,.025) 1px,transparent 1px),radial-gradient(rgba(139,105,20,.018) 1px,transparent 1px);background-size:24px 24px,36px 36px;background-position:0 0,12px 18px}.app{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.main{min-width:0}.header{height:76px;background:#fcfaf6;border-bottom:1px solid #E8DEC8;padding:0 32px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50}.header h1{font-family:Playfair Display,Cormorant Garamond,Georgia,serif;font-weight:600;font-size:26px;margin:0;letter-spacing:-.01em;color:#4a0f1e}.header-eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#b07f2a;font-weight:700;margin-bottom:2px}.header-right{display:flex;gap:10px;align-items:center}.content{padding:28px 32px 56px;max-width:1480px}.btn{font-family:Inter,Source Sans Pro,system-ui,-apple-system,sans-serif;font-size:13px;font-weight:600;padding:10px 16px;border-radius:6px;border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;gap:8px;line-height:1;transition:background .15s ease,transform .15s ease}.btn:active{transform:translateY(1px)}.btn-primary{background:#6b1a2a;color:#faf7f2}.btn-primary:hover{background:#842333}.btn-secondary{background:transparent;color:#6b1a2a;border-color:#6b1a2a}.btn-secondary:hover{background:#faf0f2}.btn-ghost{background:transparent;color:#5a4f45}.btn-ghost:hover{background:#eee8db;color:#2a1f18}.btn-danger{background:transparent;color:#9b2335;border-color:#9b2335}.btn-danger:hover{background:#f9e1e3}.btn-sm{padding:7px 11px;font-size:12px}.select,.input,.textarea{font-family:Inter,Source Sans Pro,system-ui,-apple-system,sans-serif;font-size:13px;background:#fcfaf6;border:1px solid #E8DEC8;border-radius:6px;padding:9px 12px;color:#2a1f18;width:100%;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.select:focus,.input:focus,.textarea:focus{border-color:#c8963e;box-shadow:0 0 0 3px #c8963e2e}.textarea{resize:vertical;min-height:80px;line-height:1.5}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#5a4f45}.field-help{font-size:11.5px;color:#6b6452}.char-count{font-size:11px;color:#9c927e;text-align:right}.segmented{display:inline-flex;background:#f2ebdd;border-radius:6px;padding:3px;gap:2px}.segmented button{appearance:none;border:0;background:transparent;font-family:Inter,Source Sans Pro,system-ui,-apple-system,sans-serif;font-size:12px;font-weight:600;color:#5a4f45;padding:6px 12px;border-radius:5px;cursor:pointer;letter-spacing:.01em}.segmented button.active{background:#fcfaf6;color:#5c1624;box-shadow:0 1px 2px #0000000f}.badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;padding:4px 9px;border-radius:999px;letter-spacing:.02em;line-height:1.2;border:1px solid transparent}.badge-dot{width:6px;height:6px;border-radius:50%}.badge-green{background:#dfebe0;color:#2b5132;border-color:#38664133}.badge-green .badge-dot{background:#386641}.badge-ocre{background:#f4e6cb;color:#8b6914;border-color:#b07f2a40}.badge-ocre .badge-dot{background:#b07f2a}.badge-gris{background:#eee8db;color:#6b6452;border-color:#d9d1bd}.badge-gris .badge-dot{background:#9c927e}.badge-vino{background:#f4e2e6;color:#5c1624;border-color:#6b1a2a2e}.badge-vino .badge-dot{background:#6b1a2a}.badge-rojo{background:#fbe7ea;color:#9b2335;border-color:#9b233533}.badge-rojo .badge-dot{background:#9b2335}.card{background:#faf7f2;border:1px solid #E8DEC8;border-radius:10px;box-shadow:0 2px 10px #4a0f1e0f,0 1px 2px #4a0f1e0d;overflow:hidden}.card-header{padding:16px 20px 12px;border-bottom:1px solid #E8DEC8;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.card-header>*{min-width:0}.card-header h2,.card-header h3{font-family:Playfair Display,Cormorant Garamond,Georgia,serif;font-weight:600;margin:0;letter-spacing:-.005em;color:#4a0f1e}.card-header h2{font-size:19px}.card-header h3{font-size:16px}.card-header .eyebrow{font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:#b07f2a;margin-bottom:4px}.card-body{padding:18px 20px}.kpi-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.kpi{background:#faf7f2;border:1px solid #E8DEC8;border-left:4px solid #C8963E;border-radius:10px;padding:16px 18px;box-shadow:0 2px 10px #4a0f1e0f,0 1px 2px #4a0f1e0d;display:flex;flex-direction:column;gap:8px;min-height:130px}.kpi-label{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#5a4f45;line-height:1.3}.kpi-value{font-family:Playfair Display,Cormorant Garamond,Georgia,serif;font-weight:600;font-size:34px;color:#4a0f1e;line-height:1;letter-spacing:-.01em}.kpi-foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.kpi-delta{font-size:12px;font-weight:600}.kpi-delta.up{color:#386641}.kpi-delta.down{color:#9b2335}.kpi-meta{font-size:11.5px;color:#6b6452}.table{width:100%;border-collapse:collapse;font-size:13px;table-layout:auto}.table thead th{text-align:left;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#5c1624;padding:12px 16px;background:#faf0f2;border-bottom:1px solid #F4E2E6}.table tbody td{padding:13px 16px;border-bottom:1px solid #E8DEC8;vertical-align:middle}.table tbody tr:nth-child(2n) td{background:#fcfaf6}.table tbody tr:nth-child(odd) td{background:transparent}.table tbody tr:hover td{background:#fbf4e3}.table .num{font-variant-numeric:tabular-nums}.actions{display:inline-flex;gap:4px}.action-btn{appearance:none;border:1px solid transparent;background:transparent;padding:5px 7px;border-radius:5px;cursor:pointer;color:#5a4f45}.action-btn:hover{color:#6b1a2a;background:#faf0f2}.sz-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle}.sz-arganda{background:#6b1a2a}.sz-sanmartin{background:#c8963e}.sz-elmolar{background:#386641}.sz-navalcarnero{background:#8b6914}.section-title{font-family:Playfair Display,Cormorant Garamond,Georgia,serif;font-size:22px;color:#4a0f1e;font-weight:600;margin:0 0 4px;letter-spacing:-.01em}.section-eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:#b07f2a;margin:0 0 16px}.row-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.row-3{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:20px}.row-2>*,.row-3>*{min-width:0}hr.divider{border:0;border-top:1px dashed #E8DEC8;margin:16px 0}.avatar-lg{width:92px;height:92px;border-radius:50%;background:#6b1a2a;color:#faf7f2;font-family:Playfair Display,Cormorant Garamond,Georgia,serif;font-size:38px;font-weight:600;display:grid;place-items:center;border:3px solid #C8963E;box-shadow:0 6px 18px #4a0f1e38}.modal-backdrop{position:fixed;inset:0;background:#2a1f188c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;z-index:200;padding:40px}.modal{background:#faf7f2;border-radius:16px;width:100%;max-width:640px;box-shadow:0 30px 80px #2a1f1852,0 8px 24px #2a1f182e;border:1px solid #E8DEC8;border-top:4px solid #C8963E;max-height:calc(100vh - 80px);display:flex;flex-direction:column}.modal-header{padding:22px 26px 16px;border-bottom:1px solid #E8DEC8}.modal-header h2{font-family:Playfair Display,Cormorant Garamond,Georgia,serif;font-size:22px;margin:0;color:#4a0f1e;font-weight:600}.modal-header p{font-size:12.5px;color:#5a4f45;margin:4px 0 0}.modal-body{padding:22px 26px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.modal-footer{padding:16px 26px;border-top:1px solid #E8DEC8;display:flex;justify-content:flex-end;gap:10px;background:#fcfaf6;border-radius:0 0 16px 16px}.modal-confirm{max-width:440px}.progress{height:8px;background:#f2ebdd;border-radius:999px;overflow:hidden}.progress>span{display:block;height:100%;background:linear-gradient(90deg,#6b1a2a,#842333);border-radius:999px}.icon-btn{width:38px;height:38px;border-radius:50%;background:#f2ebdd;border:1px solid #E8DEC8;display:grid;place-items:center;color:#5c1624;cursor:pointer;position:relative}.icon-btn:hover{background:#fbf4e3}.icon-btn .dot{position:absolute;top:8px;right:8px;width:8px;height:8px;background:#9b2335;border-radius:50%;border:2px solid #FCFAF6}.avatar-sm{width:38px;height:38px;border-radius:50%;background:#6b1a2a;color:#faf7f2;display:grid;place-items:center;font-family:Playfair Display,Cormorant Garamond,Georgia,serif;font-weight:600;font-size:14px;border:2px solid #C8963E}.user-avatar{width:36px;height:36px;border-radius:50%;background:#c8963e;color:#4a0f1e;font-family:Playfair Display,Cormorant Garamond,Georgia,serif;font-weight:700;display:grid;place-items:center;font-size:14px;letter-spacing:-.01em;flex:0 0 auto}.tabs{display:flex;gap:4px;border-bottom:1px solid #E8DEC8;margin-bottom:20px}.tabs button{appearance:none;border:0;background:transparent;font-family:Inter,Source Sans Pro,system-ui,-apple-system,sans-serif;font-size:13px;font-weight:600;padding:10px 16px;color:#5a4f45;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.tabs button.active{color:#5c1624;border-bottom-color:#c8963e}.timeline{display:flex;flex-direction:column}.tl-item{display:grid;grid-template-columns:38px 1fr;gap:14px;padding:14px 0;border-bottom:1px dashed #E8DEC8;position:relative}.tl-item:last-child{border-bottom:0}.tl-icon{width:32px;height:32px;border-radius:50%;background:#f2ebdd;display:grid;place-items:center;color:#6b1a2a;border:1px solid #E8DEC8}.tl-desc{font-size:13px}.tl-meta{font-size:11.5px;color:#6b6452;margin-top:2px}.insignia{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.insignia .med{width:64px;height:64px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#e6bb6a,#c8963e 60%,#8b6914);display:grid;place-items:center;color:#4a0f1e;font-family:Playfair Display,Cormorant Garamond,Georgia,serif;font-weight:700;font-size:20px;box-shadow:0 4px 10px #8b69144d,inset 0 0 0 2px #ffffff40;border:2px solid #F0CB85}.insignia.locked .med{background:#eee8db;color:#9c927e;border-color:#d9d1bd;box-shadow:none}.insignia .lbl{font-size:11px;color:#5a4f45;font-weight:500;line-height:1.2}.side-panel{background:#fcfaf6;border:1px solid #E8DEC8;border-left:3px solid #C8963E;border-radius:10px;padding:18px 20px}.side-panel h3{line-height:1.25}.perf{border-top:2px dashed #E8DEC8;margin:14px 0}.label-mini{font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:#8b6914}.podium{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;align-items:end;margin-bottom:16px}.podium-step{background:#f2ebdd;border-radius:8px 8px 0 0;padding:10px 6px 12px;text-align:center;border:1px solid #E8DEC8;border-bottom:0}.podium-step.gold{background:linear-gradient(180deg,#f4e6cb,#fbf4e3);border-color:#d9b065;height:120px}.podium-step.silver{background:linear-gradient(180deg,#e8e2d5,#f2ebdd);border-color:#d9d1bd;height:100px}.podium-step.bronze{background:linear-gradient(180deg,#e8d2b0,#f0e2c8);border-color:#cdb37f;height:84px}.podium .cup{font-size:22px}.podium .pos{font-family:Playfair Display,Cormorant Garamond,Georgia,serif;font-size:22px;font-weight:700;color:#4a0f1e}.podium .uid{font-size:11px;color:#5a4f45;font-variant-numeric:tabular-nums}.podium .visited{font-size:10.5px;color:#6b1a2a;font-weight:600;margin-top:2px}.qr-box{background:#fff;width:280px;height:160px;border-radius:6px;border:1px solid #E8DEC8;padding:10px;position:relative}.qr-box img{width:100%}.map-card{display:grid;grid-template-columns:56px 1fr auto;gap:12px;padding:12px;background:#fcfaf6;border:1px solid #E8DEC8;border-radius:10px;align-items:center;cursor:pointer}.map-card.active{border-color:#c8963e;background:#fbf4e3}.map-thumb{width:56px;height:56px;border-radius:8px;background:linear-gradient(135deg,#f4e2e6,#f4e6cb);display:grid;place-items:center;color:#6b1a2a;border:1px solid #E8DEC8}.map-name{font-weight:600;font-size:13.5px;color:#4a0f1e}.map-meta{font-size:11.5px;color:#6b6452;margin-top:2px}.input.locked,.select.locked{background:#eee8db;color:#6b6452;cursor:not-allowed}.locked-note{font-size:11px;font-style:italic;color:#6b6452;margin-top:4px}.upload-tile{border:1.5px dashed #C8963E;background:#fbf4e3;border-radius:10px;padding:24px 16px;text-align:center;color:#5a4f45;cursor:pointer;transition:border-color .15s,background .15s;display:flex;flex-direction:column;align-items:center;justify-content:center}.upload-tile:hover{border-color:#6b1a2a;background:#fcf8ec}.upload-tile.drag-over{border-color:#6b1a2a;background:#f6ead3;outline:2px solid rgba(107,26,42,.35);outline-offset:2px}.photo-360-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}.photo-360{position:relative;aspect-ratio:2/1;border-radius:8px;background:linear-gradient(135deg,#6b1a2a,#b07f2a);display:grid;place-items:center;color:#faf7f2;font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.cell-badge{font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;padding:3px 7px;border-radius:4px;background:#f2ebdd;color:#5a4f45}
