:root{--blue:#173f8a;--light:#f1f5f9;--ink:#13213a}*{box-sizing:border-box}body{margin:0;background:var(--light);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",sans-serif}.site-header{background:#fff;border-bottom:1px solid #dbe3ed}.brand{display:flex;align-items:center;gap:16px;text-decoration:none;color:var(--ink);font-weight:700}.brand img{height:48px;width:auto}.hero{padding:50px 0;background:linear-gradient(135deg,#173f8a,#4368b0);color:#fff}.hero h1{font-weight:800}.public-card{display:block;padding:38px;background:#fff;border-radius:18px;box-shadow:0 12px 35px rgba(15,23,42,.1);text-decoration:none;color:var(--ink);transition:.2s}.public-card:hover{transform:translateY(-3px)}.public-card h2{font-size:1.45rem}.public-card span{color:#3564ba}.content-card{background:#fff;border:1px solid #e3e8ef;border-radius:18px;padding:24px;box-shadow:0 12px 35px rgba(15,23,42,.11)}.meeting-top{display:flex;justify-content:space-between;align-items:flex-start;gap:25px;margin-bottom:20px}.meeting-top h1{font-size:clamp(1.5rem,3vw,2.2rem);margin:.25rem 0}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:#466496;font-size:.78rem;font-weight:800}.meeting-meta{display:flex;flex-wrap:wrap;gap:10px 20px;color:#526175}.notice,.info-box,.completion-box{padding:16px;border-radius:12px;margin:18px 0}.notice{background:#eaf2ff;border-left:4px solid #2563eb}.info-box{background:#f8fafc;border:1px solid #dce4ed}.completion-box{background:#ecfdf5;border:1px solid #a7f3d0}.lead-text{font-size:1.08rem;color:#526175}.video-wrapper{position:relative;width:100%;padding-bottom:56.25%;overflow:hidden;border-radius:14px;background:#000;margin-top:20px}.video-wrapper iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.stream-fallback{text-align:right;margin-top:8px}.files{margin-top:24px}.files h2{font-size:1.15rem}.file-list{display:grid;gap:8px}.file-list a{display:flex;gap:10px;padding:12px;border:1px solid #dce4ed;border-radius:10px;text-decoration:none}.site-footer{text-align:center;padding:22px;font-size:.8rem;color:#64748b}.login-card{max-width:440px;margin:auto;background:white;padding:32px;border-radius:18px;box-shadow:0 12px 35px rgba(15,23,42,.12)}.admin-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:#102a5f;color:#fff;padding:24px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.admin-brand{font-weight:800;font-size:1.2rem;color:#fff;text-decoration:none;margin-bottom:25px}.sidebar nav{display:grid;gap:6px;flex:1}.sidebar nav a{color:#dbeafe;text-decoration:none;padding:11px 12px;border-radius:9px}.sidebar nav a:hover{background:rgba(255,255,255,.12)}.admin-main{padding:30px;min-width:0}.admin-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.admin-top h1{font-size:1.7rem;margin:0}.admin-card{background:#fff;border:1px solid #e0e7ef;border-radius:14px;padding:22px;box-shadow:0 8px 24px rgba(15,23,42,.06)}.admin-card h2{font-size:1.2rem;margin-bottom:18px}@media(max-width:800px){.admin-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.sidebar nav{grid-template-columns:1fr 1fr;margin-bottom:15px}.admin-main{padding:16px}.meeting-top{display:block}.meeting-top .btn{margin-top:15px}.brand span{display:none}}

/* v1.1 - Ελληνικό διαχειριστικό και καταστάσεις συνεδριάσεων */
.sidebar{padding:22px 18px}.admin-brand{display:flex;flex-direction:column;gap:4px;margin-bottom:18px;line-height:1.25}.admin-brand span{font-size:1rem}.admin-brand small{font-size:.72rem;font-weight:500;color:#bfdbfe}.sidebar-nav{display:flex!important;flex-direction:column;gap:4px!important;justify-content:flex-start!important;flex:0 1 auto!important}.sidebar-nav a{padding:9px 10px!important}.sidebar-section{margin:12px 10px 3px;color:#93c5fd;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em}.sidebar-logout{margin-top:auto}.meeting-status{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;font-size:.76rem;font-weight:800;margin:.35rem 0}.status-draft{background:#e2e8f0;color:#475569}.status-scheduled{background:#dbeafe;color:#1d4ed8}.status-live{background:#fee2e2;color:#b91c1c}.status-completed{background:#dcfce7;color:#166534}.status-postponed{background:#ffedd5;color:#c2410c}.status-cancelled{background:#fee2e2;color:#991b1b}.status-alert{padding:18px;border-radius:12px;margin:18px 0;border:1px solid currentColor}.status-alert strong{display:block;font-size:1.1rem;margin-bottom:4px}.status-alert.status-postponed{background:#fff7ed}.status-alert.status-cancelled{background:#fef2f2}
.permission-box{border:1px solid #dce4ed;border-radius:10px;padding:12px 12px 12px 38px;background:#f8fafc}.fit-content{width:fit-content}

/* v1.3 - Νέα δημόσια διάταξη 25/75, στατική κεφαλίδα και ιστορικό */
.public-site-header{background:#fff;border-bottom:1px solid #dbe3ed}
.public-header-inner{min-height:78px;padding:12px clamp(16px,3vw,48px);display:grid;grid-template-columns:minmax(210px,1fr) minmax(280px,2fr) minmax(210px,1fr);align-items:center;gap:18px}
.public-brand{display:flex;align-items:center;pointer-events:none;user-select:none}
.public-brand img{height:48px;width:auto;max-width:100%}
.public-header-title{text-align:center;font-size:clamp(.95rem,1.45vw,1.15rem);font-weight:800;color:#24324a}
.public-header-spacer{min-width:1px}
.public-meeting-page{padding:22px;background:#eef3f8;min-height:calc(100vh - 134px)}
.public-meeting-grid{width:min(1900px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(290px,25%) minmax(0,75%);gap:20px;align-items:stretch}
.public-info-panel,.public-stream-panel{background:#fff;border:1px solid #dde5ee;border-radius:18px;box-shadow:0 10px 30px rgba(15,23,42,.08)}
.public-info-panel{padding:20px;display:flex;flex-direction:column;gap:22px;min-width:0}
.current-meeting-info h1{font-size:clamp(1.25rem,1.8vw,1.75rem);line-height:1.25;margin:.35rem 0 1rem;overflow-wrap:anywhere}
.public-details-list{display:grid;gap:0;margin:0 0 16px;border:1px solid #e1e8f0;border-radius:12px;overflow:hidden}
.public-details-list>div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;padding:10px 12px;border-bottom:1px solid #e8edf3}
.public-details-list>div:last-child{border-bottom:0}
.public-details-list dt{font-size:.78rem;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.035em}
.public-details-list dd{margin:0;font-size:.93rem;color:#1e293b;overflow-wrap:anywhere}
.compact-notice,.compact-info,.compact-completion{margin:12px 0;padding:12px;font-size:.9rem}
.public-short-description{font-size:.96rem;color:#526175;line-height:1.55;margin:12px 0}
.public-rich-text{font-size:.92rem;line-height:1.55;color:#334155;overflow-wrap:anywhere}
.compact-files{margin-top:16px}.compact-files h2{font-size:1rem}.compact-files .file-list a{font-size:.86rem;padding:9px}
.meeting-history-section{border-top:1px solid #e4eaf1;padding-top:18px;margin-top:auto}
.history-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.history-heading h2{font-size:1.05rem;margin:0}.history-heading span{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:#e8eef8;color:#173f8a;font-size:.78rem;font-weight:800}
.meeting-history-scroll{max-height:330px;overflow-y:auto;padding-right:5px;scrollbar-width:thin;scrollbar-color:#9fb0c7 #edf2f7}
.history-item{padding:12px 10px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;margin-bottom:8px;cursor:default;user-select:text}
.history-item:last-child{margin-bottom:0}.history-item-title{font-size:.9rem;font-weight:750;line-height:1.35;color:#1e293b;overflow-wrap:anywhere}.history-item-date{font-size:.78rem;color:#64748b;margin-top:5px}.history-item-status{display:inline-flex;margin-top:7px;padding:3px 8px;border-radius:999px;font-size:.7rem;font-weight:800}
.history-empty{font-size:.86rem;color:#64748b;margin:0}
.public-stream-panel{padding:18px;min-width:0;display:flex;flex-direction:column}
.stream-panel-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}.stream-panel-header h2{font-size:clamp(1.1rem,1.6vw,1.45rem);margin:2px 0 0}.stream-kicker{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#5270a0}
.public-video-wrapper{margin:0;flex:1;min-height:520px;padding-bottom:0;border-radius:14px}.public-video-wrapper iframe{position:absolute}
.stream-unavailable{min-height:520px;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:14px;border:1px solid currentColor;padding:30px;font-size:1.15rem}
.site-footer{background:#fff;border-top:1px solid #dbe3ed}
@media(max-width:1100px){.public-meeting-grid{grid-template-columns:minmax(270px,32%) minmax(0,68%)}.public-video-wrapper,.stream-unavailable{min-height:440px}}
@media(max-width:800px){.public-header-inner{grid-template-columns:1fr;text-align:center;min-height:auto}.public-brand{justify-content:center}.public-header-spacer{display:none}.public-meeting-page{padding:12px}.public-meeting-grid{grid-template-columns:1fr}.public-info-panel{order:1}.public-stream-panel{order:2}.public-video-wrapper,.stream-unavailable{min-height:0}.public-video-wrapper{padding-bottom:56.25%}.stream-unavailable{min-height:260px}.meeting-history-scroll{max-height:280px}.stream-panel-header{align-items:flex-start}.public-header-title{font-size:1rem}}

/* v1.4 - Πλήρης αξιοποίηση διαθέσιμου ύψους χωρίς κύλιση της δημόσιας σελίδας */
html,body{height:100%}
body{min-height:100dvh;display:flex;flex-direction:column;overflow-x:hidden}
body>main{flex:1;min-height:0;display:flex;flex-direction:column}
.public-meeting-page{
    flex:1;
    min-height:0;
    height:auto;
    overflow:hidden;
    padding:18px clamp(14px,2vw,30px);
}
.public-meeting-grid{
    flex:1;
    height:100%;
    min-height:0;
    width:100%;
    max-width:none;
    grid-template-columns:minmax(300px,24%) minmax(0,76%);
    gap:18px;
}
.public-info-panel,.public-stream-panel{height:100%;min-height:0}
.public-info-panel{overflow:hidden;padding:18px;gap:14px}
.current-meeting-info{min-height:0;overflow-y:auto;padding-right:5px;scrollbar-width:thin;scrollbar-color:#9fb0c7 #edf2f7}
.meeting-history-section{flex:0 0 min(36%,330px);min-height:150px;display:flex;flex-direction:column;overflow:hidden;padding-top:14px}
.meeting-history-scroll{flex:1;min-height:0;max-height:none;overflow-y:auto}
.public-stream-panel{overflow:hidden;padding:16px}
.stream-panel-header{flex:0 0 auto;margin-bottom:10px}
.public-video-wrapper{flex:1;min-height:0;height:100%;padding-bottom:0;margin:0;overflow:hidden}
.public-video-wrapper iframe{position:absolute;inset:0;width:100%;height:100%}
.stream-unavailable{flex:1;min-height:0;height:100%}
.site-footer{flex:0 0 auto;padding:10px 16px}

@media(max-width:1100px) and (min-width:801px){
    .public-meeting-grid{grid-template-columns:minmax(280px,30%) minmax(0,70%)}
}
@media(max-width:800px){
    body{overflow:auto}
    body>main{display:block}
    .public-meeting-page{height:auto;min-height:0;overflow:visible;padding:12px}
    .public-meeting-grid{height:auto;display:grid;grid-template-columns:1fr}
    .public-info-panel,.public-stream-panel{height:auto;overflow:visible}
    .current-meeting-info{overflow:visible;padding-right:0}
    .meeting-history-section{flex:auto;min-height:0;max-height:none}
    .meeting-history-scroll{max-height:280px}
    .public-video-wrapper{height:auto;min-height:0;padding-bottom:56.25%}
    .stream-unavailable{min-height:260px;height:auto}
}

/* v1.5 - εμφανής προβολή όλων των προαιρετικών πεδίων */
.public-optional-content{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.optional-content-block{border:1px solid #dbe5f0;border-radius:12px;background:#f8fafc;padding:12px}
.optional-content-block h2{font-size:.78rem;line-height:1.2;text-transform:uppercase;letter-spacing:.055em;color:#173b78;margin:0 0 7px;font-weight:800}
.optional-content-text{font-size:.92rem;line-height:1.55;color:#334155;overflow-wrap:anywhere;white-space:normal}
.optional-content-notice{background:#eff6ff;border-color:#bfdbfe}
.optional-content-info{background:#f8fafc}
.optional-content-completion{background:#f0fdf4;border-color:#bbf7d0}
.current-meeting-info{overscroll-behavior:contain}
@media(min-width:801px){.current-meeting-info{scrollbar-gutter:stable}}
/* =========================================================
   ΣΕΛΙΔΑ ΧΩΡΙΣ ΤΡΕΧΟΥΣΑ ΣΥΝΕΔΡΙΑΣΗ
   ========================================================= */

.no-current-meeting-layout {
    width: min(1100px, calc(100% - 32px));
    margin: 40px auto;
    display: grid;
    gap: 24px;
}

.no-current-meeting-card,
.public-history-standalone {
    padding: 30px;
    border: 1px solid #dbe3ee;
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 14px 35px rgba(15, 23, 42, 0.09);
}

.no-current-meeting-card {
    text-align: center;
}

.no-current-meeting-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    margin-bottom: 15px;
    color: #ffffff;
    font-size: 1.7rem;
    font-weight: 800;
    border-radius: 50%;
    background: #2c5fae;
}

.no-current-meeting-card h1 {
    margin: 0 0 10px;
    color: #102347;
    font-size: clamp(1.35rem, 2.5vw, 1.75rem);
}

.no-current-meeting-card p {
    margin: 0;
    color: #64748b;
    line-height: 1.6;
}

.public-history-standalone .history-heading {
    margin-bottom: 18px;
}

.history-eyebrow {
    display: block;
    margin-bottom: 4px;
    color: #5373a5;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.history-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 34px;
    padding: 0 10px;
    color: #214f97;
    font-weight: 800;
    border-radius: 999px;
    background: #edf4ff;
}

.meeting-history-list {
    display: grid;
    gap: 12px;
    max-height: 520px;
    overflow-y: auto;
    padding-right: 5px;
}

.history-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 16px 18px;
    border: 1px solid #dce5ef;
    border-radius: 14px;
    background: #f9fbfd;
}

.history-item-main {
    min-width: 0;
}

.history-item-title {
    color: #172b4d;
    font-weight: 750;
    overflow-wrap: anywhere;
}

.history-item-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 15px;
    margin-top: 6px;
    color: #64748b;
    font-size: 0.85rem;
}

.history-empty-state {
    padding: 30px 20px;
    text-align: center;
    color: #64748b;
    border: 1px dashed #cbd6e4;
    border-radius: 14px;
    background: #f8fafc;
}

    .history-empty-state strong {
        display: block;
        margin-bottom: 6px;
        color: #334155;
    }

    .history-empty-state p {
        margin: 0;
    }

/* Νέα ημερομηνία αναβληθείσας συνεδρίασης */

.meeting-rescheduled-box {
    margin-top: 16px;
    padding: 16px;
    color: #93420f;
    border: 1px solid #fed7aa;
    border-radius: 14px;
    background: #fff7ed;
}

    .meeting-rescheduled-box h2 {
        margin: 0 0 10px;
        color: #7c2d12;
        font-size: 1rem;
    }

    .meeting-rescheduled-box div + div {
        margin-top: 5px;
    }

@media (max-width: 700px) {
    .no-current-meeting-layout {
        width: min(100% - 20px, 1100px);
        margin: 20px auto;
        gap: 15px;
    }

    .no-current-meeting-card,
    .public-history-standalone {
        padding: 20px 16px;
        border-radius: 16px;
    }

    .history-item {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
        padding: 14px;
    }
}