:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;display:block;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{font-family:inherit;font-size:.9em;font-weight:500;cursor:pointer;transition:all .25s ease}button:focus,button:focus-visible{outline:2px solid #646cff}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh}.app{max-width:1200px;margin:0 auto;padding:20px}.app-header{text-align:center;margin-bottom:40px;padding:30px 20px;background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000001a}.app-header h1{font-size:64px;margin:0 0 15px;color:#0096af;font-weight:700;text-transform:uppercase;letter-spacing:2px}.app-header p{font-size:18px;color:#555;margin:10px 0;line-height:1.5}.instruction-text{font-size:34px;color:#555;margin:8px 0 0;line-height:1.4;font-weight:500}.app-header .subtitle{font-size:16px;color:#777;font-style:italic}.finish-button{padding:20px 30px;color:#fff;border:none;border-radius:12px;cursor:pointer;font-size:18px;font-weight:700;transition:all .3s ease;box-shadow:0 4px 8px #0003;text-transform:uppercase;letter-spacing:1px;max-width:300px}.finish-button.light-background{color:#000!important;text-shadow:none}.finish-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0000004d;filter:brightness(1.1)}.results-button{padding:15px 25px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;cursor:pointer;font-size:16px;font-weight:700;transition:all .3s ease;box-shadow:0 4px 8px #667eea4d}.results-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #667eea66}.reset-button{padding:12px 24px;background:#f44336;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:500;transition:all .3s ease}.reset-button:hover{background:#d32f2f;transform:translateY(-2px);box-shadow:0 4px 8px #f443364d}.app-content{display:flex;justify-content:flex-end;width:100%}.fresque-section{display:flex;flex-direction:row;align-items:flex-end;gap:30px;width:100%;max-width:1300px;position:relative}.fresque-actions{display:flex;justify-content:center;align-items:flex-end}@media (max-width: 1024px){.app-content{justify-content:center}.fresque-section{flex-direction:column;align-items:center;gap:20px}.fresque-actions{justify-content:center;align-items:center}.finish-button{padding:18px 25px;font-size:17px;max-width:280px}.instruction-text{font-size:26px}}@media (max-width: 768px){.app{padding:15px}.app-header{padding:20px 15px;margin-bottom:25px}.app-header h1{font-size:40px}.app-header p{font-size:16px}.instruction-text{font-size:24px}.category-section{padding:20px}.category-section h2{font-size:24px}.finish-button{padding:16px 22px;font-size:16px;max-width:250px;letter-spacing:.5px}}@media (max-width: 480px){.app-header h1{font-size:36px}.app-header p{font-size:14px}.category-section{padding:15px}.finish-button{padding:14px 20px;font-size:15px;max-width:220px;letter-spacing:.5px;border-radius:10px}}@media (max-width: 360px){.finish-button{padding:12px 18px;font-size:14px;max-width:200px;letter-spacing:0px;border-radius:8px}}@media (max-width: 360px){.app-header h1{font-size:32px}}.fresque-container{position:relative;width:100%;max-width:1000px;margin:0 auto;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #0000001a}.fresque-background{position:relative;width:100%;height:auto}.fresque-image{width:100%;height:auto;display:block;object-fit:contain}.interactive-overlay{position:absolute;inset:0;pointer-events:none}.fresque-button{position:absolute;pointer-events:all;width:60px;height:40px;border:4px solid;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-weight:700;box-shadow:0 4px 8px #0000004d;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:10}.fresque-button:hover{transform:scale(1.15);box-shadow:0 6px 12px #0006;z-index:100}.fresque-button.selected{transform:scale(1.1);box-shadow:0 8px 16px #00000080;z-index:50}.button-content{display:flex;align-items:center;justify-content:center;width:100%}.button-number{font-size:16px;font-weight:700}.button-checkbox{font-size:24px;font-weight:700}.fresque-button.light-checkbox .button-checkbox{color:#000!important;text-shadow:1px 1px 2px rgba(255,255,255,.8)}.selected-info{position:absolute;top:20px;left:20px;max-width:350px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:8px;padding:15px;box-shadow:0 4px 12px #0003;border:2px solid #2196F3}.selected-info h4{margin:0 0 10px;color:#2196f3;font-size:16px}.selected-list{max-height:200px;overflow-y:auto}.selected-item{font-size:12px;margin:8px 0;padding:8px 8px 8px 12px;background:#fffc;border-radius:4px;border-left:4px solid;line-height:1.3}.instructions{position:absolute;bottom:20px;left:20px;right:20px;background:#4caf501a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(76,175,80,.3);border-radius:8px;padding:15px;text-align:center}.instructions p{margin:0;color:#388e3c;font-size:16px;font-weight:500}@media (max-width: 768px){.fresque-button{width:35px;height:25px}.button-number{font-size:10px}.button-checkbox{font-size:12px}.selected-info{max-width:280px;padding:12px}.selected-info h4{font-size:14px}.selected-item{font-size:11px}.instructions p{font-size:14px}}@media (max-width: 480px){.fresque-button{width:30px;height:22px}.button-number{font-size:9px}.button-checkbox{font-size:10px}.selected-info{position:relative;margin:20px 10px 10px;max-width:none}.instructions{position:relative;margin:10px}.instructions p{font-size:12px}}.score-display{position:sticky;top:20px;margin-bottom:30px}.score-card{background:#fff;border:3px solid;border-radius:12px;padding:20px;box-shadow:0 4px 12px #0000001a}.score-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.score-header h3{margin:0;color:#333;font-size:24px}.score-number{font-size:48px;font-weight:700;min-width:80px;text-align:center}.score-details{display:flex;flex-direction:column;gap:15px}.selected-items{font-size:16px;color:#666;text-align:center;padding:8px;background:#f5f5f5;border-radius:6px}.interpretation{padding:15px;border-radius:8px;text-align:center}.interpretation h4{margin:0 0 10px;font-size:20px;font-weight:700}.interpretation p{margin:0;font-size:16px;line-height:1.5;color:#555}.export-pdf-button{background:#4caf50;color:#fff;border:none;padding:12px 20px;border-radius:25px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 2px 4px #0000001a}.export-pdf-button:hover{background:#45a049;transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.export-pdf-button:active{transform:translateY(0);box-shadow:0 2px 4px #0000001a}@media (max-width: 768px){.score-header{flex-direction:column;gap:10px;text-align:center}.score-header h3{font-size:20px}.score-number{font-size:36px}.interpretation h4{font-size:18px}.interpretation p{font-size:14px}.export-pdf-button{font-size:14px;padding:10px 16px}}.results-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.results-modal{background:#fff;border-radius:16px;width:95%;max-width:1200px;max-height:95%;overflow-y:auto;box-shadow:0 20px 40px #0000004d;animation:modalAppear .3s ease-out}@keyframes modalAppear{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.results-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:2px solid #f0f0f0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:16px 16px 0 0}.results-header h2{margin:0;font-size:32px}.close-button{background:#fff3;border:none;color:#fff;font-size:24px;width:40px;height:40px;border-radius:50%;cursor:pointer;transition:all .3s ease}.close-button:hover{background:#ffffff4d;transform:rotate(90deg)}.results-content{padding:30px}.global-score{background:#fff;border:3px solid;border-radius:12px;padding:25px;margin-bottom:30px;text-align:center}.global-score h3{margin:0 0 15px;font-size:34px}.global-interpretation{border-radius:8px;padding:15px;margin-top:10px}.global-interpretation h4{margin:0 0 10px;font-size:26px}.global-interpretation p{margin:0 0 15px;font-size:18px;line-height:1.5}.priority-badge{display:inline-block;color:#fff;padding:10px 18px;border-radius:22px;font-size:16px;font-weight:700}.color-analysis h3{margin:0 0 20px;font-size:26px;color:#333}.color-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:25px}.color-card{background:#fff;border:2px solid #f0f0f0;border-left:6px solid;border-radius:8px;padding:25px;transition:all .3s ease}.color-card:hover{transform:translateY(-2px);box-shadow:0 6px 12px #0000001a}.color-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.color-header h4{margin:0;font-size:20px}.color-stats{display:flex;flex-direction:column;text-align:right}.count{font-size:14px;color:#666}.score{font-size:20px;font-weight:700}.color-description{margin:0 0 15px;color:#555;font-size:16px}.color-items h5{margin:0 0 8px;font-size:16px;color:#333}.color-items ul{margin:0;padding:0;list-style:none}.color-items li{margin:5px 0;padding:6px 10px;background:#f8f9fa;border-radius:4px;font-size:14px;line-height:1.3}.item-weight{color:#888;font-weight:700}.recommendations{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;padding:20px}.recommendations h3{margin:0 0 15px;color:#333;font-size:22px}.recommendations-content>div{margin:15px 0;padding:15px;border-radius:8px;border-left:5px solid}.urgent-recommendation{background:#ffebee;border-left-color:#f44336}.urgent-recommendation h4{color:#c62828;margin:0 0 8px}.important-recommendation{background:#fff3e0;border-left-color:#ff9800}.important-recommendation h4{color:#f57c00;margin:0 0 8px}.moderate-recommendation{background:#fffde7;border-left-color:#ffc107}.moderate-recommendation h4{color:#f9a825;margin:0 0 8px}.positive-recommendation{background:#e8f5e8;border-left-color:#4caf50}.positive-recommendation h4{color:#388e3c;margin:0 0 8px}.recommendations p{margin:0;line-height:1.5;color:#555}.results-footer{padding:20px 25px;border-top:2px solid #f0f0f0;text-align:center;background:#f8f9fa;border-radius:0 0 16px 16px;display:flex;gap:15px;justify-content:center;align-items:center}.export-pdf-btn{background:#4caf50;color:#fff;border:none;padding:12px 24px;border-radius:25px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.export-pdf-btn:hover{background:#45a049;transform:translateY(-2px);box-shadow:0 4px 12px #4caf504d}.export-pdf-btn:active{transform:translateY(0)}.close-results-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:14px 34px;border-radius:28px;font-size:18px;font-weight:700;cursor:pointer;transition:all .3s ease}.close-results-btn:hover{transform:translateY(-2px);box-shadow:0 6px 12px #667eea66}@media (max-width: 768px){.results-modal{width:95%;margin:10px}.results-header{padding:15px 20px}.results-header h2{font-size:20px}.results-content{padding:20px}.color-grid{grid-template-columns:1fr;gap:15px}.global-score h3,.global-interpretation h4{font-size:24px}.global-interpretation p{font-size:18px}.results-footer{flex-direction:column;gap:10px}.export-pdf-btn,.close-results-btn{width:100%;justify-content:center}}
