:root{--color-bg: #EEF2F0;--color-surface: #FFFFFF;--color-surface-alt: #EEF2F0;--color-border: #CBD5D1;--color-border-subtle: #E1E8E5;--color-border-dashed: #8A9893;--color-text: #12201B;--color-text-muted: #55645E;--color-text-inverse: #FFFFFF;--color-primary: #0B6B57;--color-on-primary: #FFFFFF;--color-on-primary-hover: #FFFFFF;--color-primary-hover: #095A49;--color-primary-bg: #D7EBE5;--color-primary-border: #8FC4B6;--color-primary-text: #2E5248;--color-success: #0B6B57;--color-success-bg: #D7EBE5;--color-warning: #C98F00;--color-warning-bg: #FBE3A4;--color-warning-text: #4A3B0A;--color-error: #B3261E;--color-error-bg: #F9DEDC;--color-info: #12201B;--color-info-bg: #E1E8E5;--color-overlay: #3A4540;--color-overlay-row: #4B5752;--color-overlay-row-text: #E6ECE9;--color-snackbar-bg: #12201B;--color-snackbar-text: #FFFFFF;--color-snackbar-action: #F2B53A;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--radius-sm: 12px;--radius-md: 14px;--radius-lg: 16px;--radius-pill: 999px;--radius-sheet: 28px;--border-width: 1.5px;--border-width-strong: 2px;--size-touch: 48px;--size-touch-min: 44px;--size-button-primary: 56px;--size-input: 52px;--font-sans: "IBM Plex Sans", system-ui, sans-serif}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text)}button,input,select,textarea{font-family:inherit;color:inherit}:focus-visible{outline:var(--border-width-strong) solid var(--color-primary);outline-offset:2px}img,svg{max-width:100%;height:auto}body{overflow-wrap:break-word}.table-scroll{width:100%;overflow-x:auto}body{padding:var(--space-6) var(--space-4) var(--space-8)}.page{max-width:400px;margin:0 auto}.provider-dashboard{max-width:1280px}.login-page{min-height:calc(100vh - var(--space-6) - var(--space-8));display:flex;flex-direction:column;justify-content:center}.login-page h1{text-align:center;margin:0 0 var(--space-4) 0}h1{font-size:28px;font-weight:700;line-height:1.15}h2{margin:var(--space-6) 0 var(--space-2) 0;font-size:15px;font-weight:700}.dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.dashboard-header h1{margin:0;min-width:0}.login-form,.create-shop-form{display:flex;flex-direction:column;gap:var(--space-3);background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-4)}.create-shop-form{max-width:360px}.new-shop-section{max-width:720px;margin:0 auto var(--space-8)}.new-shop-section h2{font-size:20px;text-align:center}.new-shop-form{max-width:none;gap:var(--space-4);padding:var(--space-6)}.new-shop-form-groups{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}.new-shop-form-group{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;margin:0;padding:0;border:none}.new-shop-form-group legend{margin-bottom:var(--space-3);padding:0;font-size:15px;font-weight:700}.new-shop-form .button{align-self:center;min-width:280px}@media (max-width: 640px){.new-shop-form{padding:var(--space-4)}.new-shop-form-groups{grid-template-columns:1fr;gap:var(--space-4)}.new-shop-form .button{align-self:stretch;min-width:0}}.input-field{display:flex;flex-direction:column;gap:var(--space-1)}.input-field label{font-size:13px;font-weight:600;color:var(--color-text-muted)}.input-field input{width:100%;height:var(--size-input);padding:0 14px;font-size:16px;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.input-field input:focus{outline:none;border-color:var(--color-primary)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--size-touch);padding:0 var(--space-4);font-size:15px;font-weight:600;border-radius:var(--radius-md);cursor:pointer}.button--primary{border:var(--border-width) solid var(--color-primary);background:var(--color-primary);color:var(--color-text-inverse)}.button--primary:hover:not(:disabled){border-color:var(--color-primary-hover);background:var(--color-primary-hover)}.button--secondary{border:var(--border-width) solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.button--secondary:hover:not(:disabled){border-color:var(--color-text-muted)}.button--danger{border:var(--border-width) solid var(--color-error);background:var(--color-error);color:var(--color-text-inverse)}.button--danger:hover:not(:disabled){opacity:.9}.button:disabled{border-color:var(--color-border);background:var(--color-border);color:var(--color-text-muted);cursor:not-allowed}.login-form .button,.create-shop-form .button{min-height:var(--size-button-primary);border-radius:var(--radius-lg);font-size:17px}.error-message,.success-message{padding:var(--space-3) var(--space-4);border:var(--border-width) solid;border-radius:var(--radius-md);font-size:15px;font-weight:600}.error-message{color:var(--color-error);background:var(--color-error-bg)}.success-message{color:var(--color-success);background:var(--color-success-bg);border-color:var(--color-primary-border)}.shop-list{width:100%;border-collapse:separate;border-spacing:0;background:var(--color-surface);border-radius:var(--radius-lg);overflow:hidden}.shop-list th{font-size:13px;font-weight:600;color:var(--color-text-muted)}.shop-list th,.shop-list td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:var(--border-width) solid var(--color-border-subtle)}.shop-list tr:last-child td{border-bottom:none}.shop-list td:first-child{font-weight:600}.shop-list td{overflow-wrap:anywhere}.shop-list th,.shop-list td[data-label=Δημιουργήθηκε]{white-space:nowrap}.shop-list-actions{display:flex;gap:var(--space-2)}.shop-list .button{flex-shrink:0;min-height:var(--size-touch-min);padding:0 var(--space-4);border-radius:var(--radius-sm);font-size:14px;white-space:nowrap}.shop-list .button--danger{border-color:var(--color-border);background:var(--color-surface);color:var(--color-error)}.shop-list .button--danger:hover:not(:disabled){border-color:var(--color-error);background:var(--color-error-bg);opacity:1}.subscription-controls{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.subscription-cell{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1)}.subscription-cell-pill{padding:var(--space-1) var(--space-3);border:var(--border-width) solid transparent;border-radius:var(--radius-pill);font-size:13px;font-weight:600;white-space:nowrap}.subscription-cell-pill--normal{background:var(--color-success-bg);border-color:var(--color-primary-border);color:var(--color-success)}.subscription-cell-pill--warning{background:var(--color-warning-bg);border-color:var(--color-warning);color:var(--color-warning-text)}.subscription-cell-pill--expired{background:var(--color-error-bg);border-color:var(--color-error);color:var(--color-error)}.subscription-cell-date{font-size:13px;color:var(--color-text-muted)}.subscription-controls-actions,.set-expiry-date-form{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.set-expiry-date-form input[type=date]{height:var(--size-touch-min);padding:0 var(--space-3);font-size:14px;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface)}.set-expiry-date-form input[type=date]:focus{outline:none;border-color:var(--color-primary)}.subscription-error{width:100%;font-size:13px;font-weight:600;color:var(--color-error)}@media (max-width: 1024px){.subscription-controls,.subscription-cell{align-items:flex-end}.subscription-controls-actions,.set-expiry-date-form{justify-content:flex-end}.shop-list,.shop-list tbody,.shop-list tr,.shop-list td{display:block}.shop-list{background:none;border-radius:0;overflow:visible}.shop-list thead{display:none}.shop-list tr{margin-bottom:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--color-surface);border-radius:var(--radius-lg)}.shop-list td,.shop-list tr:last-child td{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:var(--border-width) solid var(--color-border-subtle);text-align:right}.shop-list td:last-child,.shop-list tr:last-child td:last-child{border-bottom:none}.shop-list td[data-label]:before{content:attr(data-label);flex-shrink:0;font-size:13px;font-weight:600;color:var(--color-text-muted);text-align:left}.shop-list-actions{width:100%}.shop-list-actions .button{flex:1}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;padding:var(--space-4);overflow-y:auto;background:#12201b99}.modal{width:100%;max-width:440px;margin:auto;padding:var(--space-4);background:var(--color-surface);border-radius:var(--radius-lg)}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2)}.modal-header h2{margin:0;min-width:0;font-size:18px;overflow-wrap:anywhere}.modal-close{flex-shrink:0;width:var(--size-touch);height:var(--size-touch);border:none;border-radius:var(--radius-md);background:none;font-size:26px;line-height:1;color:var(--color-text-muted);cursor:pointer}.modal-close:hover{color:var(--color-text)}.modal .create-shop-form{max-width:none;padding:0}.delete-shop-confirm{padding:var(--space-4);border:var(--border-width) solid var(--color-error);border-radius:var(--radius-lg);background:var(--color-error-bg)}.delete-shop-confirm p{margin:0 0 var(--space-3) 0}.delete-shop-confirm-actions{display:flex;gap:var(--space-2)}
