@@ -3045,6 +3045,120 @@ body {
30453045 }
30463046}
30473047
3048+ /* ==========================================================================
3049+ CARD AND MODAL LAYOUT STANDARDIZATION
3050+ ========================================================================== */
3051+
3052+ .projects-grid {
3053+ display : grid;
3054+ grid-template-columns : repeat (auto-fit, minmax (260px , 1fr ));
3055+ gap : 1.2rem ;
3056+ margin-top : 2rem ;
3057+ align-items : stretch;
3058+ }
3059+
3060+ .project-card {
3061+ min-height : 240px ;
3062+ display : flex;
3063+ flex-direction : column;
3064+ justify-content : space-between;
3065+ align-items : stretch;
3066+ padding : 1.75rem 1.5rem 1.5rem ;
3067+ border-radius : 28px ;
3068+ background : var (--surface-color );
3069+ border : 1px solid var (--accent-border );
3070+ box-shadow : 0 18px 40px rgba (0 , 0 , 0 , 0.08 );
3071+ transition : transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
3072+ }
3073+
3074+ .project-card h3 {
3075+ margin-bottom : 0.8rem ;
3076+ font-size : 1.15rem ;
3077+ line-height : 1.35 ;
3078+ color : var (--text-color );
3079+ }
3080+
3081+ .project-card p {
3082+ margin-bottom : 1rem ;
3083+ color : var (--text-secondary );
3084+ font-size : 0.95rem ;
3085+ line-height : 1.65 ;
3086+ flex : 1 1 auto;
3087+ }
3088+
3089+ .project-card .btn-play {
3090+ margin-top : auto;
3091+ align-self : flex-start;
3092+ }
3093+
3094+ .card-icon {
3095+ width : 72px ;
3096+ height : 72px ;
3097+ display : grid;
3098+ place-items : center;
3099+ border-radius : 22px ;
3100+ background : var (--accent-soft );
3101+ color : var (--accent-color );
3102+ margin-bottom : 1.2rem ;
3103+ font-size : 2rem ;
3104+ flex-shrink : 0 ;
3105+ }
3106+
3107+ .modal-content {
3108+ width : min (100% , 900px );
3109+ max-width : 900px ;
3110+ min-width : 320px ;
3111+ max-height : 92vh ;
3112+ overflow-y : auto;
3113+ overflow-x : hidden;
3114+ padding : 2rem ;
3115+ border-radius : 20px ;
3116+ box-shadow : var (--shadow-modal );
3117+ background : var (--surface-color );
3118+ border : 1px solid var (--border-color );
3119+ }
3120+
3121+ # modalBody {
3122+ width : 100% ;
3123+ display : flex;
3124+ flex-direction : column;
3125+ gap : 1rem ;
3126+ align-items : stretch;
3127+ }
3128+
3129+ # modalBody > * {
3130+ width : 100% ;
3131+ max-width : 100% ;
3132+ }
3133+
3134+ .modal-close {
3135+ z-index : 2100 ;
3136+ }
3137+
3138+ @media (max-width : 768px ) {
3139+ .modal-content {
3140+ width : min (100% , 92vw );
3141+ padding : 1.5rem ;
3142+ max-height : 90vh ;
3143+ }
3144+
3145+ .project-card {
3146+ min-height : auto;
3147+ padding : 1.5rem 1.25rem ;
3148+ }
3149+ }
3150+
3151+ @media (max-width : 576px ) {
3152+ .projects-grid {
3153+ grid-template-columns : 1fr ;
3154+ gap : 1rem ;
3155+ }
3156+
3157+ .project-card {
3158+ padding : 1.25rem ;
3159+ }
3160+ }
3161+
30483162/* ==========================================================================
30493163 ARCADE REDESIGN OVERRIDES
30503164 ========================================================================== */
@@ -4389,4 +4503,141 @@ body {
43894503 padding : 1rem ;
43904504 }
43914505}
4392- }
4506+
4507+ /* ==========================================================================
4508+ FINAL CARD + MODAL CONSISTENCY OVERRIDES
4509+ This section is intentionally appended at the end to override earlier
4510+ duplicate card/modal definitions and enforce consistent spacing, sizing,
4511+ and responsive behavior across all project pages.
4512+ ========================================================================== */
4513+
4514+ .projects-grid {
4515+ display : grid !important ;
4516+ grid-template-columns : repeat (auto-fit, minmax (260px , 1fr )) !important ;
4517+ gap : 1.2rem !important ;
4518+ margin-top : 2rem !important ;
4519+ align-items : stretch !important ;
4520+ }
4521+
4522+ .project-card {
4523+ min-height : 240px !important ;
4524+ display : flex !important ;
4525+ flex-direction : column !important ;
4526+ justify-content : space-between !important ;
4527+ align-items : stretch !important ;
4528+ padding : 1.75rem 1.5rem 1.5rem !important ;
4529+ border-radius : 28px !important ;
4530+ background : var (--surface-color ) !important ;
4531+ border : 1px solid var (--accent-border ) !important ;
4532+ box-shadow : 0 18px 40px rgba (0 , 0 , 0 , 0.08 ) !important ;
4533+ transition : transform 0.2s ease !important ;
4534+ }
4535+
4536+ .project-card h3 {
4537+ margin-bottom : 0.75rem !important ;
4538+ font-size : 1.15rem !important ;
4539+ line-height : 1.35 !important ;
4540+ color : var (--text-color ) !important ;
4541+ }
4542+
4543+ .project-card p {
4544+ margin-bottom : 1rem !important ;
4545+ color : var (--text-secondary ) !important ;
4546+ font-size : 0.95rem !important ;
4547+ line-height : 1.6 !important ;
4548+ flex : 1 1 auto !important ;
4549+ }
4550+
4551+ .project-card .btn-play {
4552+ margin-top : auto !important ;
4553+ align-self : flex-start !important ;
4554+ }
4555+
4556+ .card-icon {
4557+ width : 72px !important ;
4558+ height : 72px !important ;
4559+ display : grid !important ;
4560+ place-items : center !important ;
4561+ border-radius : 22px !important ;
4562+ background : var (--accent-soft ) !important ;
4563+ color : var (--accent-color ) !important ;
4564+ margin-bottom : 1.2rem !important ;
4565+ font-size : 2rem !important ;
4566+ }
4567+
4568+ .modal {
4569+ display : none !important ;
4570+ position : fixed !important ;
4571+ top : 0 !important ;
4572+ left : 0 !important ;
4573+ width : 100% !important ;
4574+ height : 100% !important ;
4575+ background : var (--overlay-color ) !important ;
4576+ backdrop-filter : blur (6px ) !important ;
4577+ -webkit-backdrop-filter : blur (6px ) !important ;
4578+ z-index : 2000 !important ;
4579+ animation : fadeIn 0.3s ease !important ;
4580+ }
4581+
4582+ .modal .active {
4583+ display : flex !important ;
4584+ align-items : center !important ;
4585+ justify-content : center !important ;
4586+ }
4587+
4588+ .modal-content {
4589+ width : min (100% , 900px ) !important ;
4590+ max-width : 900px !important ;
4591+ min-width : 320px !important ;
4592+ max-height : 92vh !important ;
4593+ overflow-y : auto !important ;
4594+ overflow-x : hidden !important ;
4595+ padding : 2rem !important ;
4596+ border-radius : 20px !important ;
4597+ box-shadow : var (--shadow-modal ) !important ;
4598+ background : var (--surface-color ) !important ;
4599+ border : 1px solid var (--border-color ) !important ;
4600+ margin : auto !important ;
4601+ }
4602+
4603+ # modalBody {
4604+ width : 100% !important ;
4605+ display : flex !important ;
4606+ flex-direction : column !important ;
4607+ gap : 1rem !important ;
4608+ align-items : stretch !important ;
4609+ }
4610+
4611+ # modalBody > * {
4612+ width : 100% !important ;
4613+ max-width : 100% !important ;
4614+ }
4615+
4616+ .modal-close {
4617+ z-index : 2100 !important ;
4618+ }
4619+
4620+ @media (max-width : 768px ) {
4621+ .modal-content {
4622+ width : min (100% , 92vw ) !important ;
4623+ padding : 1.5rem !important ;
4624+ max-height : 90vh !important ;
4625+ }
4626+
4627+ .project-card {
4628+ min-height : auto !important ;
4629+ padding : 1.5rem 1.25rem !important ;
4630+ }
4631+ }
4632+
4633+ @media (max-width : 576px ) {
4634+ .projects-grid {
4635+ grid-template-columns : 1fr !important ;
4636+ gap : 1rem !important ;
4637+ }
4638+
4639+ .project-card {
4640+ padding : 1.25rem !important ;
4641+ min-height : auto !important ;
4642+ }
4643+ }
0 commit comments