@keyframes dsiFadeIn{from{opacity: 0; transform: translateY(10px);}to{opacity: 1; transform: translateY(0);}} @media print{body{background: #ffffff !important; color: #111827 !important;}header, footer, .dsi-terms-toolbar, .dsi-toc-card, .dsi-terms-actions{display: none !important;}.dsi-terms-page{background: #ffffff !important; color: #111827 !important; padding: 0 !important;}.dsi-terms-card{background: #ffffff !important; border: none !important; box-shadow: none !important; padding: 0 !important;}.dsi-terms-h2{color: #000000 !important;}.dsi-terms-p, .dsi-terms-ul li{color: #1f2937 !important;}.dsi-section-num{background: #f3f4f6 !important; color: #111827 !important; border: 1px solid #d1d5db !important;}} .dsi-profile-page{background: radial-gradient(circle at 50% 0%, #0d1527 0%, #060911 70%, #04060a 100%) !important; color: #cbd5e1 !important; min-height: 100vh; padding: 50px 0 90px 0;} .dsi-profile-title{font-size: 3rem; font-weight: 800; letter-spacing: -0.5px; margin: 15px 0 10px 0;} .dsi-profile-subtitle-lead{font-size: 1.35rem; font-weight: 600; color: #ffffff; max-width: 900px; margin: 0 auto 16px auto; line-height: 1.5;} .dsi-profile-desc{font-size: 1.05rem; color: #94a3b8; max-width: 860px; margin: 0 auto 25px auto; line-height: 1.8;} .dsi-profile-showcase-wrap{max-width: 1040px; margin: 0 auto;} .dsi-profile-showcase-frame{border-radius: 20px; overflow: hidden; border: 1px solid rgba(246, 211, 101, 0.35); box-shadow: 0 25px 60px rgba(0, 0, 0, 0.55); background: #000000;} .dsi-profile-showcase-img{width: 100%; height: auto; max-height: 520px; object-fit: cover; display: block;} .dsi-showcase-caption{background: rgba(15, 23, 42, 0.95); border-top: 1px solid rgba(255, 255, 255, 0.1); padding: 16px 24px; font-size: 0.92rem; backdrop-filter: blur(10px);} .dsi-metric-card{background: rgba(15, 23, 42, 0.7); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; padding: 22px 16px; backdrop-filter: blur(10px); transition: transform 0.2s ease, border-color 0.2s ease;} .dsi-metric-card:hover{transform: translateY(-4px); border-color: rgba(246, 211, 101, 0.4);} .dsi-metric-val{font-size: 2.2rem; font-weight: 800; color: #f6d365; line-height: 1.1; margin-bottom: 6px;} .dsi-metric-lbl{font-size: 0.85rem; color: #cbd5e1; font-weight: 600;} .dsi-card-glass{background: rgba(15, 23, 42, 0.75); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 16px; backdrop-filter: blur(12px); box-shadow: 0 15px 35px rgba(0, 0, 0, 0.35);} .dsi-icon-badge{width: 44px; height: 44px; border-radius: 10px; background: rgba(246, 211, 101, 0.12); border: 1px solid rgba(246, 211, 101, 0.3); color: #f6d365; display: flex; align-items: center; justify-content: center; font-size: 1.15rem; flex-shrink: 0;} .dsi-scale-card{background: rgba(15, 23, 42, 0.8); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; padding: 24px 18px; text-align: center; height: 100%; transition: all 0.25s ease;} .dsi-scale-card:hover{transform: translateY(-5px); border-color: rgba(246, 211, 101, 0.45); box-shadow: 0 10px 25px rgba(0, 0, 0, 0.4);} .dsi-scale-letter{width: 48px; height: 48px; border-radius: 50%; background: linear-gradient(135deg, #f6d365 0%, #fda085 100%); color: #04060b; font-size: 1.5rem; font-weight: 800; display: flex; align-items: center; justify-content: center; margin: 0 auto 14px auto; box-shadow: 0 4px 15px rgba(246, 211, 101, 0.35);} .dsi-solution-box{background: rgba(15, 23, 42, 0.8); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 16px; padding: 30px 25px; transition: all 0.25s ease; display: flex; flex-direction: column;} .dsi-solution-box:hover{transform: translateY(-6px); border-color: rgba(246, 211, 101, 0.4); box-shadow: 0 15px 35px rgba(0, 0, 0, 0.4);} .dsi-solution-icon{font-size: 2rem; color: var(--dsi-gold-2); margin-bottom: 18px;} .dsi-solution-tags{margin-top: auto; display: flex; flex-wrap: wrap; gap: 6px;} .dsi-solution-tags span{background: rgba(255, 255, 255, 0.06); border: 1px solid rgba(255, 255, 255, 0.12); color: #cbd5e1; font-size: 0.75rem; padding: 4px 10px; border-radius: 20px; font-weight: 500;} .dsi-tech-matrix{background: rgba(0, 0, 0, 0.4); border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.08); overflow: hidden;} .dsi-tech-row{display: flex; padding: 14px 18px; border-bottom: 1px solid rgba(255, 255, 255, 0.06);} .dsi-tech-row:last-child{border-bottom: none;} .dsi-tech-cat{font-weight: 700; color: #f6d365; width: 155px; flex-shrink: 0; font-size: 0.88rem;} .dsi-tech-desc{color: #cbd5e1; font-size: 0.88rem; line-height: 1.6;} .dsi-step-card{background: rgba(15, 23, 42, 0.7); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; padding: 26px 20px; transition: all 0.25s ease;} .dsi-step-card:hover{transform: translateY(-4px); border-color: rgba(246, 211, 101, 0.35);} .dsi-step-num{font-size: 2.4rem; font-weight: 900; color: rgba(246, 211, 101, 0.25); line-height: 1; margin-bottom: 12px;} .font-14{font-size: 0.88rem !important; line-height: 1.7 !important;} .font-13{font-size: 0.82rem !important; line-height: 1.6 !important;} .max-w-700{max-width: 700px;} @media print{.dsi-profile-page{background: #ffffff !important; color: #111827 !important; padding: 0 !important;}.dsi-profile-title, .dsi-profile-subtitle-lead, .dsi-profile-desc{color: #000000 !important;}.dsi-profile-toolbar, .dsi-profile-cta{display: none !important;}.dsi-card-glass, .dsi-solution-box, .dsi-step-card, .dsi-metric-card, .dsi-scale-card{background: #ffffff !important; border: 1px solid #d1d5db !important; box-shadow: none !important; color: #1f2937 !important;}.dsi-card-glass h2, .dsi-card-glass h3, .dsi-card-glass h4, .dsi-card-glass h5, .dsi-solution-box h4, .dsi-step-card h5, .dsi-scale-card h5{color: #111827 !important;}.dsi-scale-letter{background: #f3f4f6 !important; color: #111827 !important; border: 1px solid #d1d5db !important;}.dsi-metric-val{color: #0f172a !important;}.dsi-metric-lbl{color: #374151 !important;}.text-white, .text-white-50{color: #374151 !important;}.dsi-tech-matrix{background: #ffffff !important; border: 1px solid #d1d5db !important;}.dsi-tech-cat{color: #0f172a !important;}.dsi-tech-desc{color: #111827 !important;}} 

/* /project/static/src/scss/portal_rating.scss defined in bundle 'web.assets_frontend' */
 .o_portal_project_rating .thumbnail{height: 240px;} .o_portal_project_rating .o_top_partner_rating_image{height: 15px;} .o_portal_project_rating .o_top_partner_image{height: 30px; width: 30px;} .o_portal_project_rating .o_top_partner_feedback{word-wrap: break-word;} .o_portal_project_rating .o_vertical_separator{border-left: 1px solid #eeeeee;} .o_portal_project_rating .o_rating_progress{margin-bottom: 10px;} .o_portal_project_rating .o_rating_count{display: inline-block; min-width: 22px;} .o_portal_project_rating .o_smiley_no_padding_left{padding-left: 0;} .o_portal_project_rating .o_smiley_no_padding_right{padding-right: 0;} .o_portal_project_rating .o_lighter_smileys{opacity: 0.4;}