xpi/content/css/tabs_curved-r-osx.css
@namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);

@-moz-document url(chrome://browser/content/browser.xul){

	.tabs-newtab-button:not(:-moz-lwtheme) {
	  background-position: left bottom, 30px bottom, right bottom;
	  background-repeat: no-repeat;
	  background-size: 30px 100%, calc(100% - (2 * 30px)) 100%, 30px 100%;
	}

	.tabs-newtab-button:not(:-moz-lwtheme){
	  background-image: url(chrome://classic_theme_restorer/content/images/ntab-end-r.png),
						url(chrome://classic_theme_restorer/content/images/ntab-middle-r.png),
						url(chrome://classic_theme_restorer/content/images/ntab-start-r.png) !important;
	}

	.tabs-newtab-button:not(:-moz-lwtheme):hover{
	  background-image: url(chrome://classic_theme_restorer/content/images/ntab-hov-end-r.png),
						url(chrome://classic_theme_restorer/content/images/ntab-hov-middle-r.png),
						url(chrome://classic_theme_restorer/content/images/ntab-hov-start-r.png) !important;
	}

	#main-window[fx51plus="true"] .tabbrowser-tab::after,
	#main-window[fx51plus="true"] .tabbrowser-tab::before {
	  opacity: 0 !important;
	}

	#main-window .tabbrowser-tab:not(:-moz-lwtheme):hover > .tab-stack > .tab-background:not([visuallyselected=true]),
	#main-window .tabbrowser-tab:not(:-moz-lwtheme):not(:hover) > .tab-stack > .tab-background:not([visuallyselected=true]) {
	  background-position: left bottom, 30px bottom, right bottom;
	  background-repeat: no-repeat;
	  background-size: 30px 100%, calc(100% - (2 * 30px)) 100%, 30px 100%;
	}

	#main-window .tabbrowser-tab:not(:-moz-lwtheme):hover > .tab-stack > .tab-background:not([visuallyselected=true]),
	#main-window .tabbrowser-tab:not(:-moz-lwtheme):not(:hover) > .tab-stack > .tab-background:not([visuallyselected=true]){
	  background-image: url(chrome://browser/skin/tabbrowser/tab-background-start.png),
						url(chrome://browser/skin/tabbrowser/tab-background-middle.png),
						url(chrome://browser/skin/tabbrowser/tab-background-end.png) !important;
	}
	
	#main-window .tabbrowser-tab:not(:-moz-lwtheme):not([visuallyselected=true]):not(:hover) .tab-background-start,
	#main-window .tabbrowser-tab:not(:-moz-lwtheme):not([visuallyselected=true]):hover .tab-background-start{
	  clip-path: url(chrome://browser/content/browser.xul#tab-curve-clip-path-start) !important;
	}
	
	#main-window .tabbrowser-tab:not(:-moz-lwtheme):not([visuallyselected=true]):not(:hover) .tab-background-end,
	#main-window .tabbrowser-tab:not(:-moz-lwtheme):not([visuallyselected=true]):hover .tab-background-end	{
	  clip-path: url(chrome://browser/content/browser.xul#tab-curve-clip-path-end) !important;
	}

	#tabbrowser-tabs[movingtab] > .tabbrowser-tab[beforeselected]:not([last-visible-tab])::after,
	.tabbrowser-tab:not([selected]):not([afterselected-visible]):not([afterhovered]):not([first-visible-tab]):not(:hover)::before,
	#tabbrowser-tabs:not([overflow]) > .tabbrowser-tab[last-visible-tab]:not([selected]):not([beforehovered]):not(:hover)::after {
	  background-image: none !important;
	  background-color: unset !important;
	}
	
	#main-window .tabbrowser-tab:not(:-moz-lwtheme):not([visuallyselected=true]):not(:hover) .tab-stack .tab-background-middle,
	#main-window .tabbrowser-tab:not(:-moz-lwtheme):not([visuallyselected=true]):not(:hover) .tab-background-start,
	#main-window .tabbrowser-tab:not(:-moz-lwtheme):not([visuallyselected=true]):not(:hover) .tab-background-end {
	  background-image: linear-gradient(to top, #676f76 0px, transparent 1px),linear-gradient(transparent, transparent 2px, #a9a9a9 0px, #9f9f9f, #949494), none !important;
	}
	
	#main-window .tabbrowser-tab:not(:-moz-lwtheme):not([visuallyselected=true]):hover .tab-stack .tab-background-middle,
	#main-window .tabbrowser-tab:not(:-moz-lwtheme):not([visuallyselected=true]):hover .tab-background-start,
	#main-window .tabbrowser-tab:not(:-moz-lwtheme):not([visuallyselected=true]):hover .tab-background-end {
	  background-image: linear-gradient(to top, #676f76 0px, transparent 1px),linear-gradient(transparent, transparent 2px, #b8b8b8 0px, #adadad), none !important;
	}

	#main-window .tab-background-start[visuallyselected=true]:-moz-locale-dir(ltr):not(:-moz-lwtheme)::before,
	#main-window .tab-background-end[visuallyselected=true]:-moz-locale-dir(rtl):not(:-moz-lwtheme)::before {
	  background-image: url(chrome://browser/skin/tabbrowser/tab-stroke-start.png),linear-gradient(to top,#d3d3d3,#d3d3d3,#cdcdcd) !important;
	  clip-path: url(chrome://browser/content/browser.xul#tab-curve-clip-path-start) !important;
	}
	#main-window .tab-background-end[visuallyselected=true]:-moz-locale-dir(ltr):not(:-moz-lwtheme)::before,
	#main-window .tab-background-start[visuallyselected=true]:-moz-locale-dir(rtl):not(:-moz-lwtheme)::before {
	  background-image: url(chrome://browser/skin/tabbrowser/tab-stroke-end.png),linear-gradient(to top,#d3d3d3,#d3d3d3,#cdcdcd) !important;
	  clip-path: url(chrome://browser/content/browser.xul#tab-curve-clip-path-end) !important;
	}
	#main-window .tab-background-middle[visuallyselected=true]:not(:-moz-lwtheme) {
	  background-clip: padding-box, padding-box, content-box !important;
	  background-image: url(chrome://browser/skin/tabbrowser/tab-active-middle.png), linear-gradient(transparent, transparent 2px, #cdcdcd 0px,#d3d3d3), none !important;
	}
	
	#main-window[tabsintitlebar]:not([sizemode="maximized"]):not([inFullscreen]) #toolbar-menubar:-moz-any([autohide="true"][inactive], :not([autohide])) + #TabsToolbar .tab-background-middle:not([selected=true]) {
	  clip-path: none !important;
	}

	.tabbrowser-tab[selected=true]:not(:-moz-lwtheme){
	  margin-top:-1px !important;
	}

	#TabsToolbar:not(:-moz-lwtheme).tabs-newtab-button{
	  -moz-margin-start: -14px !important;
	}
	
	#main-window[defaultfxtheme="true"][tabsontop="false"] #navigator-toolbox #TabsToolbar:not(:-moz-lwtheme){
	  background: linear-gradient(to top,#5e5e5e 1px,#898989,#939393,#989898,#a1a1a1 1px) !important;
	  border-top: 1px solid #8b8b8b !important;
	}
	
	#main-window[defaultfxtheme="true"][tabsontop="false"]:-moz-window-inactive #navigator-toolbox #TabsToolbar:not(:-moz-lwtheme) {
	  background: linear-gradient(to bottom,#919191 1px,#b0b0b0 1px) !important;
	  border-top: 1px solid #8b8b8b !important;
	}

	.tabbrowser-tab .tab-background {
	  transform: scale(-1, -1) !important;
	}
	
	/* remove ridiculous clipping */
	#main-window[tabsintitlebar][sizemode="maximized"] .tab-background-middle:not([selected=true]),
	#main-window[tabsintitlebar]:not([sizemode="maximized"]):not([inFullscreen]) #toolbar-menubar:-moz-any([autohide="true"][inactive], :not([autohide])) + #TabsToolbar .tab-background-middle:not([selected=true]) {
	  clip-path: none !important;
	}
	
	/* container tabs - top line indicator */
	#main-window[fx50plus="true"] .tabbrowser-tab[usercontextid][data-identity-color] .tab-text {
	  box-shadow: 0px -1px 0px var(--identity-tab-color) inset !important;
	}
	/**/ 
	
	/*Test tweaks*/
	#main-window[fx57plus="true"] #TabsToolbar .close-icon > .toolbarbutton-icon {
	  width: 16px !important;
	  height: 16px !important;
	}

}

@-moz-document url(chrome://classic_theme_restorer/content/options.xul) {
	.tabcolorbox,
	.tabhovcolorbox,
	.tabpencolorbox,
	.tabunrcolorbox,
	#ctraddon_ccap_t_curved{
	  visibility: visible !important;
	}
	
	#ctraddon_ccap_t_default{
	  visibility: collapse !important;
	}
}