.sult5-wrap{max-width:1180px;margin:0 auto}.sult5-narrow{max-width:760px}.sult5-card,.sult5-hero,.sult5-dashboard-head{background:#fff;border:1px solid #dbe3ee;border-radius:16px;padding:24px;margin:16px 0;box-shadow:0 8px 24px rgba(15,23,42,.04);box-sizing:border-box}
        .sult5-hero{background:#eff6ff;border-color:#bfdbfe}.sult5-hero h1,.sult5-dashboard-head h1{margin-top:0}.sult5-emoji{font-size:38px}.sult5-input{width:100%;max-width:none;padding:11px 12px;border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;background:#fff}.sult5-input[type="number"]{max-width:180px}.sult5-btn{display:inline-block;background:#e5e7eb;color:#111827;border:0;border-radius:8px;padding:10px 16px;text-decoration:none;font-weight:700;cursor:pointer}.sult5-btn-primary{background:#f59e0b;color:#111}
        .sult5-service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.sult5-service{border:1px solid #dbe3ee;border-radius:14px;padding:18px;background:#f8fafc}.sult5-service-icon{font-size:32px}.sult5-badge{display:inline-block;background:#e5e7eb;border-radius:999px;padding:5px 10px;font-weight:700}.sult5-badge-ok{background:#dcfce7;color:#166534}.sult5-alert{padding:12px 14px;border-radius:10px;margin:12px 0}.sult5-alert-error{background:#fee2e2;border-left:4px solid #ef4444}.sult5-highlight{border-left:6px solid #f59e0b}.sult5-approved{border-left:6px solid #16a34a;background:#f0fdf4}.sult5-center{text-align:center}.sult5-status{background:#f8fafc;border-radius:10px;padding:12px;margin-top:14px}.sult5-today{line-height:1.9}.sult5-inline-form{margin-top:12px}.sult5-service .sult5-btn{margin-top:10px}
        .sult5-profile-form,.sult5-event-form{margin-top:18px}.sult5-wide-editor{width:100%;max-width:100%;clear:both}.sult5-management-editor{max-width:100%;overflow:visible}.sult5-management-editor form{width:100%;max-width:100%}.sult5-management-editor .sult5-form-grid{display:block;width:100%;max-width:100%}.sult5-management-editor .sult5-field{display:block;width:100%;max-width:100%;margin:0 0 16px 0}.sult5-management-editor .sult5-field label{display:block;width:100%;max-width:100%}.sult5-management-editor .sult5-input{display:block;width:100% !important;max-width:100% !important;min-width:0;box-sizing:border-box}.sult5-management-editor select.sult5-input{width:100% !important}.sult5-management-editor textarea.sult5-input{min-height:130px;resize:vertical}.sult5-management-editor .sult5-media-field{width:100%;max-width:100%;margin-bottom:20px}.sult5-management-editor .sult5-media-id{max-width:260px !important}.sult5-management-editor .sult5-fieldset{border-top:1px solid #e5e7eb;margin-top:28px;padding-top:18px;width:100%;max-width:100%}.sult5-management-editor .sult5-fieldset h3{margin-top:0}.sult5-action-row{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.sult5-media-preview{margin:8px 0;min-height:44px}.sult5-media-preview-img{max-width:360px;height:auto;border-radius:8px;border:1px solid #e5e7eb}.sult5-muted{color:#64748b}.sult5-preview-card{border:1px solid #dbe3ee;background:#f8fafc;border-radius:14px;padding:16px;margin:16px 0}.sult5-preview-cover{width:100%;max-height:260px;object-fit:cover;border-radius:12px}.sult5-preview-head{display:flex;gap:14px;align-items:center;margin:12px 0}.sult5-preview-logo{width:80px;height:80px;object-fit:contain;border-radius:10px;background:#fff;border:1px solid #e5e7eb}.sult5-table-wrap{overflow-x:auto}.sult5-table{width:100%;border-collapse:collapse}.sult5-table th,.sult5-table td{border-bottom:1px solid #e5e7eb;padding:10px;text-align:left;vertical-align:top}
        .sult5-service-nav{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.sult5-service-nav .sult5-btn{margin:4px 0}.sult5-relationship-list{display:grid;gap:14px}.sult5-relationship-row{border:1px solid #e5e7eb;border-radius:12px;padding:14px;background:#f8fafc}.sult5-check{display:block;margin-top:8px;font-weight:600}

        .sult5-services-compact .sult5-service-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.sult5-services-compact .sult5-service{padding:14px}.sult5-services-compact .sult5-service h3{font-size:20px;margin:6px 0}.sult5-services-compact .sult5-service p{font-size:14px;line-height:1.5}.sult5-editor-head{display:flex;gap:18px;align-items:flex-start;justify-content:space-between;border-bottom:1px solid #e5e7eb;padding-bottom:14px;margin-bottom:14px}.sult5-completion{min-width:160px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px;padding:12px;text-align:center}.sult5-completion strong{display:block;font-size:30px}.sult5-completion span{color:#64748b;font-weight:700}.sult5-progress{height:10px;border-radius:999px;background:#e5e7eb;overflow:hidden;margin-top:8px}.sult5-progress i{display:block;height:100%;background:#f59e0b}.sult5-notice-ok{background:#dcfce7;color:#14532d;border-left:5px solid #22c55e;border-radius:10px;padding:12px 14px;margin:12px 0;font-weight:700}.sult5-missing{background:#fff7ed;border-left:5px solid #f59e0b;border-radius:10px;padding:12px 14px;margin:12px 0}.sult5-help{background:#eff6ff;border-left:4px solid #3b82f6;border-radius:8px;padding:10px 12px;color:#334155}.sult5-sticky-actions{position:sticky;top:32px;background:#fff;z-index:10;border:1px solid #e5e7eb;border-radius:12px;padding:10px}.sult5-portal-polish .sult5-fieldset{scroll-margin-top:120px}.sult5-media-field{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;padding:14px}.sult5-media-field input[type=file]{background:#fff}.sult5-gallery-upload{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;padding:14px}.sult5-gallery-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin:12px 0}.sult5-gallery-item{display:block;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:8px;text-align:center}.sult5-gallery-item img{max-width:100%;height:90px;object-fit:cover;border-radius:8px}.sult5-gallery-item span{display:block;margin-top:6px;font-size:13px}.sult5-admin-advanced{margin-top:10px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:10px}.sult5-roster-list{display:grid;gap:14px;margin-top:14px}.sult5-roster-row{border:1px solid #e5e7eb;border-radius:12px;padding:14px;background:#fff}.sult5-roster-box{margin-top:22px;border-top:2px solid #e5e7eb;padding-top:18px}.sult5-relationship-row{position:relative}.sult5-relationship-row:before{content:"Suhde";display:inline-block;background:#e0f2fe;color:#075985;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:700;margin-bottom:8px}

        .sult5-classification-hint{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:12px;margin-top:12px}.sult5-intelligence-box{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:14px;padding:14px;margin:12px 0}.sult5-intelligence-box>div{flex:1}.sult5-intelligence-bar{height:12px;background:#dbeafe;border-radius:999px;overflow:hidden;margin-top:8px}.sult5-intelligence-bar i{display:block;height:100%;background:#2563eb}.sult5-intelligence-score{font-size:26px}.sult5-ai-suggestion-result{margin:10px 0}.sult5-ai-suggestion-result:not(:empty){background:#ecfdf5;border:1px solid #bbf7d0;border-radius:12px;padding:10px 12px;font-weight:700}.sult5-term-group{margin:18px 0;border:1px solid #e5e7eb;border-radius:14px;background:#f8fafc;padding:14px}.sult5-term-group h4{margin:0 0 10px}.sult5-term-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px}.sult5-term-option{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:8px 10px;font-weight:700}.sult5-term-option.is-filtered-out,.sult5-term-option.is-extra-term{display:none}.sult5-smart-classification.is-showing-all .sult5-term-option{display:flex}.sult5-smart-actions{justify-content:flex-start}.sult5-tabs{position:sticky;top:32px;z-index:20;display:flex;flex-wrap:wrap;gap:8px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:10px;margin:14px 0;box-shadow:0 8px 20px rgba(15,23,42,.05)}.sult5-tab{border:0;border-radius:10px;background:#e5e7eb;padding:10px 14px;font-weight:800;cursor:pointer}.sult5-tab.is-active{background:#f59e0b;color:#111}.sult5-smart-editor .sult5-tab-panel{display:none}.sult5-smart-editor .sult5-tab-panel.is-active{display:block}.sult5-checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin:10px 0 0;padding:0;list-style:none}.sult5-checklist li{border-radius:999px;padding:7px 10px;background:#f8fafc;font-weight:700}.sult5-checklist li.is-done{background:#dcfce7;color:#166534}.sult5-checklist li.is-missing{background:#fff7ed;color:#9a3412}.sult5-floating-save{position:sticky;bottom:14px;z-index:25;display:flex;gap:12px;align-items:center;justify-content:flex-end;background:rgba(255,255,255,.96);border:1px solid #e5e7eb;border-radius:14px;padding:12px;margin:18px 0;box-shadow:0 10px 30px rgba(15,23,42,.12)}.sult5-save-state{color:#64748b;font-weight:700}.sult5-required{color:#dc2626;font-weight:900}.sult5-status-badge{display:inline-block;margin-top:8px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:999px;padding:6px 12px;font-weight:800}.sult5-fieldset h3{font-size:22px}.sult5-smart-editor .sult5-fieldset{border:1px solid #e5e7eb;border-radius:14px;padding:18px;background:#fff;margin-top:16px}
        .sult5-member-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.sult5-user-menu{background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px;padding:12px;min-width:240px}.sult5-user-menu div{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.sult5-user-menu a{background:#e5e7eb;color:#111827;border-radius:999px;padding:6px 10px;text-decoration:none;font-weight:700}.sult5-quick-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.sult5-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.sult5-dashboard-grid>div{background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px;padding:16px}.sult5-dashboard-grid h3{margin:0 0 8px}.sult5-dashboard-grid strong{display:block;font-size:28px}.sult5-dashboard-grid small{display:block;color:#64748b;margin-top:8px}.sult5-member-two-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.sult5-clean-list{line-height:1.9;margin-bottom:0}.sult5-welcome-steps{border-left:6px solid #f59e0b;background:#fff7ed}.sult5-welcome-steps ol{line-height:1.9}.sult5-login-experience .sult5-join-card{background:#f8fafc}.sult5-benefits{line-height:1.9}.sult5-login-card .login-username label,.sult5-login-card .login-password label{display:block;font-weight:700;margin-bottom:6px}.sult5-login-card input.input{width:100%;padding:11px 12px;border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box}.sult5-login-card input.button{background:#f59e0b;color:#111;border:0;border-radius:8px;padding:10px 16px;font-weight:800;cursor:pointer}
        @media(max-width:760px){.sult5-service-grid{grid-template-columns:1fr}.sult5-card,.sult5-hero,.sult5-dashboard-head{padding:18px}.sult5-editor-head{display:block}.sult5-completion{margin-top:12px}.sult5-sticky-actions{position:static}}

/* v11.3.1 Smart Profile Editor */
.sult5-field-readonly{background:#f3f6fa;border:1px solid #d8e0ea;border-radius:10px;padding:12px}
.sult5-field-readonly input[readonly]{background:#e9eef5!important;color:#475569!important;cursor:not-allowed;border-color:#cbd5e1!important}
.sult5-field-readonly label{color:#334155;font-weight:700}
.sult5-editable-section{grid-column:1/-1;background:#f0fdf4;border-left:4px solid #16a34a;border-radius:9px;padding:12px 14px;margin:4px 0 10px}
.sult5-editable-section h4{margin:0 0 4px}.sult5-editable-section p{margin:0;color:#475569}
.sult5-rich-editor{margin-top:14px}.sult5-rich-editor .wp-editor-wrap{margin-top:8px}
.sult5-rich-editor .mce-toolbar .mce-btn button{padding:4px 6px}


/* v11.4.1 – Tapahtumatyötila pysyy teeman normaalissa sisältöalueessa.
   Emme piilota sivupalkkia tai muuta teeman grid-rakennetta, koska se kavensi
   joissakin teemoissa koko sivun mobiilileveyteen. */
.sult5-member-experience{width:100%;max-width:1180px;margin-left:auto;margin-right:auto;}
#sult5-service-events{width:100%;max-width:none;}
.sult-event-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.sult-event-tab{border:0;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer;background:#e5e7eb}.sult-event-tab.active{background:#ff9f00;color:#111}.sult-event-panel{display:none}.sult-event-panel.active{display:block}.sult-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:9px}.sult-check{padding:10px;border:1px solid #dce3ec;border-radius:9px;background:#f8fafc}.sult-lookup{position:relative}.sult-lookup-results{position:absolute;z-index:20;left:0;right:0;background:#fff;border:1px solid #ccd5e1;box-shadow:0 8px 20px #0002;max-height:260px;overflow:auto}.sult-lookup-result{display:block;width:100%;text-align:left;padding:10px;border:0;border-bottom:1px solid #eee;background:#fff;cursor:pointer}.sult-lookup-result:hover{background:#fff5df}.sult-selected-entity{margin-top:6px;padding:9px;border-radius:8px;background:#e8f7ef}.sult-part-row{display:grid;grid-template-columns:150px minmax(180px,1.2fr) minmax(150px,1fr) minmax(150px,1fr) 125px 80px 150px;gap:8px;align-items:end;margin-bottom:10px;padding:10px;border:1px solid #dde4ed;border-radius:10px}.sult-part-actions{display:flex;gap:5px}.sult-part-note{grid-column:1/-1}.sult-part-row label{font-size:13px;font-weight:600}.sult-part-row input,.sult-part-row select{width:100%}@media(max-width:900px){.sult-part-row{grid-template-columns:1fr 1fr}.sult-part-note{grid-column:1/-1}}@media(max-width:620px){.sult-part-row{grid-template-columns:1fr}.sult-part-note{grid-column:auto}}

.sult5-btn-danger{background:#fff1f2!important;border-color:#be123c!important;color:#9f1239!important}.sult5-btn-danger:hover{background:#ffe4e6!important}.sult5-auto-title-note{background:#eef6ff;border-left:4px solid #2563eb;padding:12px 14px;border-radius:8px}
.sult-event-ai-help{grid-column:1/-1;background:#eaf8ef;border-left:4px solid #209447;color:#14532d;padding:13px 15px;border-radius:10px;margin:12px 0 16px;line-height:1.55}.sult-event-writer-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px 14px;background:#f5f7fa;border:1px solid #dbe3ec;border-radius:12px;padding:14px;margin:14px 0}.sult-event-writer-options>strong{grid-column:1/-1}.sult-event-writer-options label{display:flex;align-items:center;gap:7px}.sult-event-description-preview{margin:14px 0;padding:14px;border:1px dashed #8aa4bf;border-radius:10px;background:#fff}.sult-event-description-preview:empty{display:none}

/* v11.5.3 – Smart Location & Google Maps */
.sult-event-default-help{margin:0 0 18px;padding:14px 16px;border:1px solid #bfe7cf;border-left:5px solid #16a34a;border-radius:12px;background:#eefbf3;color:#163d27;line-height:1.55}
.sult-event-default-help strong{color:#0b6b36}
.sult-event-panel[data-panel="place"] .sult-selected-entity{margin-top:8px;padding:10px 12px;border-radius:10px;background:#eaf8ef;border:1px solid #ccebd7;color:#14532d;font-weight:800}


.sult5-classification-hierarchy.is-showing-all .sult5-term-option,
.sult5-smart-classification.is-showing-all .sult5-term-option{display:flex!important}
.sult5-dependency-note{margin:8px 0 12px;padding:10px 12px;border-left:4px solid #2563eb;background:#eff6ff;border-radius:8px;color:#1e3a8a;font-weight:700}
.sult5-term-group[data-require-main="1"] h4:after{content:" • rajautuu valintojen mukaan";font-size:12px;font-weight:600;color:#64748b}


/* v14.6.3: Event Writer first, larger editors and content-aware growth. */
.sult-event-panel[data-panel="basic"] .sult5-rich-editor .wp-editor-area{min-height:320px}
.sult-event-panel[data-panel="basic"] .sult5-rich-editor .mce-edit-area iframe{min-height:320px}
.sult-event-panel[data-panel="basic"] textarea.sult-autosize-textarea{min-height:170px;overflow-y:hidden;resize:none}
.sult-event-panel[data-panel="basic"] textarea.sult-autosize-textarea[rows="4"]{min-height:130px}
.sult-event-panel[data-panel="basic"] textarea.sult-autosize-textarea[rows="6"]{min-height:170px}
.sult-event-panel[data-panel="basic"] textarea.sult-autosize-textarea[rows="10"]{min-height:250px}

/* v15.10.8 – selkeä Oma SULT -työtilanavigointi ja turvallinen sulkeminen. */
.sult5-user-menu a.is-active{background:#f59e0b;color:#111827;box-shadow:0 0 0 2px rgba(245,158,11,.22)}
.sult5-workspace-actions{align-items:center;background:#f8fafc;border:1px solid #dbe3ee;border-radius:12px;padding:10px 12px;margin:12px 0 18px}
.sult5-workspace-actions--sticky{position:sticky;bottom:12px;z-index:32;background:rgba(255,255,255,.97);box-shadow:0 12px 32px rgba(15,23,42,.16);justify-content:flex-end;margin-top:24px}
.sult5-btn-close{background:#0b2347;color:#fff}
.sult5-btn-close:hover{background:#071a36;color:#fff}
.sult5-btn-discard{background:#fff1f2;color:#9f1239;border:1px solid #fecdd3}
.sult5-btn-discard:hover{background:#ffe4e6;color:#881337}
.sult5-save-state{margin-left:auto;color:#64748b;font-weight:800}
.sult5-save-state.is-dirty{color:#b45309}
.sult5-preview-actions{margin-top:-6px}
.sult5-workspace-notice{margin:12px 0}
.sult5-empty-state{border:1px dashed #cbd5e1;border-radius:14px;background:#f8fafc;padding:24px;text-align:center;margin-top:18px}
.sult5-empty-state h3{margin-top:0}
.sult5-unsaved-overlay{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(2,8,23,.68);backdrop-filter:blur(3px)}
.sult5-unsaved-dialog{width:min(100%,560px);background:#fff;border-radius:18px;padding:24px;box-shadow:0 28px 80px rgba(0,0,0,.34);border:1px solid #dbe3ee}
.sult5-unsaved-dialog h2{margin:0 0 8px;color:#0f172a}
.sult5-unsaved-dialog p{color:#475569;line-height:1.6}
.sult5-unsaved-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
html.sult5-modal-open,html.sult5-modal-open body{overflow:hidden}
@media(max-width:760px){
  .sult5-member-head{display:block}
  .sult5-user-menu{margin-top:14px;min-width:0}
  .sult5-user-menu div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .sult5-user-menu a{text-align:center}
  .sult5-workspace-actions,.sult5-workspace-actions--sticky{position:static;display:grid;grid-template-columns:1fr;margin:12px 0}
  .sult5-workspace-actions .sult5-btn{width:100%;box-sizing:border-box;text-align:center}
  .sult5-save-state{margin-left:0;text-align:center}
  .sult5-unsaved-actions{display:grid;grid-template-columns:1fr}
}
