@@ -95,43 +95,43 @@ export default function AppDetailSheet({ isOpen, onClose, app }: AppDetailSheetP
9595 return (
9696 < >
9797 < div className = "modal-overlay" onClick = { onClose } style = { { zIndex : 999 } } >
98- < div className = "modal-content max-w-lg " onClick = { e => e . stopPropagation ( ) } >
98+ < div className = "modal-content max-w-md max-h-[85vh] overflow-y-auto " onClick = { e => e . stopPropagation ( ) } >
9999 { /* Header */ }
100- < div className = "flex items-start gap-4 mb-6 " >
100+ < div className = "flex items-start gap-3 mb-4 " >
101101 { /* App Icon */ }
102- < div className = "w-16 h-16 flex-shrink-0" >
102+ < div className = "w-12 h-12 flex-shrink-0" >
103103 { app . iconBase64 ? (
104104 < img
105105 src = { `data:image/png;base64,${ app . iconBase64 } ` }
106106 alt = { app . appName }
107- className = "w-full h-full object-cover rounded-2xl "
107+ className = "w-full h-full object-cover rounded-xl "
108108 />
109109 ) : (
110- < div className = "w-full h-full rounded-2xl bg-surface flex items-center justify-center" >
111- < Package size = { 32 } className = "text-text-muted" />
110+ < div className = "w-full h-full rounded-xl bg-surface flex items-center justify-center" >
111+ < Package size = { 24 } className = "text-text-muted" />
112112 </ div >
113113 ) }
114114 </ div >
115115
116116 { /* App Info */ }
117117 < div className = "flex-1 min-w-0" >
118- < h2 className = "text-lg font-bold text-text-primary truncate" > { app . appName } </ h2 >
118+ < h2 className = "text-base font-bold text-text-primary truncate" > { app . appName } </ h2 >
119119 < p className = "text-xs text-text-muted font-mono truncate" > { app . packageName } </ p >
120- < div className = "flex items-center gap-2 mt-2 " >
121- < span className = "text-xs px-2 py-0.5 rounded-full bg-surface text-text-secondary" >
120+ < div className = "flex items-center gap-1.5 mt-1.5 " >
121+ < span className = "text-xs px-1.5 py-0.5 rounded-md bg-surface text-text-secondary" >
122122 v{ app . versionName }
123123 </ span >
124124 { app . isSystemApp ? (
125- < span className = "text-xs px-2 py-0.5 rounded-full bg-text-muted/10 text-text-muted" >
126- System App
125+ < span className = "text-xs px-1.5 py-0.5 rounded-md bg-text-muted/10 text-text-muted" >
126+ System
127127 </ span >
128128 ) : (
129- < span className = "text-xs px-2 py-0.5 rounded-full bg-success/10 text-success" >
130- User App
129+ < span className = "text-xs px-1.5 py-0.5 rounded-md bg-success/10 text-success" >
130+ User
131131 </ span >
132132 ) }
133133 { app . isFrozen && (
134- < span className = "text-xs px-2 py-0.5 rounded-full bg-info/10 text-info" >
134+ < span className = "text-xs px-1.5 py-0.5 rounded-md bg-info/10 text-info" >
135135 Frozen
136136 </ span >
137137 ) }
@@ -141,14 +141,14 @@ export default function AppDetailSheet({ isOpen, onClose, app }: AppDetailSheetP
141141 { /* Close Button */ }
142142 < button
143143 onClick = { onClose }
144- className = "w-8 h-8 rounded-lg bg-surface flex items-center justify-center hover:bg-surface-hover transition-colors"
144+ className = "w-7 h-7 rounded-lg bg-surface flex items-center justify-center hover:bg-surface-hover transition-colors"
145145 >
146- < X size = { 16 } className = "text-text-muted" />
146+ < X size = { 14 } className = "text-text-muted" />
147147 </ button >
148148 </ div >
149149
150150 { /* Info Grid */ }
151- < div className = "grid grid-cols-2 gap-3 mb-6 " >
151+ < div className = "grid grid-cols-2 gap-2 mb-4 " >
152152 < InfoItem
153153 icon = { HardDrive }
154154 label = "App Size"
@@ -187,28 +187,28 @@ export default function AppDetailSheet({ isOpen, onClose, app }: AppDetailSheetP
187187
188188 { /* Background State Section */ }
189189 { app . backgroundOps && (
190- < div className = "mb-6 " >
190+ < div className = "mb-4 " >
191191 < button
192192 onClick = { ( ) => setShowBackgroundOps ( ! showBackgroundOps ) }
193- className = "w-full flex items-center justify-between p-3 rounded-xl bg-surface hover:bg-surface-hover transition-colors"
193+ className = "w-full flex items-center justify-between p-2.5 rounded-lg bg-surface hover:bg-surface-hover transition-colors"
194194 >
195195 < div className = "flex items-center gap-2" >
196- < ShieldAlert size = { 16 } className = "text-text-secondary" />
196+ < ShieldAlert size = { 14 } className = "text-text-secondary" />
197197 < span className = "text-sm font-medium text-text-primary" > Background State</ span >
198198 </ div >
199199 { showBackgroundOps ? (
200- < ChevronUp size = { 16 } className = "text-text-muted" />
200+ < ChevronUp size = { 14 } className = "text-text-muted" />
201201 ) : (
202- < ChevronDown size = { 16 } className = "text-text-muted" />
202+ < ChevronDown size = { 14 } className = "text-text-muted" />
203203 ) }
204204 </ button >
205205
206206 { showBackgroundOps && (
207- < div className = "mt-2 p-4 rounded-xl bg-surface space-y-3 animate-slide-down" >
207+ < div className = "mt-2 p-3 rounded-lg bg-surface space-y-2 animate-slide-down" >
208208 < div className = "flex justify-between items-center" >
209- < span className = "text-sm text-text-secondary" > RUN_IN_BACKGROUND</ span >
209+ < span className = "text-xs text-text-secondary" > RUN_IN_BACKGROUND</ span >
210210 < span className = { cn (
211- "text-sm font-medium" ,
211+ "text-xs font-medium" ,
212212 app . backgroundOps . runInBackground === 'allow' ? 'text-success' :
213213 app . backgroundOps . runInBackground === 'deny' ? 'text-error' :
214214 'text-warning'
@@ -217,17 +217,17 @@ export default function AppDetailSheet({ isOpen, onClose, app }: AppDetailSheetP
217217 </ span >
218218 </ div >
219219 < div className = "flex justify-between items-center" >
220- < span className = "text-sm text-text-secondary" > RUN_ANY_IN_BACKGROUND</ span >
220+ < span className = "text-xs text-text-secondary" > RUN_ANY_IN_BACKGROUND</ span >
221221 < span className = { cn (
222- "text-sm font-medium" ,
222+ "text-xs font-medium" ,
223223 app . backgroundOps . runAnyInBackground === 'allow' ? 'text-success' :
224224 app . backgroundOps . runAnyInBackground === 'deny' ? 'text-error' :
225225 'text-warning'
226226 ) } >
227227 { app . backgroundOps . runAnyInBackground }
228228 </ span >
229229 </ div >
230- < p className = "text-xs text-text-muted italic" >
230+ < p className = "text-xs text-text-muted italic pt-1 " >
231231 This value may reset itself, this is normal.
232232 </ p >
233233 </ div >
@@ -236,8 +236,8 @@ export default function AppDetailSheet({ isOpen, onClose, app }: AppDetailSheetP
236236 ) }
237237
238238 { /* Quick Actions */ }
239- < div className = "space-y-3 " >
240- < h3 className = "text-xs font-semibold text-text-muted uppercase tracking-wider " >
239+ < div className = "space-y-2.5 " >
240+ < h3 className = "text-xs font-semibold text-text-muted uppercase tracking-wide " >
241241 Quick Actions
242242 </ h3 >
243243
@@ -322,7 +322,7 @@ export default function AppDetailSheet({ isOpen, onClose, app }: AppDetailSheetP
322322 </ div >
323323
324324 { /* Secondary Actions - 2 columns */ }
325- < div className = "grid grid-cols-2 gap-2 pt-2 " >
325+ < div className = "grid grid-cols-2 gap-2 pt-1 " >
326326 { /* App Info */ }
327327 < ActionButton
328328 icon = { Info }
@@ -394,12 +394,12 @@ interface InfoItemProps {
394394
395395function InfoItem ( { icon : Icon , label, value, valueClass } : InfoItemProps ) {
396396 return (
397- < div className = "p-3 rounded-xl bg-surface col-span-2 " >
398- < div className = "flex items-center gap-2 mb-1 " >
399- < Icon size = { 12 } className = "text-text-muted" />
397+ < div className = "p-2 rounded-lg bg-surface" >
398+ < div className = "flex items-center gap-1.5 mb-0.5 " >
399+ < Icon size = { 11 } className = "text-text-muted" />
400400 < span className = "text-xs text-text-muted" > { label } </ span >
401401 </ div >
402- < p className = { cn ( 'text-sm font-medium' , valueClass || 'text-text-primary' ) } >
402+ < p className = { cn ( 'text-sm font-medium truncate ' , valueClass || 'text-text-primary' ) } >
403403 { value }
404404 </ p >
405405 </ div >
@@ -437,18 +437,18 @@ function ActionButton({
437437 onClick = { onClick }
438438 disabled = { disabled || loading }
439439 className = { cn (
440- 'flex flex-col items-center justify-center gap-1.5 p-3 rounded-xl transition-all duration-200' ,
440+ 'flex flex-col items-center justify-center gap-1 p-2.5 rounded-lg transition-all duration-200' ,
441441 colorStyles [ color ] ,
442442 disabled && 'opacity-50 cursor-not-allowed' ,
443443 'active:scale-[0.95]'
444444 ) }
445445 >
446446 { loading ? (
447- < div className = "w-5 h-5 border-2 border-current border-t-transparent rounded-full animate-spin" />
447+ < div className = "w-4 h-4 border-2 border-current border-t-transparent rounded-full animate-spin" />
448448 ) : (
449- < Icon size = { 18 } strokeWidth = { 1.5 } />
449+ < Icon size = { 16 } strokeWidth = { 1.5 } />
450450 ) }
451- < span className = "text-xs font-medium" > { label } </ span >
451+ < span className = "text-xs font-medium leading-tight " > { label } </ span >
452452 </ button >
453453 )
454454}
0 commit comments