.tp,.tp *{box-sizing:border-box}
.tp{--bg:#f1f5f8;--surf:#fff;--ink:#10263a;--mute:#5b7183;--line:#d3dde5;--sea:#0f4c75;--onsea:#fff;--openbg:#fbe7a6;--openink:#4a3800;--billbg:#b8472f;--billink:#fff;--shadow:rgba(16,38,58,.35);
max-width:520px;margin:0 auto;background:var(--bg);color:var(--ink);font:16px/1.4 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;min-height:80vh;padding-bottom:120px;position:relative}
.tp button{font:inherit;color:inherit;cursor:pointer;border:0;background:none;min-height:48px;margin:0}
.tp button:focus-visible,.tp input:focus-visible{outline:3px solid var(--sea);outline-offset:2px}
.tp header{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--surf);border-bottom:1px solid var(--line)}
.tp h1{font-size:24px;font-weight:800;margin:0;flex:1;line-height:1.2;color:var(--ink)}
.tp h2{font-size:18px;font-weight:800;margin:24px 16px 8px;color:var(--ink)}
.tp h3{font-size:22px;font-weight:800;margin:0 0 4px;color:var(--ink)}
.tp .ic{width:48px;font-size:32px;line-height:1;margin-left:-8px}
.tp .pill{padding:4px 12px;border-radius:99px;font-size:14px;font-weight:600;background:var(--bg);white-space:nowrap}
.tp .pill.open{background:var(--openbg);color:var(--openink)}
.tp .pill.bill{background:var(--billbg);color:var(--billink)}
.tp .meta{margin:10px 16px 0;color:var(--mute);font-size:14px}
.tp .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:16px}
.tp .tb{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:104px;border-radius:16px;border:2px solid var(--line);background:var(--surf)}
.tp .tb b{font-size:34px;font-weight:800;line-height:1}
.tp .tb small{font-size:13px;color:var(--mute)}
.tp .tb.open{background:var(--openbg);border-color:transparent;color:var(--openink)}
.tp .tb.bill{background:var(--billbg);border-color:transparent;color:var(--billink)}
.tp .tb.open small,.tp .tb.bill small{color:inherit}
.tp .acts{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 16px}
.tp .sec{border:2px solid var(--sea);color:var(--sea);border-radius:12px;font-weight:600;padding:0 16px;background:var(--surf)}
.tp .sec:disabled{opacity:.4;cursor:default}
.tp .sec.sm{min-height:44px;padding:0 14px}
.tp .pri{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 20px;min-height:56px;border-radius:14px;background:var(--sea);color:var(--onsea);font-weight:800;font-size:18px}
.tp .pri.c{justify-content:center}
.tp .tabs{display:flex;gap:8px;overflow-x:auto;padding:4px 16px 12px}
.tp .tabs button{flex:none;padding:0 18px;border-radius:99px;background:var(--surf);border:1px solid var(--line);font-weight:600}
.tp .tabs button.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.tp ul{list-style:none;margin:0;padding:0}
.tp .menu,.tp .sent{margin:0 16px;background:var(--surf);border-radius:16px;overflow:hidden;border:1px solid var(--line)}
.tp .sent.flat{margin:0;border:0;border-radius:0}
.tp .menu li+li,.tp .sent li+li{border-top:1px solid var(--line)}
.tp .menu button{width:100%;display:flex;align-items:center;gap:12px;padding:8px 8px 8px 16px;min-height:60px;text-align:left}
.tp .menu span:first-child{flex:1;font-weight:600}
.tp .pr{color:var(--mute)}
.tp .menu i{font-style:normal;width:44px;height:44px;border-radius:12px;background:var(--sea);color:var(--onsea);display:grid;place-items:center;font-size:28px}
.tp .sent li{display:flex;align-items:center;gap:8px;padding:8px 8px 8px 16px;min-height:56px}
.tp .sent li div:first-child{flex:1;display:flex;flex-direction:column}
.tp .sent small{color:var(--mute)}
.tp .sent small.note{color:var(--billbg);font-weight:600;font-size:15px}
.tp .sent a{color:var(--sea)}
.tp .lnk{color:var(--sea);font-weight:600;padding:0 10px;text-decoration:none;display:inline-flex;align-items:center;min-height:48px}
.tp .lnk.bad,.tp .sent .lnk:not(.bad):only-of-type{color:var(--billbg)}
.tp header .lnk{font-size:14px;padding:0 4px}
.tp .done{background:var(--sea);color:var(--onsea);font-weight:800;border-radius:12px;padding:0 18px;min-height:52px}
.tp .empty{margin:0 16px;color:var(--mute)}
.tp .pad{padding:12px 16px}
.tp .spacer{height:80px}
.tp .bar{position:fixed;left:0;right:0;bottom:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:var(--surf);border-top:1px solid var(--line);z-index:6}
.tp .bar .pri{max-width:488px;margin:0 auto}
.tp-nav{position:fixed;left:0;right:0;bottom:0;z-index:6;display:flex;max-width:520px;margin:0 auto;background:var(--surf);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px)}
.tp-nav button{flex:1;min-height:56px;font-weight:600;font-size:14px;color:var(--mute)}
.tp-nav button.on{color:var(--sea);font-weight:800;box-shadow:inset 0 3px 0 var(--sea)}
.tp-nav i{font-style:normal;background:var(--billbg);color:var(--billink);border-radius:99px;padding:1px 7px;font-size:12px;margin-left:2px}
.tp .ov{position:fixed;inset:0;background:var(--shadow);z-index:20}
.tp .sheet{position:fixed;left:0;right:0;bottom:0;max-height:90%;overflow:auto;z-index:21;max-width:520px;margin:0 auto;background:var(--surf);border-radius:20px 20px 0 0;padding:20px 16px calc(20px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:12px}
.tp .sheet p{margin:0}
.tp .to{color:var(--mute)}
.tp .cart li{padding:10px 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.tp .r,.tp .sp{display:flex;align-items:center;justify-content:space-between;gap:8px}
.tp .qty{display:flex;align-items:center;gap:4px}
.tp .qty button{width:48px;border-radius:12px;background:var(--bg);font-size:24px;font-weight:600}
.tp .qty span{min-width:28px;text-align:center;font-weight:800}
.tp input[type=text],.tp input[type=search],.tp input[type=tel],.tp input:not([type]){font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:10px;min-height:44px;padding:0 12px;width:100%}
.tp label{display:flex;flex-direction:column;gap:4px;font-size:14px;color:var(--mute)}
.tp label.chk{flex-direction:row;align-items:flex-start;gap:10px;color:var(--ink)}
.tp label.chk input{width:24px;height:24px;flex:none;margin-top:2px}
.tp .chips{display:flex;gap:6px;flex-wrap:wrap}
.tp .chips button{min-height:36px;padding:0 12px;border-radius:99px;border:1px solid var(--line);font-size:14px}
.tp .tt{font-size:22px;font-weight:800}
.tp .tg{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.tp .tg button{border:2px solid var(--line);border-radius:12px;font-size:22px;font-weight:800;min-height:64px}
.tp .cl{align-self:center;color:var(--mute);padding:0 16px}
.tp-load{text-align:center;padding:40px 16px;color:#5b7183}
.tp-login{max-width:360px;margin:24px auto;padding:0 16px}
.tp-login input[type=text],.tp-login input[type=password]{width:100%;min-height:48px;font-size:16px}
.tp-login input[type=submit]{min-height:52px;width:100%;font-size:18px;font-weight:700}
.tp-toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:#10263a;color:#fff;padding:12px 18px;border-radius:12px;z-index:99999;opacity:0;pointer-events:none;transition:opacity .2s;max-width:90%;text-align:center;font:16px/1.4 system-ui,sans-serif}
.tp-toast.on{opacity:1}
@media (prefers-reduced-motion:reduce){.tp-toast{transition:none}}

/* Προστασία από στυλ του θέματος: λίστες πάντα κάθετες */
.tp ul,.tp ol{display:block !important;list-style:none !important;margin-left:0;padding-left:0 !important}
.tp ul li{display:block !important;float:none !important;width:100% !important;max-width:none !important;margin:0 !important;list-style:none !important;position:static !important}
.tp ul li::before,.tp ul li::after{content:none !important}
.tp .menu,.tp .sent{margin:0 16px !important;width:auto !important}
.tp .sent.flat{margin:0 !important}
.tp .menu li>button{width:100% !important;display:flex !important}
.tp .sent li{display:flex !important}
.tp .cart li{display:flex !important}
.tp .tabs{scrollbar-width:none}
.tp .tabs::-webkit-scrollbar{display:none}
.tp .tabs button{white-space:nowrap}
.tp .split{align-self:flex-start;min-height:40px;padding:0 14px;border-radius:10px;border:1px dashed var(--sea);color:var(--sea);font-weight:600;font-size:14px;background:transparent}
.tp .lbl{padding:10px 16px 0}
.tp .lbl input{font-weight:600}
.tp .tb .lb{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 6px;font-weight:700;color:inherit}
