.global-search {
    position: relative;
    min-width: 0;
}

.global-search .search:focus-within {
    border-color: var(--green);
    box-shadow: 0 0 0 2px var(--green-soft);
}

.global-search .search input {
    width: min(240px, 40vw);
}

.global-search-panel {
    position: absolute;
    z-index: 60;
    top: calc(100% + 7px);
    right: 0;
    width: min(430px, calc(100vw - 28px));
    max-height: min(520px, 70vh);
    overflow: auto;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: 0 14px 34px rgba(16, 42, 36, .16);
}

.notification-center { position: relative; }
.notification-button { position: relative; }
.notification-button > span { font-size: 1rem; font-weight: 900; }
.notification-button > strong { position:absolute;top:-7px;right:-7px;min-width:19px;height:19px;padding:0 5px;border:2px solid var(--canvas);border-radius:10px;background:#b8303b;color:#fff;font-size:.62rem;line-height:15px;text-align:center; }
.notification-panel { position:absolute;z-index:70;top:calc(100% + 9px);right:0;width:min(430px,calc(100vw - 28px));max-height:min(620px,76vh);overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 14px 34px rgba(16,42,36,.18); }
.notification-panel header,.notification-panel footer { display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 17px; }
.notification-panel header { border-bottom:1px solid var(--line); }
.notification-panel header h2 { margin:2px 0 0;font-size:1.05rem; }
.notification-panel header .eyebrow { font-size:.63rem; }
.notification-close { width:34px;height:34px;border:0;background:var(--green-soft);color:var(--green-dark);font:700 1.25rem/1 inherit; }
.notification-list { max-height:min(480px,60vh);overflow:auto; }
.notification-list > p { margin:0;padding:22px 17px;color:var(--muted); }
.notification-item { width:100%;display:grid;grid-template-columns:9px minmax(0,1fr) 34px;gap:12px;padding:14px 12px 14px 17px;border:0;border-bottom:1px solid var(--line);background:#fff;color:var(--ink);font:inherit;text-align:left; }
.notification-item:hover { background:var(--green-soft); }
.notification-open,.notification-dismiss { border:0;background:transparent;color:inherit;font:inherit;text-align:left; }
.notification-dismiss { width:32px;height:32px;border:1px solid var(--line);color:var(--green);font-weight:900;text-align:center; }
.notification-dismiss:hover { background:#fff;border-color:var(--green); }
.notification-item > i { width:9px;height:9px;margin-top:5px;border-radius:50%;background:#3a7768; }
.notification-item.urgent > i { background:#b8303b; }
.notification-item.warning > i { background:#bd7410; }
.notification-item strong,.notification-item small,.notification-item em { display:block; }
.notification-item strong { line-height:1.3; }
.notification-item small { margin-top:3px;color:var(--muted);font-size:.76rem;line-height:1.4; }
.notification-item em { margin-top:7px;color:var(--green);font-size:.69rem;font-style:normal;font-weight:800;text-transform:uppercase; }
.notification-panel footer { border-top:1px solid var(--line);justify-content:flex-start; }
.notification-panel footer small { margin-left:auto; }
.notification-panel footer button { border:0;background:transparent;color:var(--green);font:800 .77rem inherit; }
.notification-panel footer small { color:var(--muted); }

.global-search-panel > p {
    margin: 0;
    padding: 18px;
    color: var(--muted);
    font-size: .84rem;
}

.global-search-summary {
    border-bottom: 1px solid var(--line);
    color: var(--ink) !important;
    font-weight: 750;
}
.global-search-group > h3 { display:flex;align-items:center;justify-content:space-between;margin:0;padding:9px 15px;background:var(--canvas);color:var(--muted);font-size:.7rem;letter-spacing:.04em;text-transform:uppercase; }
.global-search-group > h3 span { min-width:22px;padding:2px 6px;border-radius:12px;background:var(--green-soft);color:var(--green);text-align:center; }

.global-search-result {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    padding: 13px 15px;
    border: 0;
    border-bottom: 1px solid var(--line);
    background: #fff;
    color: var(--ink);
    font: inherit;
    text-align: left;
}

.global-search-result:last-child { border-bottom: 0; }
.global-search-result:hover,
.global-search-result.active { background: var(--green-soft); }
.global-search-result em {
    padding-top: 2px;
    color: var(--green);
    font-size: .7rem;
    font-style: normal;
    font-weight: 850;
    text-transform: uppercase;
}
.global-search-result strong,
.global-search-result small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
}
.global-search-result strong { white-space: nowrap; }
.global-search-result small {
    margin-top: 3px;
    color: var(--muted);
    font-size: .76rem;
}

@media (max-width: 720px) {
    .global-search {
        order: 4;
        width: 100%;
    }
    .global-search .search {
        display: flex;
        width: 100%;
    }
    .global-search .search input { width: 100%; }
    .global-search-panel {
        right: auto;
        left: 0;
        width: 100%;
    }
    .global-search-result { grid-template-columns: minmax(0, 1fr); }
    .notification-panel { position:fixed;top:72px;right:14px;left:14px;width:auto;max-height:calc(100vh - 92px); }
}
